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,SAML2DateTimeAttributeTranscoder,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 2AttributeorRequestedAttribute.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAbstractSAML2AttributeTranscoder.NamingFunctionA function to produce a "canonical" name for a SAML 2.0Attributefor transcoding rules.
-
Field Summary
Fields Modifier and Type Field Description private SAMLObjectBuilder<Attribute>attributeBuilderBuilder used to constructAttributeobjects.private SAMLObjectBuilder<RequestedAttribute>reqAttributeBuilderBuilder used to constructRequestedAttributeobjects.-
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 Constructor Description AbstractSAML2AttributeTranscoder()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected AttributebuildAttribute(ProfileRequestContext profileRequestContext, IdPAttribute attribute, Class<? extends Attribute> to, TranscodingRule rule, List<XMLObject> attributeValues)Builds a SAML attribute element from the given attribute values.protected IdPAttributebuildIdPAttribute(ProfileRequestContext profileRequestContext, Attribute attribute, TranscodingRule rule, List<IdPAttributeValue> attributeValues)Builds anIdPAttributefrom the given values.StringgetEncodedName(TranscodingRule rule)Get the name of the encoded object that would be created by a given set of instructions.Class<Attribute>getEncodedType()Get the class representing the type of object supported by this transcoder.protected Iterable<XMLObject>getValues(Attribute input)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 Detail
-
attributeBuilder
@Nonnull private final SAMLObjectBuilder<Attribute> attributeBuilder
Builder used to constructAttributeobjects.
-
reqAttributeBuilder
@Nonnull private final SAMLObjectBuilder<RequestedAttribute> reqAttributeBuilder
Builder used to constructRequestedAttributeobjects.
-
-
Method Detail
-
getEncodedType
@Nonnull public Class<Attribute> getEncodedType()
Get the class representing the type of object supported by this transcoder.- Specified by:
getEncodedTypein interfaceAttributeTranscoder<EncodedType extends IdPAttributeValue>- Returns:
- object type supported
-
getEncodedName
@Nullable public String getEncodedName(@Nonnull TranscodingRule rule)
Get the name of the encoded object that would be created by a given set of instructions.- Specified by:
getEncodedNamein 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:
buildAttributein 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 anIdPAttributefrom the given values.- Specified by:
buildIdPAttributein 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
@Nonnull protected Iterable<XMLObject> getValues(@Nonnull Attribute input)
Returns the values to decode from the concrete input object.- Specified by:
getValuesin classAbstractSAMLAttributeTranscoder<Attribute,EncodedType extends IdPAttributeValue>- Parameters:
input- input object- Returns:
- values to decode
-
-