Class AbstractSPSessionSerializer

    • Field Detail

      • log

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

        @Nonnull
        private final Duration expirationOffset
        Milliseconds to subtract from record expiration to establish session expiration value.
    • Constructor Detail

      • AbstractSPSessionSerializer

        protected AbstractSPSessionSerializer​(@Nonnull
                                              Duration offset)
        Constructor.
        Parameters:
        offset - time to subtract from record expiration to establish session expiration value
    • Method Detail

      • doSerializeAdditional

        protected void doSerializeAdditional​(@Nonnull
                                             SPSession instance,
                                             @Nonnull
                                             javax.json.stream.JsonGenerator generator)
        Override this method to handle serialization of additional data.

        The serialization "context" is the continuation of a JSON struct.

        Parameters:
        instance - object to serialize
        generator - JSON generator to write to
      • doDeserialize

        @Nonnull
        protected abstract SPSession doDeserialize​(@Nonnull
                                                   javax.json.JsonObject obj,
                                                   @Nonnull @NotEmpty
                                                   String id,
                                                   @Nonnull
                                                   Instant creation,
                                                   @Nonnull
                                                   Instant expiration)
                                            throws IOException
        Implement this method to return the appropriate type of object, populated with the basic information supplied.

        The JSON object supplied is a structure that may contain additional data created by the concrete subclass during serialization.

        Parameters:
        obj - JSON structure to parse
        id - the identifier of the service associated with this session
        creation - creation time of session
        expiration - expiration time of session
        Returns:
        the newly constructed object
        Throws:
        IOException - if an error occurs during deserialization