Class UserAttr

  • All Implemented Interfaces:
    KeywordBindRule

    public class UserAttr
    extends Object
    implements KeywordBindRule
    This class implements the userattr bind rule keyword.

    TODO Evaluate making this class more efficient.

    This class isn't as efficient as it could be. For example, the evalVAL(AciEvalContext) method should be able to use cached versions of the attribute type and filter. The evalURL(AciEvalContext) and evalDNKeywords(AciEvalContext) methods should also be able to use a cached version of the attribute type.

    • Method Detail

      • decode

        public static KeywordBindRule decode​(String expression,
                                             org.opends.server.authorization.dseecompat.EnumBindRuleType type)
                                      throws AciException
        Decode an string containing the userattr bind rule expression.
        Parameters:
        expression - The expression string.
        type - The bind rule type.
        Returns:
        A class suitable for evaluating a userattr bind rule.
        Throws:
        AciException - If the string contains an invalid expression.
      • evaluate

        public EnumEvalResult evaluate​(AciEvalContext evalCtx)
        Evaluate the expression using an evaluation context.
        Specified by:
        evaluate in interface KeywordBindRule
        Parameters:
        evalCtx - The evaluation context to use in the evaluation of the userattr expression.
        Returns:
        An enumeration containing the result of the evaluation.
      • toString

        public final void toString​(StringBuilder buffer)
        Description copied from interface: KeywordBindRule
        Appends a string representation of this object to the provided buffer.
        Specified by:
        toString in interface KeywordBindRule
        Parameters:
        buffer - The buffer into which a string representation of this object should be appended.