Class VirtualAttribute

    • Constructor Detail

      • VirtualAttribute

        public VirtualAttribute​(AttributeType attributeType,
                                Entry entry,
                                VirtualAttributeRule rule)
        Creates a new virtual attribute with the provided information.
        Parameters:
        attributeType - The attribute type for this virtual attribute.
        entry - The entry in which this virtual attribute exists.
        rule - The virtual attribute rule that governs the behavior of this virtual attribute.
    • Method Detail

      • approximatelyEqualTo

        public ConditionResult approximatelyEqualTo​(ByteString assertionValue)
        Description copied from interface: Attribute
        Indicates whether this attribute has any value(s) that are approximately equal to the provided value.
        Parameters:
        assertionValue - The assertion value for which to make the determination.
        Returns:
        ConditionResult.UNDEFINED if this attribute does not have an approximate matching rule, ConditionResult.TRUE if at least one value is approximately equal to the provided value, or ConditionResult.FALSE otherwise.
      • contains

        public boolean contains​(ByteString value)
        Description copied from interface: Attribute
        Indicates whether this attribute contains the specified value.
        Parameters:
        value - The value for which to make the determination.
        Returns:
        true if this attribute has the specified value, or false if not.
      • containsAll

        public boolean containsAll​(Collection<?> values)
        Description copied from interface: Attribute
        Indicates whether this attribute contains all the values in the collection.
        Specified by:
        containsAll in interface Attribute
        Overrides:
        containsAll in class AbstractAttribute
        Parameters:
        values - The set of values for which to make the determination.
        Returns:
        true if this attribute contains all the values in the provided collection, or false if it does not contain at least one of them.
      • matchesEqualityAssertion

        public ConditionResult matchesEqualityAssertion​(ByteString assertionValue)
        Description copied from interface: Attribute
        Indicates whether this attribute matches the specified assertion value.
        Parameters:
        assertionValue - The assertion value for which to make the determination.
        Returns:
        true if this attribute matches the specified assertion value, or false if not.
      • getAttributeDescription

        public AttributeDescription getAttributeDescription()
        Description copied from interface: Attribute
        Retrieves the attribute description for this attribute.
        Returns:
        The attribute description for this attribute.
      • getVirtualAttributeRule

        public VirtualAttributeRule getVirtualAttributeRule()
        Retrieves the virtual attribute rule that governs the behavior of this virtual attribute.
        Returns:
        The virtual attribute rule that governs the behavior of this virtual attribute.
      • greaterThanOrEqualTo

        public ConditionResult greaterThanOrEqualTo​(ByteString assertionValue)
        Description copied from interface: Attribute
        Indicates whether this attribute has any value(s) that are greater than or equal to the provided value.
        Parameters:
        assertionValue - The assertion value for which to make the determination.
        Returns:
        ConditionResult.UNDEFINED if this attribute does not have an ordering matching rule, ConditionResult.TRUE if at least one value is greater than or equal to the provided assertion value, or ConditionResult.FALSE otherwise.
      • isEmpty

        public boolean isEmpty()
        Description copied from class: AbstractAttribute
        Returns true if this attribute contains no attribute values.

        This implementation returns true if the Attribute.size() of this attribute is zero.

        Specified by:
        isEmpty in interface Attribute
        Overrides:
        isEmpty in class AbstractAttribute
        Returns:
        true if this attribute contains no attribute values.
      • isVirtual

        public boolean isVirtual()
        Description copied from interface: Attribute
        Indicates whether this is a virtual attribute (dynamically computed) rather than a real attribute (persisted).
        Returns:
        true if this is a virtual attribute.
      • iterator

        public Iterator<ByteString> iterator()
        Description copied from interface: Attribute
        Returns an iterator over the attribute values in this attribute. The attribute values are returned in the order in which they were added this attribute. The returned iterator does not support attribute value removals via Iterator.remove().
        Returns:
        An iterator over the attribute values in this attribute.
      • lessThanOrEqualTo

        public ConditionResult lessThanOrEqualTo​(ByteString assertionValue)
        Description copied from interface: Attribute
        Indicates whether this attribute has any value(s) that are less than or equal to the provided value.
        Parameters:
        assertionValue - The assertion value for which to make the determination.
        Returns:
        ConditionResult.UNDEFINED if this attribute does not have an ordering matching rule, ConditionResult.TRUE if at least one value is less than or equal to the provided assertion value, or ConditionResult.FALSE otherwise.
      • matchesSubstring

        public ConditionResult matchesSubstring​(ByteString subInitial,
                                                List<ByteString> subAny,
                                                ByteString subFinal)
        Description copied from interface: Attribute
        Indicates whether this attribute has any value(s) that match the provided substring.
        Parameters:
        subInitial - The subInitial component to use in the determination.
        subAny - The subAny components to use in the determination.
        subFinal - The subFinal component to use in the determination.
        Returns:
        ConditionResult.UNDEFINED if this attribute does not have a substring matching rule, ConditionResult.TRUE if at least one value matches the provided substring, or ConditionResult.FALSE otherwise.
      • size

        public int size()
        Description copied from interface: Attribute
        Returns the number of attribute values in this attribute.
        Returns:
        The number of attribute values in this attribute.
      • toString

        public void toString​(StringBuilder buffer)
        Description copied from interface: Attribute
        Appends a one-line string representation of this attribute to the provided buffer.
        Parameters:
        buffer - The buffer to which the information should be appended.