# Uses of Class
net.shibboleth.idp.authn.context.SubjectCanonicalizationContext

Packages that use SubjectCanonicalizationContext
Package
Description
net.shibboleth.idp.authn
APIs related to the authentication of a subject.
net.shibboleth.idp.authn.context
Context classes for managing authentication-related state.
net.shibboleth.idp.authn.context.navigate
Functions for traversing authentication contexts.
net.shibboleth.idp.authn.impl
Implementation of various authentication actions.
net.shibboleth.idp.saml.nameid
Code for manipulating NameIDs and NameIdentifiers.
net.shibboleth.idp.saml.nameid.impl
Implementation of SAML `NameID` and `NameIdentifier` generation and consumption.
net.shibboleth.idp.session.impl
Implementations of session-related classes and interfaces.

## Uses of SubjectCanonicalizationContext in net.shibboleth.idp.authn

Fields in net.shibboleth.idp.authn declared as SubjectCanonicalizationContext
Modifier and Type
Field
Description
`private SubjectCanonicalizationContext`
AbstractSubjectCanonicalizationAction.`scContext`
`SubjectCanonicalizationContext` to operate on.
Fields in net.shibboleth.idp.authn with type parameters of type SubjectCanonicalizationContext
Modifier and Type
Field
Description
`private Function<ProfileRequestContext,SubjectCanonicalizationContext>`
AbstractSubjectCanonicalizationAction.`scCtxLookupStrategy`
Strategy used to find the `SubjectCanonicalizationContext` from the `ProfileRequestContext`.
Methods in net.shibboleth.idp.authn that return SubjectCanonicalizationContext
Modifier and Type
Method
Description
`private SubjectCanonicalizationContext`
AbstractSubjectCanonicalizationAction.`getSubjectCanonicalizationContext()`
Null safe getter.
Methods in net.shibboleth.idp.authn with parameters of type SubjectCanonicalizationContext
Modifier and Type
Method
Description
`String`
AbstractSubjectCanonicalizer.`apply(SubjectCanonicalizationContext c14nContext)`
Performs this c14n action's pre-execute step.
`protected abstract String`
AbstractSubjectCanonicalizer.`doApply(SubjectCanonicalizationContext c14nContext)`
Performs c14n if possible.
`protected void`
AbstractSubjectCanonicalizationAction.`doExecute(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Performs this authentication action.
`protected boolean`
AbstractSubjectCanonicalizationAction.`doPreExecute(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Performs this c14n action's pre-execute step.
Method parameters in net.shibboleth.idp.authn with type arguments of type SubjectCanonicalizationContext
Modifier and Type
Method
Description
`void`
AbstractSubjectCanonicalizationAction.`setLookupStrategy(Function<ProfileRequestContext,SubjectCanonicalizationContext> strategy)`
Set the context lookup strategy.

## Uses of SubjectCanonicalizationContext in net.shibboleth.idp.authn.context

Methods in net.shibboleth.idp.authn.context that return SubjectCanonicalizationContext
Modifier and Type
Method
Description
`SubjectCanonicalizationContext`
SubjectCanonicalizationContext.`setAttemptedFlow(SubjectCanonicalizationFlowDescriptor flow)`
Set the last flow that was attempted for subject c14n.
`SubjectCanonicalizationContext`
SubjectCanonicalizationContext.`setException(Exception e)`
Set the exception raised by a failed canonicalization.
`SubjectCanonicalizationContext`
SubjectCanonicalizationContext.`setPrincipalName(String name)`
Set the canonical principal name of the subject.
`SubjectCanonicalizationContext`
SubjectCanonicalizationContext.`setRequesterId(String id)`
Set the requester's ID.
`SubjectCanonicalizationContext`
SubjectCanonicalizationContext.`setResponderId(String id)`
Set the responder's ID.
`SubjectCanonicalizationContext`
SubjectCanonicalizationContext.`setSubject(Subject newSubject)`
Set the `Subject` to canonicalize.

## Uses of SubjectCanonicalizationContext in net.shibboleth.idp.authn.context.navigate

Methods in net.shibboleth.idp.authn.context.navigate with parameters of type SubjectCanonicalizationContext
Modifier and Type
Method
Description
`Subject`
SubjectCanonicalizationContextSubjectLookupFunction.`apply(SubjectCanonicalizationContext input)`

## Uses of SubjectCanonicalizationContext in net.shibboleth.idp.authn.impl

Fields in net.shibboleth.idp.authn.impl with type parameters of type SubjectCanonicalizationContext
Modifier and Type
Field
Description
`private Function<SubjectCanonicalizationContext,String>`
FunctionSubjectCanonicalization.`delegatedFunction`
Implementation of flow.
Methods in net.shibboleth.idp.authn.impl with parameters of type SubjectCanonicalizationContext
Modifier and Type
Method
Description
`protected String`
AttributeSourcedSubjectCanonicalization.`doApply(SubjectCanonicalizationContext c14nContext)`
Performs c14n if possible.
`String`
FunctionSubjectCanonicalization.`doApply(SubjectCanonicalizationContext c14nContext)`
Performs c14n if possible.
`String`
SimpleSubjectCanonicalization.`doApply(SubjectCanonicalizationContext c14nContext)`
Performs c14n if possible.
`protected String`
X500SubjectCanonicalization.`doApply(SubjectCanonicalizationContext c14nContext)`
Performs c14n if possible.
`protected void`
AttributeSourcedSubjectCanonicalizationAction.`doExecute(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Deprecated, for removal: This API element is subject to removal in a future version.
Performs this authentication action.
`protected void`
PopulateSubjectCanonicalizationContext.`doExecute(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Performs this authentication action.
`protected void`
SelectSubjectCanonicalizationFlow.`doExecute(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Performs this authentication action.
`protected boolean`
AttributeSourcedSubjectCanonicalizationAction.`doPreExecute(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Deprecated, for removal: This API element is subject to removal in a future version.
Performs this c14n action's pre-execute step.
`protected boolean`
SelectSubjectCanonicalizationFlow.`doPreExecute(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Performs this c14n action's pre-execute step.
`private Map<String,IdPAttribute>`
AttributeSourcedSubjectCanonicalization.`extractSubjectSourcedAttributes(SubjectCanonicalizationContext c14nContext)`
Extract and populate a map of any attributes found in the Subject.
`private X509Certificate`
X500SubjectCanonicalization.`getCertificate(SubjectCanonicalizationContext c14nContext)`
Helper method that returns the first and only `X509Certificate`, returning null otherwise.
`private UsernamePrincipal`
SimpleSubjectCanonicalization.`getUsernamePrincipal(SubjectCanonicalizationContext c14nContext)`
Helper method that returns the first and only `UsernamePrincipal`, returning null otherwise.
`private X500Principal`
X500SubjectCanonicalization.`getX500Principal(SubjectCanonicalizationContext c14nContext)`
Helper method that returns the first and only `X500Principal`, returning null otherwise.
`private Map<String,IdPAttribute>`
AttributeSourcedSubjectCanonicalization.`resolveAttributes(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Perform attribute resolution inline.
`private SubjectCanonicalizationFlowDescriptor`
SelectSubjectCanonicalizationFlow.`selectUnattemptedFlow(ProfileRequestContext profileRequestContext, SubjectCanonicalizationContext c14nContext)`
Select the first potential flow not found in the intermediate flows collection, and that is applicable to the context.
Method parameters in net.shibboleth.idp.authn.impl with type arguments of type SubjectCanonicalizationContext
Modifier and Type
Method
Description
`void`
FunctionSubjectCanonicalization.`setFunction(Function<SubjectCanonicalizationContext,String> f)`
Set the function to use.

## Uses of SubjectCanonicalizationContext in net.shibboleth.idp.saml.nameid

Methods in net.shibboleth.idp.saml.nameid with parameters of type SubjectCanonicalizationContext
Modifier and Type
Method
Description
`String`
AbstractNameIDCanonicalizer.`apply(SubjectCanonicalizationContext c14nContext)`
Performs this c14n action's pre-execute step.
`String`
NameIDDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameID nameID)`
Decode the provided `NameID`.
`String`
NameIdentifierDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameIdentifier nameID)`
Decode the provided `NameIdentifier`.
`protected abstract String`
AbstractNameIDCanonicalizer.`doApply(SubjectCanonicalizationContext c14nContext)`
Performs c14n if possible.

## Uses of SubjectCanonicalizationContext in net.shibboleth.idp.saml.nameid.impl

Methods in net.shibboleth.idp.saml.nameid.impl with parameters of type SubjectCanonicalizationContext
Modifier and Type
Method
Description
`String`
CryptoTransientNameIDDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameID nameID)`
Decode the provided `NameID`.
`String`
CryptoTransientNameIdentifierDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameIdentifier nameIdentifier)`
Decode the provided `NameIdentifier`.
`String`
StoredPersistentIdDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameID nameID)`
Decode the provided `NameID`.
`String`
TransformingNameIDDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameID nameIdentifier)`
Decode the provided `NameID`.
`String`
TransformingNameIdentifierDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameIdentifier nameIdentifier)`
Decode the provided `NameIdentifier`.
`String`
TransientNameIDDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameID nameID)`
Decode the provided `NameID`.
`String`
TransientNameIdentifierDecoder.`decode(SubjectCanonicalizationContext c14nContext, NameIdentifier nameIdentifier)`
Decode the provided `NameIdentifier`.
`protected String`
NameIDCanonicalization.`doApply(SubjectCanonicalizationContext c14nContext)`
Performs c14n if possible.
`protected String`
NameIdentifierCanonicalization.`doApply(SubjectCanonicalizationContext c14nContext)`
Performs c14n if possible.
`private boolean`
NameIDCanonicalization.`formatMatches(SubjectCanonicalizationContext c14nContext, String format)`
Check the format against the relevant flow descriptor's format list.
`private boolean`
NameIdentifierCanonicalization.`formatMatches(SubjectCanonicalizationContext c14nContext, String format)`
Check the format against the relevant flow descriptor's format list.
`private NameIdentifierPrincipal`
NameIdentifierCanonicalization.`getNameIdentifierPrincipal(SubjectCanonicalizationContext c14nContext)`
Helper method that returns the first and only `NameIdentifierPrincipal` provided it matches a valid Format, returning null otherwise.
`private NameIDPrincipal`
NameIDCanonicalization.`getNameIDPrincipal(SubjectCanonicalizationContext c14nContext)`
Helper method that returns the first and only `NameIDPrincipal` provided it matches a valid Format, returning null otherwise.

## Uses of SubjectCanonicalizationContext in net.shibboleth.idp.session.impl

Fields in net.shibboleth.idp.session.impl with type parameters of type SubjectCanonicalizationContext
Modifier and Type
Field
Description
`private Function<ProfileRequestContext,SubjectCanonicalizationContext>`
DetectIdentitySwitch.`c14nContextLookupStrategy`
Lookup function for SubjectCanonicalizationContext.
Method parameters in net.shibboleth.idp.session.impl with type arguments of type SubjectCanonicalizationContext
Modifier and Type
Method
Description
`void`
DetectIdentitySwitch.`setSubjectCanonicalizationContextLookupStrategy(Function<ProfileRequestContext,SubjectCanonicalizationContext> strategy)`
Set the lookup strategy for the SubjectCanonicalizationContext to access.