Interface SessionManager


  • @ThreadSafe
    public interface SessionManager
    Component that manages sessions between the IdP and client devices.
    • Method Detail

      • createSession

        @Nonnull
        IdPSession createSession​(@Nonnull @NotEmpty
                                 String principalName)
                          throws SessionException
        Create and return a new IdPSession object for a subject.

        Implementations may perform additional work to persist or associate the session with the client.

        Parameters:
        principalName - canonical name of the subject of the session
        Returns:
        the newly created session
        Throws:
        SessionException - if the session cannot be created
      • destroySession

        void destroySession​(@Nonnull @NotEmpty
                            String sessionId,
                            boolean unbind)
                     throws SessionException
        Invalidates or otherwise removes a session from persistent storage and/or unbinds it from a client.

        After calling this method, no further method calls on a corresponding IdPSession object that may be in hand are guaranteed to function correctly. Their behavior is unspecified.

        Parameters:
        sessionId - the unique ID of the session to destroy
        unbind - whether the session should be unbound from the client
        Throws:
        SessionException - if the session cannot be destroyed