com.endeca.portal.data
Interface MDEXStateManager

All Superinterfaces:
java.io.Serializable
All Known Implementing Classes:
AbstractMDEXStateManager, DefaultMDEXStateManager

public interface MDEXStateManager
extends java.io.Serializable

Interface representing all MDEX State Manager implementations. State Managers may want to extend AbstractMDEXStateManager instead of implementing this interface directly. AbstractStateManager contains useful utility methods.

Author:
Endeca Technologies, Inc.

Method Summary
 QueryState handleStateInitial(javax.portlet.PortletRequest request, MDEXState mdexState)
          Handles retrieval of the initial query state from a data source; used for query-time determination of the query a portlet should fire during portlet execution.
 QueryState handleStateMerge(javax.portlet.PortletRequest request, MDEXState mdexState)
          Handles retrieval of a query state from a data source; used for query-time determination of the query a portlet should fire during portlet execution.
 void handleStateReset(javax.portlet.PortletRequest request, MDEXState mdexState)
          Handle resetting of the query state to its initial state; used for initialization of a data source or user-visible controls to remove all filters.
 void handleStateUpdate(javax.portlet.PortletRequest request, MDEXState mdexState, QueryState newQueryState)
          Handles updating a data source with a new query state.
 

Method Detail

handleStateUpdate

void handleStateUpdate(javax.portlet.PortletRequest request,
                       MDEXState mdexState,
                       QueryState newQueryState)
                       throws QueryStateException
Handles updating a data source with a new query state. This method is called internally to DataSource.setQueryState(QueryState newState)

Parameters:
request - the current PortletRequest
mdexState - the MDEXState representing the current data source
newQueryState - the query state to be set onto the data source
Throws:
QueryStateException

handleStateMerge

QueryState handleStateMerge(javax.portlet.PortletRequest request,
                            MDEXState mdexState)
                            throws QueryStateException
Handles retrieval of a query state from a data source; used for query-time determination of the query a portlet should fire during portlet execution. This method is called internally to DataSource.getQueryState()

Parameters:
request - the current PortletRequest
mdexState - the MDEXState representing the current data source
Returns:
the portlet-visible QueryState as determined by the request and mdexState
Throws:
QueryStateException

handleStateReset

void handleStateReset(javax.portlet.PortletRequest request,
                      MDEXState mdexState)
                      throws QueryStateException
Handle resetting of the query state to its initial state; used for initialization of a data source or user-visible controls to remove all filters. This method is called internally to DataSource.resetQueryState()

Parameters:
request - the current PortletRequest
mdexState - the MDEXState representing the current data source
Throws:
QueryStateException

handleStateInitial

QueryState handleStateInitial(javax.portlet.PortletRequest request,
                              MDEXState mdexState)
                              throws QueryStateException
Handles retrieval of the initial query state from a data source; used for query-time determination of the query a portlet should fire during portlet execution. This method is called internally to DataSource.getInitialQueryState()

Parameters:
request - the current PortletRequest
mdexState - the MDEXState representing the current data source
Returns:
the portlet-visible initial QueryState as determined by the request and mdexState
Throws:
QueryStateException