Class ProxyAuthenticationPrincipalSerializer

All Implemented Interfaces:
PrincipalSerializer<String>, Component, DestructableComponent, InitializableComponent

@ThreadSafe
public class ProxyAuthenticationPrincipalSerializer
extends AbstractPrincipalSerializer<String>
Principal serializer for ProxyAuthenticationPrincipal.
  • Field Details

    • PROXY_AUTH_FIELD

      @Nonnull @NotEmpty private static final String PROXY_AUTH_FIELD
      Field name of authority content.
      See Also:
      Constant Field Values
    • PROXY_COUNT_FIELD

      @Nonnull @NotEmpty private static final String PROXY_COUNT_FIELD
      Field name of proxy count.
      See Also:
      Constant Field Values
    • PROXY_AUD_FIELD

      @Nonnull @NotEmpty private static final String PROXY_AUD_FIELD
      Field name of proxy audiences.
      See Also:
      Constant Field Values
    • JSON_PATTERN

      private static final Pattern JSON_PATTERN
      Pattern used to determine if input is supported.
    • log

      @Nonnull private final org.slf4j.Logger log
      Class logger.
    • objectBuilderFactory

      @Nonnull private final javax.json.JsonBuilderFactory objectBuilderFactory
      JSON object bulder factory.
  • Constructor Details

    • ProxyAuthenticationPrincipalSerializer

      public ProxyAuthenticationPrincipalSerializer()
      Constructor.
  • Method Details

    • supports

      public boolean supports​(@Nonnull Principal principal)
      Whether the supplied principal can be serialized.
      Parameters:
      principal - to examine
      Returns:
      whether principal can be serialized
    • serialize

      @Nonnull @NotEmpty public String serialize​(@Nonnull Principal principal) throws IOException
      Serialize the supplied principal.
      Parameters:
      principal - to serialize
      Returns:
      serialized value
      Throws:
      IOException - if an error occurs during serialization
    • supports

      public boolean supports​(@Nonnull @NotEmpty String value)
      Whether the supplied value can be deserialized.
      Parameters:
      value - to examine
      Returns:
      whether value can be deserialized
    • deserialize

      @Nullable public ProxyAuthenticationPrincipal 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
    • getJsonObjectBuilder

      @Nonnull private javax.json.JsonObjectBuilder getJsonObjectBuilder()
      Get a JsonObjectBuilder in a thread-safe manner.
      Returns:
      an object builder
    • getJsonArrayBuilder

      @Nonnull private javax.json.JsonArrayBuilder getJsonArrayBuilder()
      Get a JsonArrayBuilder in a thread-safe manner.
      Returns:
      an array builder