Class BeanQualifiersMatcher
java.lang.Object
org.microbean.bean.BeanQualifiersMatcher
- All Implemented Interfaces:
BiPredicate<Collection<? extends Attributes>,,Collection<? extends Attributes>> Matcher<Collection<? extends Attributes>,Collection<? extends Attributes>>
public class BeanQualifiersMatcher
extends Object
implements Matcher<Collection<? extends Attributes>,Collection<? extends Attributes>>
A
Matcher encapsulating CDI-compatible bean
qualifier matching rules.- Author:
- Laird Nelson
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Collection<? extends Attributes> qualifiers(Collection<? extends Attributes> as) Returns an unmodifiableCollectionconsisting only of thoseAttributess in the suppliedCollectionthat are deemed to be qualifiers.final booleantest(Collection<? extends Attributes> receiverAttributes, Collection<? extends Attributes> payloadAttributes) Returnstrueif and only if either (a) the collection of qualifiers present inreceiverAttributesis empty and either the collection of qualifiers present inpayloadAttributesis also empty or contains the default qualifier, or (b) if the collection of qualifiers present inpayloadAttributesis empty or the return value ofQualifiers.anyAndDefaultQualifiers()contains all of the qualifiers present inreceiverAttributes, or (c) if the collection of qualifiers present inpayloadAttributescontains all of the qualifiers present inreceiverAttributes.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.function.BiPredicate
and, negate, or
-
Constructor Details
-
BeanQualifiersMatcher
public BeanQualifiersMatcher()Creates a newBeanQualifiersMatcher.
-
-
Method Details
-
test
public final boolean test(Collection<? extends Attributes> receiverAttributes, Collection<? extends Attributes> payloadAttributes) Returnstrueif and only if either (a) the collection of qualifiers present inreceiverAttributesis empty and either the collection of qualifiers present inpayloadAttributesis also empty or contains the default qualifier, or (b) if the collection of qualifiers present inpayloadAttributesis empty or the return value ofQualifiers.anyAndDefaultQualifiers()contains all of the qualifiers present inreceiverAttributes, or (c) if the collection of qualifiers present inpayloadAttributescontains all of the qualifiers present inreceiverAttributes.- Specified by:
testin interfaceBiPredicate<Collection<? extends Attributes>,Collection<? extends Attributes>> - Specified by:
testin interfaceMatcher<Collection<? extends Attributes>,Collection<? extends Attributes>> - Parameters:
receiverAttributes- aCollectionofAttributess; must not benullpayloadAttributes- aCollectionofAttributess; must not benull- Returns:
trueif and only if either (a) the collection of qualifiers present inreceiverAttributesis empty and either the collection of qualifiers present inpayloadAttributesis also empty or contains the default qualifier, or (b) if the collection of qualifiers present inpayloadAttributesis empty or the return value ofQualifiers.anyAndDefaultQualifiers()contains all of the qualifiers present inreceiverAttributes, or (c) if the collection of qualifiers present inpayloadAttributescontains all of the qualifiers present inreceiverAttributes- Throws:
NullPointerException- if eitherreceiverAttributesorpayloadAttributesisnull
-
qualifiers
Returns an unmodifiableCollectionconsisting only of thoseAttributess in the suppliedCollectionthat are deemed to be qualifiers.The default implementation of this method returns the value of an invocation of the
Qualifiers.qualifiers(Collection)method.This method may be removed in favor of a compositional approach in future revisions of this class.
- Parameters:
as- aCollectionofAttributess; must not benull- Returns:
- an unmodifiable
Collectionconsisting only of thoseAttributess in the suppliedCollectionthat are deemed to be qualifiers; nevernull - Throws:
NullPointerException- ifasisnull
-