Class UserSession

java.lang.Object
java.util.AbstractMap<K,V>
java.util.HashMap<String,Object>
org.nuxeo.ecm.webengine.session.UserSession
All Implemented Interfaces:
Serializable, Cloneable, Map<String,Object>

public final class UserSession extends HashMap<String,Object>
Used to store user session. This object is cached in a the HTTP session Principal, subject and credentials are immutable per user session
Author:
Bogdan Stefanescu
See Also:
  • Field Details

    • comps

      protected Map<Class<?>,ComponentMap<?>> comps
    • request

      protected javax.servlet.http.HttpServletRequest request
  • Constructor Details

    • UserSession

      protected UserSession(javax.servlet.http.HttpServletRequest request)
  • Method Details

    • getCurrentSession

      public static UserSession getCurrentSession(javax.servlet.http.HttpServletRequest request)
    • getPrincipal

      public Principal getPrincipal()
    • addRequestCleanupHandler

      public static void addRequestCleanupHandler(javax.servlet.http.HttpServletRequest request, RequestCleanupHandler handler)
      Register a cleanup handler that will be invoked when HTTP request terminate. This method is not thread safe.
    • findComponent

      public <T extends Component> T findComponent(Class<T> type, String name)
      Finds an existing component.

      The component state will not be modified before being returned as in getComponent(Class, String).

      If the component was not found in that session, returns null.

    • getComponent

      public <T extends Component> T getComponent(Class<T> type, String name) throws SessionException
      Gets a component given its class and an optional name.

      If the component was not yet created in this session, it will be created and registered against the session.

      Throws:
      SessionException
    • getComponent

      public <T extends Component> T getComponent(Class<T> type) throws SessionException
      Throws:
      SessionException
    • getComponent

      public <T extends Component> T getComponent(String typeName, String name) throws SessionException
      Throws:
      SessionException
    • getComponent

      public <T extends Component> T getComponent(String id) throws SessionException
      Gets component by ID.

      The ID is of the form type#name for non-null names and type for null names.

      Throws:
      SessionException