Class SessionStore

    • Field Detail

      • DEFAULT_SESSIONID_LENGTH

        public static final int DEFAULT_SESSIONID_LENGTH
        Default length for a session id. More info: https://www.owasp.org/index.php/Session_Management_Cheat_Sheet
        See Also:
        Constant Field Values
    • Constructor Detail

      • SessionStore

        public SessionStore​(SessionStore delegate)
      • SessionStore

        public SessionStore​(Object delegate)
    • Method Detail

      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • create

        public static SessionStore create​(Vertx vertx)
        Create a Session store given a backend and configuration JSON.
        Parameters:
        vertx - vertx instance
        Returns:
        the store or runtime exception
      • create

        public static SessionStore create​(Vertx vertx,
                                          JsonObject options)
        Create a Session store given a backend and configuration JSON.
        Parameters:
        vertx - vertx instance
        options - extra options for initialization
        Returns:
        the store or runtime exception
      • init

        public SessionStore init​(Vertx vertx,
                                 JsonObject options)
        Initialize this store.
        Parameters:
        vertx - the vertx instance
        options - optional Json with extra configuration options
        Returns:
        self
      • retryTimeout

        public long retryTimeout()
        The retry timeout value in milli seconds used by the session handler when it retrieves a value from the store.

        A non positive value means there is no retry at all.

        Returns:
        the timeout value, in ms
      • createSession

        public Session createSession​(long timeout)
        Create a new session using the default min length.
        Parameters:
        timeout - - the session timeout, in ms
        Returns:
        the session
      • createSession

        public Session createSession​(long timeout,
                                     int length)
        Create a new session.
        Parameters:
        timeout - - the session timeout, in ms
        length - - the required length for the session id
        Returns:
        the session
      • get

        public SessionStore get​(String cookieValue,
                                Handler<AsyncResult<Session>> resultHandler)
        Get the session with the specified ID.
        Parameters:
        cookieValue - the unique ID of the session
        resultHandler - will be called with a result holding the session, or a failure
        Returns:
      • get

        public SessionStore get​(String cookieValue)
        Get the session with the specified ID.
        Parameters:
        cookieValue - the unique ID of the session
        Returns:
      • rxGet

        public io.reactivex.Maybe<Session> rxGet​(String cookieValue)
        Get the session with the specified ID.
        Parameters:
        cookieValue - the unique ID of the session
        Returns:
      • delete

        public SessionStore delete​(String id,
                                   Handler<AsyncResult<Void>> resultHandler)
        Delete the session with the specified ID.
        Parameters:
        id - the session id
        resultHandler - will be called with a success or a failure
        Returns:
      • delete

        public SessionStore delete​(String id)
        Delete the session with the specified ID.
        Parameters:
        id - the session id
        Returns:
      • rxDelete

        public io.reactivex.Completable rxDelete​(String id)
        Delete the session with the specified ID.
        Parameters:
        id - the session id
        Returns:
      • put

        public SessionStore put​(Session session,
                                Handler<AsyncResult<Void>> resultHandler)
        Add a session with the specified ID.
        Parameters:
        session - the session
        resultHandler - will be called with a success or a failure
        Returns:
      • put

        public SessionStore put​(Session session)
        Add a session with the specified ID.
        Parameters:
        session - the session
        Returns:
      • rxPut

        public io.reactivex.Completable rxPut​(Session session)
        Add a session with the specified ID.
        Parameters:
        session - the session
        Returns:
      • clear

        public SessionStore clear​(Handler<AsyncResult<Void>> resultHandler)
        Remove all sessions from the store.
        Parameters:
        resultHandler - will be called with a success or a failure
        Returns:
      • clear

        public SessionStore clear()
        Remove all sessions from the store.
        Returns:
      • rxClear

        public io.reactivex.Completable rxClear()
        Remove all sessions from the store.
        Returns:
      • size

        public SessionStore size​(Handler<AsyncResult<Integer>> resultHandler)
        Get the number of sessions in the store.

        Beware of the result which is just an estimate, in particular with distributed session stores.

        Parameters:
        resultHandler - will be called with the number, or a failure
        Returns:
      • size

        public SessionStore size()
        Get the number of sessions in the store.

        Beware of the result which is just an estimate, in particular with distributed session stores.

        Returns:
      • rxSize

        public io.reactivex.Single<Integer> rxSize()
        Get the number of sessions in the store.

        Beware of the result which is just an estimate, in particular with distributed session stores.

        Returns:
      • close

        public void close()
        Close the store