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

# Class AbstractComposedPolicyRule

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

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

Direct Known Subclasses:
  `AndPolicyRule`, `OrPolicyRule`

public abstract class AbstractComposedPolicyRule extends AbstractIdentifiableInitializableComponent implements PolicyRequirementRule, UnmodifiableComponent
Base class for `PolicyRequirementRule` implementations that are compositions of other `PolicyRequirementRule`s.

## Nested Class Summary

## Nested classes/interfaces inherited from interface net.shibboleth.idp.attribute.filter.PolicyRequirementRule

`PolicyRequirementRule.Tristate`

## Field Summary

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

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

`MATCHES_ALL, MATCHES_NONE, REQUIREMENT_RULE_FAILS`

## Constructor Summary

Constructors
Constructor
Description
`AbstractComposedPolicyRule()`

## Method Summary

Modifier and Type
Method
Description
`List<PolicyRequirementRule>`
`getComposedRules()`
Get the composed matchers.
`void`
`setSubsidiaries(List<PolicyRequirementRule> theRules)`
Set the rules to be composed.
`String`
`toString()`

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

`setId`

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

`doInitialize, 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, wait, wait, wait`

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

`getId`

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

`matches`

## Field Details

### rules

@Nonnull private List<PolicyRequirementRule> rules
The composed matchers.

## Constructor Details

### AbstractComposedPolicyRule

public AbstractComposedPolicyRule()

## Method Details

### setSubsidiaries

public void setSubsidiaries(@Nullable List<PolicyRequirementRule> theRules)
Set the rules to be composed. Called "subsidiaries" to allow easier parsing.

Parameters:
  `theRules` - the rules to be composed.

### getComposedRules

@Nonnull @Unmodifiable @NotLive public List<PolicyRequirementRule> getComposedRules()
Get the composed matchers.

Returns:
  the composed matchers

### toString

public String toString()

Overrides:
  `toString` in class `Object`