Package net.shibboleth.idp.attribute.filter.matcher.logic.impl

# Class AbstractComposedMatcher

java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
net.shibboleth.idp.attribute.filter.matcher.logic.impl.AbstractComposedMatcher

All Implemented Interfaces:
  `Matcher`, `Component`, `DestructableComponent`, `IdentifiableComponent`, `IdentifiedComponent`, `InitializableComponent`, `UnmodifiableComponent`

Direct Known Subclasses:
  `AndMatcher`, `OrMatcher`

public abstract class AbstractComposedMatcher extends AbstractIdentifiableInitializableComponent implements Matcher, UnmodifiableComponent
Base class for `Matcher` implementations that are compositions of two or more other `Matcher`s.

## Field Summary

Fields
Modifier and Type
Field
Description
`private List<Matcher>`
`matchers`
The composed matchers.

### Fields inherited from interface net.shibboleth.idp.attribute.filter.Matcher

`MATCHER_FAILS, MATCHES_ALL, MATCHES_NONE`

## Constructor Summary

Constructors
Constructor
Description
`AbstractComposedMatcher()`

## Method Summary

Modifier and Type
Method
Description
`protected void`
`doInitialize()`
`List<Matcher>`
`getComposedMatchers()`
Get the composed matchers.
`void`
`setSubsidiaries(List<Matcher> composedMatchers)`
Set the matchers to be composed.

### Methods inherited from class net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent

`setId`

### Methods inherited from class net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent

`ensureId, getId, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException`

### Methods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent

`checkComponentActive, checkSetterPreconditions, destroy, doDestroy, initialize, isDestroyed, isInitialized`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface net.shibboleth.shared.component.IdentifiedComponent

`getId`

### Methods inherited from interface net.shibboleth.idp.attribute.filter.Matcher

`getMatchingValues`

## Field Details

### matchers

@NonnullAfterInit private List<Matcher> matchers
The composed matchers.

## Constructor Details

### AbstractComposedMatcher

public AbstractComposedMatcher()

## Method Details

### setSubsidiaries

public void setSubsidiaries(@Nullable List<Matcher> composedMatchers)
Set the matchers to be composed. Called "subsidiaries" to allow easier parsing.

Parameters:
  `composedMatchers` - the matchers to be composed.

### doInitialize

protected void doInitialize() throws ComponentInitializationException

Overrides:
  `doInitialize` in class `AbstractIdentifiedInitializableComponent`
Throws:
  `ComponentInitializationException`

### getComposedMatchers

@Nonnull @Unmodifiable @NotLive public List<Matcher> getComposedMatchers()
Get the composed matchers.

Returns:
  the composed matchers