Plug v1.8.2 Plug.Session.Store behaviour View Source
Specification for session stores.
Link to this section Summary
Types
The cookie value that will be sent in cookie headers. This value should be base64 encoded to avoid security issues
The session contents, the final data to be stored after it has been built
with Plug.Conn.put_session/3 and the other session manipulating functions
The internal reference to the session in the store
Functions
Gets the store name from an atom or a module
Callbacks
Removes the session associated with given session id from the store
Parses the given cookie
Initializes the store
Stores the session associated with given session id
Link to this section Types
cookie()
      
       
       View Source
     
      
          cookie() :: binary()
      
  
cookie() :: binary()
The cookie value that will be sent in cookie headers. This value should be base64 encoded to avoid security issues.
session()
      
       
       View Source
     
      
          session() :: map()
      
  
session() :: map()
The session contents, the final data to be stored after it has been built
with Plug.Conn.put_session/3 and the other session manipulating functions.
sid()
      
       
       View Source
     
      
          sid() :: term() | nil
      
  
sid() :: term() | nil
The internal reference to the session in the store.
Link to this section Functions
get(store) View Source
Gets the store name from an atom or a module.
iex> Plug.Session.Store.get(CustomStore)
CustomStore
iex> Plug.Session.Store.get(:cookie)
Plug.Session.COOKIE
  Link to this section Callbacks
delete(arg0, sid, arg2)
      
       
       View Source
     
      
          delete(Plug.Conn.t(), sid(), Plug.opts()) :: :ok
      
  
delete(Plug.Conn.t(), sid(), Plug.opts()) :: :ok
Removes the session associated with given session id from the store.
get(arg0, cookie, arg2)
      
       
       View Source
     
      
          get(Plug.Conn.t(), cookie(), Plug.opts()) :: {sid(), session()}
      
  
get(Plug.Conn.t(), cookie(), Plug.opts()) :: {sid(), session()}
Parses the given cookie.
Returns a session id and the session contents. The session id is any value that can be used to identify the session by the store.
The session id may be nil in case the cookie does not identify any value in the store. The session contents must be a map.
init(arg0) View Source
Initializes the store.
The options returned from this function will be given
to get/3, put/4 and delete/3.
put(arg0, sid, any, arg3)
      
       
       View Source
     
      
          put(Plug.Conn.t(), sid(), any(), Plug.opts()) :: cookie()
      
  
put(Plug.Conn.t(), sid(), any(), Plug.opts()) :: cookie()
Stores the session associated with given session id.
If nil is given as id, a new session id should be
generated and returned.