Class IdPAttributePrincipalSerializer
java.lang.Object
net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
net.shibboleth.idp.authn.principal.AbstractPrincipalSerializer<String>
net.shibboleth.idp.authn.principal.impl.IdPAttributePrincipalSerializer
- All Implemented Interfaces:
PrincipalSerializer<String>
,Component
,DestructableComponent
,InitializableComponent
@ThreadSafe
public class IdPAttributePrincipalSerializer
extends AbstractPrincipalSerializer<String>
Principal serializer for
IdPAttributePrincipal
.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final String
Field name of type code of anEmptyAttributeValue
.private static final Pattern
Pattern used to determine if input is supported.private final org.slf4j.Logger
Class logger.private final javax.json.JsonBuilderFactory
JSON object bulder factory.private static final String
Field name of principal entry.private static final String
Field name of principal name.private static final String
Field name of type code of anScopedStringAttributeValue
.private static final String
Field name of type code of anStringAttributeValue
. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondeserialize
(String value) Deserialize the supplied value.protected IdPAttributeValue
deserializeValue
(javax.json.JsonObject object) Deserialize an attribute value from aJsonObject
.private javax.json.JsonArrayBuilder
Get aJsonArrayBuilder
in a thread-safe manner.private javax.json.JsonObjectBuilder
Get aJsonObjectBuilder
in a thread-safe manner.Serialize the supplied principal.protected javax.json.JsonObject
serializeValue
(IdPAttributeValue value) Serialize an attribute value and produce aJsonObject
.boolean
Whether the supplied value can be deserialized.boolean
Whether the supplied principal can be serialized.Methods inherited from class net.shibboleth.idp.authn.principal.AbstractPrincipalSerializer
getJsonGenerator, getJsonReader
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.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
Field Details
-
PRINCIPAL_NAME_FIELD
Field name of principal name.- See Also:
-
PRINCIPAL_ENTRY_FIELD
Field name of principal entry.- See Also:
-
EMPTY_VALUE_FIELD
Field name of type code of anEmptyAttributeValue
.- See Also:
-
STRING_VALUE_FIELD
Field name of type code of anStringAttributeValue
.- See Also:
-
SCOPED_VALUE_FIELD
Field name of type code of anScopedStringAttributeValue
.- See Also:
-
JSON_PATTERN
Pattern used to determine if input is supported. -
log
@Nonnull private final org.slf4j.Logger logClass logger. -
objectBuilderFactory
@Nonnull private final javax.json.JsonBuilderFactory objectBuilderFactoryJSON object bulder factory.
-
-
Constructor Details
-
IdPAttributePrincipalSerializer
public IdPAttributePrincipalSerializer()Constructor.
-
-
Method Details
-
supports
Whether the supplied principal can be serialized.- Parameters:
principal
- to examine- Returns:
- whether principal can be serialized
-
serialize
Serialize the supplied principal.- Parameters:
principal
- to serialize- Returns:
- serialized value
- Throws:
IOException
- if an error occurs during serialization
-
supports
Whether the supplied value can be deserialized.- Parameters:
value
- to examine- Returns:
- whether value can be deserialized
-
deserialize
@Nullable public IdPAttributePrincipal deserialize(@Nonnull @NotEmpty String value) throws IOException Deserialize the supplied value.- Parameters:
value
- to deserialize- Returns:
- principal
- Throws:
IOException
- if an error occurs during deserialization
-
serializeValue
Serialize an attribute value and produce aJsonObject
.Override this method to support additional value types.
- Parameters:
value
- the attribute value to serialize- Returns:
- the object
-
deserializeValue
Deserialize an attribute value from aJsonObject
.Override this method to support additional value types.
- Parameters:
object
- object to deserialize- Returns:
- the attribute value, or null
-
getJsonObjectBuilder
@Nonnull private javax.json.JsonObjectBuilder getJsonObjectBuilder()Get aJsonObjectBuilder
in a thread-safe manner.- Returns:
- an object builder
-
getJsonArrayBuilder
@Nonnull private javax.json.JsonArrayBuilder getJsonArrayBuilder()Get aJsonArrayBuilder
in a thread-safe manner.- Returns:
- an array builder
-