Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.endeca.portal.data
Class DefaultMDEXStateManager

    java.lang.Object
      com.endeca.portal.data.AbstractMDEXStateManager
          com.endeca.portal.data.DefaultMDEXStateManager

All Implemented Interfaces:
  java.io.Serializable

    public class DefaultMDEXStateManager

extends AbstractMDEXStateManager

This is a simple implementation of MDEXStateManager covering a very simple parent-child relationship of data sources. This model covers data sources with a single ancestor, and allows child data sources to add additional static functions to queries inherited from their ancestor. These static functions are whatever functions were configured in the data source's 'baseFunctions' property. "setting" a query on a data source with an ancestor results in actually setting the query on the ancestor, sans whatever static functions were initially configured on the child. This implementation can be useful for simplistic applications where either no relationships exist between MDEXStates or where they are only used to, for example, put RecordType filters (or some other static record filter) on different pages/tabs that otherwise share the same query state.

Author:
  wfleming
See Also:
  Serialized Form

Field Summary

Fields inherited from class com.endeca.portal.data.AbstractMDEXStateManager
`logger`

Constructor Summary
`DefaultMDEXStateManager()` default constructor

Method Summary
`protected java.util.List<QueryFunction>` | `getSubtractedFilterList(QueryState baseState, QueryState stateToSubtract)`
`QueryState` | `handleStateMerge(javax.portlet.PortletRequest request, MDEXState mdexState)` Handle query-time determination of the query a portlet should fire before the portlet requests execution
`void` | `handleStateUpdate(javax.portlet.PortletRequest request, MDEXState mdexState, QueryState newQueryState)` Encapsulate data source update logic.

Methods inherited from class com.endeca.portal.data.AbstractMDEXStateManager
`addEventTrigger, handleStateReset, processRefinementsToAdd`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### DefaultMDEXStateManager

    public DefaultMDEXStateManager()

  default constructor

Method Detail

### handleStateMerge

    public QueryState handleStateMerge(javax.portlet.PortletRequest request,
                                       MDEXState mdexState)
                                throws QueryStateException

  Description copied from class: `AbstractMDEXStateManager`
  Handle query-time determination of the query a portlet should fire before the portlet requests execution

  Specified by:
    `handleStateMerge` in class `AbstractMDEXStateManager`
  Returns:
    the portlet-visible QueryState as determined by the request and mdexState
  Throws:
    `QueryStateException`

### handleStateUpdate

    public void handleStateUpdate(javax.portlet.PortletRequest request,
                                  MDEXState mdexState,
                                  QueryState newQueryState)
                           throws QueryStateException

  Description copied from class: `AbstractMDEXStateManager`
  Encapsulate data source update logic. This method will be called any time a DataSource's QueryState is updated.

  Specified by:
    `handleStateUpdate` in class `AbstractMDEXStateManager`
  Throws:
    `QueryStateException`

### getSubtractedFilterList

    protected java.util.List<QueryFunction> getSubtractedFilterList(QueryState baseState,
                                                                    QueryState stateToSubtract)

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD