Package net.shibboleth.idp.authn
Class SubjectCanonicalizationFlowDescriptor
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
net.shibboleth.idp.authn.SubjectCanonicalizationFlowDescriptor
- All Implemented Interfaces:
Predicate<ProfileRequestContext>,FlowDescriptor,Component,DestructableComponent,IdentifiableComponent,IdentifiedComponent,InitializableComponent
- Direct Known Subclasses:
AbstractSubjectCanonicalizer,NameIDCanonicalizationFlowDescriptor
public class SubjectCanonicalizationFlowDescriptor
extends AbstractIdentifiableInitializableComponent
implements FlowDescriptor, Predicate<ProfileRequestContext>
A descriptor for a subject canonicalization flow or
SubjectCanonicalizer implementation.
A flow models a sequence of profile actions that performs canonicalization of a Subject
into a string-form principal name. Flows can do essentially anything, including interact with the subject, but must
include an activation predicate to indicate their suitability based on the content of the context tree, particularly
the required SubjectCanonicalizationContext child context.
Since 5.2, a more common alternative to a flow is to implement the functional SubjectCanonicalizer
interface, which allows a procedural implementation when there is no particular reason to leverage a web flow.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Predicate<ProfileRequestContext>Predicate that must be true for this flow to be usable for a given request.private StringOptional flow ID that may differ from component ID. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidbooleanGets the flow ID for this descriptor (inclusive of the c14n/ prefix).inthashCode()voidsetActivationCondition(Predicate<ProfileRequestContext> condition) Set the activation condition in the form of aPredicatesuch that iff the condition evaluates to true should the corresponding flow be allowed/possible.voidSets the webflow ID for this descriptor.booleantest(ProfileRequestContext input) toString()Methods inherited from class net.shibboleth.shared.component.AbstractIdentifiableInitializableComponent
setIdMethods inherited from class net.shibboleth.shared.component.AbstractIdentifiedInitializableComponent
ensureId, getId, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentExceptionMethods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent
checkComponentActive, checkSetterPreconditions, destroy, doDestroy, initialize, isDestroyed, isInitializedMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface net.shibboleth.shared.component.DestructableComponent
destroy, isDestroyedMethods inherited from interface net.shibboleth.shared.component.IdentifiableComponent
setIdMethods inherited from interface net.shibboleth.shared.component.IdentifiedComponent
getIdMethods inherited from interface net.shibboleth.shared.component.InitializableComponent
initialize, isInitialized
-
Field Details
-
flowId
Optional flow ID that may differ from component ID. -
activationCondition
Predicate that must be true for this flow to be usable for a given request.
-
-
Constructor Details
-
SubjectCanonicalizationFlowDescriptor
public SubjectCanonicalizationFlowDescriptor()Constructor.
-
-
Method Details
-
getFlowId
Gets the flow ID for this descriptor (inclusive of the c14n/ prefix).- Returns:
- flow ID
-
setFlowId
Sets the webflow ID for this descriptor.This defaults to the component ID, but can be overridden to allow multiple components to be defined for a given webflow.
- Parameters:
id- webflow ID- Since:
- 5.2.0
-
setActivationCondition
Set the activation condition in the form of aPredicatesuch that iff the condition evaluates to true should the corresponding flow be allowed/possible.- Parameters:
condition- predicate that controls activation of the flow
-
doInitialize
- Overrides:
doInitializein classAbstractIdentifiedInitializableComponent- Throws:
ComponentInitializationException
-
test
- Specified by:
testin interfacePredicate<ProfileRequestContext>
-
hashCode
public int hashCode() -
equals
-
toString
-