Class AttributeBag<AV extends AttributeValue>

  • Type Parameters:
    AV - type of every element in the bag
    All Implemented Interfaces:
    Iterable<AV>, Value

    public class AttributeBag<AV extends AttributeValue>
    extends Bag<AV>
    Attribute bag (section 7.3.2 of XACML specification), i.e. Bag with extra metadata such as the identifier of the attribute value provider (where does the value come from, e.g. Request, or PDP, or custom attribute provider module...)
    • Constructor Detail

      • AttributeBag

        protected AttributeBag​(Datatype<AV> elementDatatype,
                               com.google.common.collect.ImmutableMultiset<AV> elements,
                               Optional<AttributeSource> attributeValueSource)
        Constructor
        Parameters:
        elementDatatype - bag element datatype
        elements - bag elements.
        attributeValueSource - source of the attribute value (where does it come from? Request, PDP, custom attribute provider module...); not present iff elements.isEmpty() (no value found anywhere)
    • Method Detail

      • getSource

        public final Optional<AttributeSource> getSource()
        Get the source of this attribute bag
        Returns:
        source