com.ibm.commerce.component.contextservice.util

Class BusinessContextFacade

  • java.lang.Object
    • com.ibm.commerce.component.contextservice.util.BusinessContextFacade


  • public class BusinessContextFacade
    extends java.lang.Object
    The facade singleton used to communicate with the business context service.
    • Field Detail

      • COPYRIGHT

        public static final java.lang.String COPYRIGHT
        IBM copyright notice field.
        See Also:
        Constant Field Values
    • Method Detail

      • initialize

        public void initialize()
        Reserved for IBM internal use.

        This method initializes this singleton.

      • getInstance

        public static BusinessContextFacade getInstance()
        This method returns the BusinessContextFacade singleton.
        Returns:
        the BusinessContextFacade singleton
      • begin

        public ActivityToken begin(com.ibm.commerce.component.contextservice.ActivityData initData)
                            throws BusinessContextServiceException
        This method creates an activity with the given initialization data. Passes the initialization data down to the initialize(ActivityToken, ActivityData) method of each business context, where all the required parameters are extracted and used to populate the context.
        Parameters:
        initData - the initialization data
        Returns:
        a valid token for the new activity
        Throws:
        BusinessContextServiceException - on any error encountered
      • begin

        public ActivityToken begin(java.lang.String logonId,
                                   java.lang.String pwd,
                                   com.ibm.commerce.component.contextservice.ActivityData initData)
                            throws BusinessContextServiceException,
                                   BusinessContextServiceAuthenticationException
        This method returns an activity for a given valid user logon ID and password.
        1. Authenticates the user logon ID and password.
        2. If successful, checks whether an activity for the user already exists.
        3. If no such activity exists - this is the first request - creates a new activity.
        4. After an activity is found or created, updates the callerID and runAsID attributes of the activity.
        Parameters:
        logonId - the logon ID of the user who is trying to initiate an activity
        pwd - the user's password
        initData - the initialization data
        Returns:
        a valid token for the activity found or created
        Throws:
        BusinessContextServiceAuthenticationException - if the user cannot be authenticated
        BusinessContextServiceException - on any other error encountered
      • expire

        public void expire(ActivityToken token)
                    throws BusinessContextServiceException
        Reserved for IBM internal use.

        This method marks a given activity as expired. Changes the status of the activity to E in the CTXMGMT table to indicate that the activity has expired.

        Parameters:
        token - the activity token
        Throws:
        BusinessContextServiceException - on any error encountered
      • startRequest

        public void startRequest(ActivityToken token,
                                 com.ibm.commerce.component.contextservice.ActivityData sessionData)
                          throws BusinessContextServiceException
        Reserved for IBM internal use.

        This method is called before request execution for any necessary setup. It, in turn, passes the session data down to the preInvoke(ActivityData) method of each business context associated with the given activity. The preInvoke(ActivityData) method extracts all the required parameters and updates the context.

        Parameters:
        token - the activity token
        sessionData - the map of name-value pairs for the parameters that are passed in the request
        Throws:
        BusinessContextServiceException - on any error encountered
      • endRequest

        public void endRequest(ActivityToken token)
                        throws BusinessContextServiceException
        Reserved for IBM internal use.

        This method is called after request execution for any necessary cleanup. It, in turn, calls the postInvoke(ActivityData) method of each business context associated with the given activity.

        Parameters:
        token - the activity token
        Throws:
        BusinessContextServiceException - on any error encountered
      • rollbackRequest

        public void rollbackRequest(ActivityToken token)
                             throws BusinessContextServiceException
        Reserved for IBM internal use.

        This method is called when a request is rolled back. It, in turn, calls the reset() method of each business context associated with the given activity.

        Parameters:
        token - the activity token
        Throws:
        BusinessContextServiceException - on any error encountered
      • copyActivity

        public ActivityToken copyActivity(ActivityToken currentToken,
                                          com.ibm.commerce.component.contextservice.ActivityData sessionData)
                                   throws BusinessContextServiceException
        This method creates a new activity based on the contexts associated with a given token and session data. Passes both arguments to the initialize(ActivityToken, ActivityToken, ActivityData) method of each business context, where the context is first initialized based on the input activity's context and then updated based on the session data.
        Parameters:
        currentToken - the activity token of the input activity
        sessionData - the name-value pairs for the parameters that are passed in the request
        Returns:
        the activity token for the newly created activity
        Throws:
        BusinessContextServiceException - on any error encountered
      • resolveActivity

        public ActivityToken resolveActivity(ActivityToken token,
                                             com.ibm.commerce.component.contextservice.ActivityData initData)
                                      throws BusinessContextServiceException
        Reserved for IBM internal use.

        This method gets the valid activity token that is associated with a particular user and store. This method is mainly used when a user switches from one store to another.

        Parameters:
        token - an activity token that identifies the user
        initData - initialization data that identifies the store
        Returns:
        the activity token if one exists; null otherwise
        Throws:
        BusinessContextServiceException - on any error encountered
      • findActivityTokenForUserAndStore

        public ActivityToken findActivityTokenForUserAndStore(java.lang.Long callerId,
                                                              java.lang.Integer storeId)
                                                       throws BusinessContextServiceException
        Reserved for IBM internal use.

        This method finds an activity token for a particular caller and store.

        Parameters:
        callerId - the caller ID
        storeId - the store ID
        Returns:
        the activity token if one exists; null otherwise
        Throws:
        BusinessContextServiceException - on any error encountered
      • getContextMap

        public java.util.Map getContextMap(ActivityToken token)
                                    throws BusinessContextServiceException
        Reserved for IBM internal use.

        This method gets a map of string representations of all the contexts associated with a given activity. This method is provided for generic user support.

        Parameters:
        token - the token that identifies the activity
        Returns:
        the map of string representations of all the contexts associated with the activity
        Throws:
        BusinessContextServiceException - on any error encountered
      • setContextMap

        public void setContextMap(ActivityToken token,
                                  java.util.Map ctxMap)
                           throws BusinessContextServiceException
        Reserved for IBM internal use.

        This method initializes the contexts of a given activity based on a map of string representations of all of the activity's contexts. This method is provided for generic user support.

        Parameters:
        token - the token that identifies the activity
        ctxMap - the map of string representations of all the contexts associated with the activity
        Throws:
        BusinessContextServiceException - on any error encountered
      • isContextDirty

        public boolean isContextDirty(ActivityToken token)
        Reserved for IBM internal use.

        This method checks whether any of the contexts associated with a given token are dirty.

        Parameters:
        token - the token to check
        Returns:
        true if any of the contexts are dirty; false otherwise
      • createTransientClonedActivity

        public ActivityToken createTransientClonedActivity(ActivityToken oldToken)
        Reserved for IBM internal use.

        This method creates a transient cloned token from a given token. The resulting token is a transient object to be used within a request. Its contexts are copies of the input token's contexts.

        Parameters:
        oldToken - the token to be cloned
        Returns:
        the transient cloned token created
      • stopActivities

        public void stopActivities(java.lang.Long nUserId)
        Reserved for IBM internal use.

        This method stops all activities for a given user.

        Parameters:
        nUserId - the ID of the user for whom all activities are to be stopped
      • flushCache

        public void flushCache()
        Reserved for IBM internal use.

        This method flushes all activities from the activity cache for the current thread. This method is called at the exit point of a request, when contexts are no longer required.

      • getContextSPIs

        public java.util.List getContextSPIs(ActivityToken token)
        Reserved for IBM internal use.

        This method gets all the context service provider interface objects that are associated with a given activity.

        Parameters:
        token - the token that identifies the activity
        Returns:
        a list of the context service provider interface objects for the activity