org.springframework.web.context.request

Class FacesRequestAttributes

  • java.lang.Object
    • org.springframework.web.context.request.FacesRequestAttributes
    • Constructor Summary

      Constructors 
      Constructor and Description
      FacesRequestAttributes(FacesContext facesContext)
      Create a new FacesRequestAttributes adapter for the given FacesContext.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.Object getAttribute(java.lang.String name, int scope)
      Return the value for the scoped attribute of the given name, if any.
      protected java.util.Map<java.lang.String,java.lang.Object> getAttributeMap(int scope)
      Return the JSF attribute Map for the specified scope.
      java.lang.String[] getAttributeNames(int scope)
      Retrieve the names of all attributes in the scope.
      protected ExternalContext getExternalContext()
      Return the JSF ExternalContext that this adapter operates on.
      protected FacesContext getFacesContext()
      Return the JSF FacesContext that this adapter operates on.
      java.lang.String getSessionId()
      Return an id for the current underlying session.
      java.lang.Object getSessionMutex()
      Expose the best available mutex for the underlying session: that is, an object to synchronize on for the underlying session.
      void registerDestructionCallback(java.lang.String name, java.lang.Runnable callback, int scope)
      Register a callback to be executed on destruction of the specified attribute in the given scope.
      void removeAttribute(java.lang.String name, int scope)
      Remove the scoped attribute of the given name, if it exists.
      java.lang.Object resolveReference(java.lang.String key)
      Resolve the contextual reference for the given key, if any.
      void setAttribute(java.lang.String name, java.lang.Object value, int scope)
      Set the value for the scoped attribute of the given name, replacing an existing value (if any).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • FacesRequestAttributes

        public FacesRequestAttributes(FacesContext facesContext)
        Create a new FacesRequestAttributes adapter for the given FacesContext.
        Parameters:
        facesContext - the current FacesContext
        See Also:
        FacesContext.getCurrentInstance()
    • Method Detail

      • getFacesContext

        protected final FacesContext getFacesContext()
        Return the JSF FacesContext that this adapter operates on.
      • getAttributeMap

        protected java.util.Map<java.lang.String,java.lang.Object> getAttributeMap(int scope)
        Return the JSF attribute Map for the specified scope.
        Parameters:
        scope - constant indicating request or session scope
        Returns:
        the Map representation of the attributes in the specified scope
        See Also:
        RequestAttributes.SCOPE_REQUEST, RequestAttributes.SCOPE_SESSION
      • getAttribute

        public java.lang.Object getAttribute(java.lang.String name,
                                             int scope)
        Description copied from interface: RequestAttributes
        Return the value for the scoped attribute of the given name, if any.
        Specified by:
        getAttribute in interface RequestAttributes
        Parameters:
        name - the name of the attribute
        scope - the scope identifier
        Returns:
        the current attribute value, or null if not found
      • setAttribute

        public void setAttribute(java.lang.String name,
                                 java.lang.Object value,
                                 int scope)
        Description copied from interface: RequestAttributes
        Set the value for the scoped attribute of the given name, replacing an existing value (if any).
        Specified by:
        setAttribute in interface RequestAttributes
        Parameters:
        name - the name of the attribute
        value - the value for the attribute
        scope - the scope identifier
      • removeAttribute

        public void removeAttribute(java.lang.String name,
                                    int scope)
        Description copied from interface: RequestAttributes
        Remove the scoped attribute of the given name, if it exists.

        Note that an implementation should also remove a registered destruction callback for the specified attribute, if any. It does, however, not need to execute a registered destruction callback in this case, since the object will be destroyed by the caller (if appropriate).

        Specified by:
        removeAttribute in interface RequestAttributes
        Parameters:
        name - the name of the attribute
        scope - the scope identifier
      • getAttributeNames

        public java.lang.String[] getAttributeNames(int scope)
        Description copied from interface: RequestAttributes
        Retrieve the names of all attributes in the scope.
        Specified by:
        getAttributeNames in interface RequestAttributes
        Parameters:
        scope - the scope identifier
        Returns:
        the attribute names as String array
      • registerDestructionCallback

        public void registerDestructionCallback(java.lang.String name,
                                                java.lang.Runnable callback,
                                                int scope)
        Description copied from interface: RequestAttributes
        Register a callback to be executed on destruction of the specified attribute in the given scope.

        Implementations should do their best to execute the callback at the appropriate time: that is, at request completion or session termination, respectively. If such a callback is not supported by the underlying runtime environment, the callback must be ignored and a corresponding warning should be logged.

        Note that 'destruction' usually corresponds to destruction of the entire scope, not to the individual attribute having been explicitly removed by the application. If an attribute gets removed via this facade's RequestAttributes.removeAttribute(String, int) method, any registered destruction callback should be disabled as well, assuming that the removed object will be reused or manually destroyed.

        NOTE: Callback objects should generally be serializable if they are being registered for a session scope. Otherwise the callback (or even the entire session) might not survive web app restarts.

        Specified by:
        registerDestructionCallback in interface RequestAttributes
        Parameters:
        name - the name of the attribute to register the callback for
        callback - the destruction callback to be executed
        scope - the scope identifier
      • resolveReference

        public java.lang.Object resolveReference(java.lang.String key)
        Description copied from interface: RequestAttributes
        Resolve the contextual reference for the given key, if any.

        At a minimum: the HttpServletRequest reference for key "request", and the HttpSession reference for key "session".

        Specified by:
        resolveReference in interface RequestAttributes
        Parameters:
        key - the contextual key
        Returns:
        the corresponding object, or null if none found
      • getSessionId

        public java.lang.String getSessionId()
        Description copied from interface: RequestAttributes
        Return an id for the current underlying session.
        Specified by:
        getSessionId in interface RequestAttributes
        Returns:
        the session id as String (never null)
      • getSessionMutex

        public java.lang.Object getSessionMutex()
        Description copied from interface: RequestAttributes
        Expose the best available mutex for the underlying session: that is, an object to synchronize on for the underlying session.
        Specified by:
        getSessionMutex in interface RequestAttributes
        Returns:
        the session mutex to use (never null)