Class AbstractSAML2AttributeTranscoder<EncodedType extends IdPAttributeValue>
java.lang.Object
net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
net.shibboleth.idp.attribute.transcoding.AbstractAttributeTranscoder<AttributeType>
net.shibboleth.idp.saml.attribute.transcoding.AbstractSAMLAttributeTranscoder<Attribute,EncodedType>
net.shibboleth.idp.saml.attribute.transcoding.AbstractSAML2AttributeTranscoder<EncodedType>
- Type Parameters:
EncodedType
- the type of data that can be handled by the transcoder
- All Implemented Interfaces:
AttributeTranscoder<Attribute>
,SAML2AttributeTranscoder<EncodedType>
,Component
,DestructableComponent
,InitializableComponent
- Direct Known Subclasses:
SAML2ByteAttributeTranscoder
,SAML2ScopedStringAttributeTranscoder
,SAML2StringAttributeTranscoder
,SAML2XMLObjectAttributeTranscoder
public abstract class AbstractSAML2AttributeTranscoder<EncodedType extends IdPAttributeValue>
extends AbstractSAMLAttributeTranscoder<Attribute,EncodedType>
implements SAML2AttributeTranscoder<EncodedType>
Base class for transcoders that operate on a SAML 2
Attribute
or RequestedAttribute
.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
A function to produce a "canonical" name for a SAML 2.0Attribute
for transcoding rules. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final SAMLObjectBuilder<Attribute>
Builder used to constructAttribute
objects.private final SAMLObjectBuilder<RequestedAttribute>
Builder used to constructRequestedAttribute
objects.Fields inherited from interface net.shibboleth.idp.saml.attribute.transcoding.SAML2AttributeTranscoder
PROP_ENCODE_TYPE, PROP_FRIENDLY_NAME, PROP_NAME, PROP_NAME_FORMAT
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Attribute
buildAttribute
(ProfileRequestContext profileRequestContext, IdPAttribute attribute, Class<? extends Attribute> to, TranscodingRule rule, List<XMLObject> attributeValues) Builds a SAML attribute element from the given attribute values.protected IdPAttribute
buildIdPAttribute
(ProfileRequestContext profileRequestContext, Attribute attribute, TranscodingRule rule, List<IdPAttributeValue> attributeValues) Builds anIdPAttribute
from the given values.Get the name of the encoded object that would be created by a given set of instructions.Get the class representing the type of object supported by this transcoder.Returns the values to decode from the concrete input object.Methods inherited from class net.shibboleth.idp.saml.attribute.transcoding.AbstractSAMLAttributeTranscoder
canEncodeValue, decodeValue, doDecode, doEncode, encodeValue, getStringValue
Methods inherited from class net.shibboleth.idp.attribute.transcoding.AbstractAttributeTranscoder
decode, encode, setActivationCondition
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, doInitialize, 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.idp.attribute.transcoding.AttributeTranscoder
decode, encode
Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
Field Details
-
attributeBuilder
Builder used to constructAttribute
objects. -
reqAttributeBuilder
Builder used to constructRequestedAttribute
objects.
-
-
Constructor Details
-
AbstractSAML2AttributeTranscoder
public AbstractSAML2AttributeTranscoder()Constructor.
-
-
Method Details
-
getEncodedType
Get the class representing the type of object supported by this transcoder.- Specified by:
getEncodedType
in interfaceAttributeTranscoder<EncodedType extends IdPAttributeValue>
- Returns:
- object type supported
-
getEncodedName
Get the name of the encoded object that would be created by a given set of instructions.- Specified by:
getEncodedName
in interfaceAttributeTranscoder<EncodedType extends IdPAttributeValue>
- Parameters:
rule
- properties governing the encoding process- Returns:
- a canonical name for objects produced by this transcoder for the given instructions
-
buildAttribute
@Nonnull protected Attribute buildAttribute(@Nullable ProfileRequestContext profileRequestContext, @Nullable IdPAttribute attribute, @Nonnull Class<? extends Attribute> to, @Nonnull TranscodingRule rule, @Nonnull @NonnullElements List<XMLObject> attributeValues) throws AttributeEncodingException Builds a SAML attribute element from the given attribute values.- Specified by:
buildAttribute
in classAbstractSAMLAttributeTranscoder<Attribute,
EncodedType extends IdPAttributeValue> - Parameters:
profileRequestContext
- current profile requestattribute
- the attribute being encodedto
- target type to createrule
- properties to control encodingattributeValues
- the encoded values for the attribute- Returns:
- the SAML attribute object
- Throws:
AttributeEncodingException
- thrown if there is a problem constructing the SAML attribute
-
buildIdPAttribute
@Nonnull protected IdPAttribute buildIdPAttribute(@Nullable ProfileRequestContext profileRequestContext, @Nonnull Attribute attribute, @Nonnull TranscodingRule rule, @Nonnull @NonnullElements List<IdPAttributeValue> attributeValues) throws AttributeDecodingException Builds anIdPAttribute
from the given values.- Specified by:
buildIdPAttribute
in classAbstractSAMLAttributeTranscoder<Attribute,
EncodedType extends IdPAttributeValue> - Parameters:
profileRequestContext
- current profile requestattribute
- the attribute being decodedrule
- properties to control decodingattributeValues
- the decoded values for the attribute- Returns:
- the IdPAttribute object
- Throws:
AttributeDecodingException
- thrown if there is a problem constructing the IdPAttribute
-
getValues
Returns the values to decode from the concrete input object.- Specified by:
getValues
in classAbstractSAMLAttributeTranscoder<Attribute,
EncodedType extends IdPAttributeValue> - Parameters:
input
- input object- Returns:
- values to decode
-