public class OrderHasMarker extends MarkerExpressionFilter implements OrderMarkerConstants
Extensions must provide the map of the new expression's operator names to the ones provided by this class.
The operator names provided by this class are:
hasMarker
hasLastMarker
hasLastMarkerWithKey
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_VERSION
Class version string
|
static java.lang.String |
OP_HAS_LASTMARKER |
static java.lang.String |
OP_HAS_LASTMARKER_WITHKEY |
static java.lang.String |
OP_HAS_MARKER
Scenario operators handled by the evaluate methods
|
mMarkerConfiguration
ORDER_MARKER_RESOURCE_NAME, ORDER_PROPERTY_NAME, sResourceBundle
ALLOW_DUPLICATES, ANY_VALUE, DEFAULT_MARKER_ID_PROPERTY_NAME, DEFAULT_MARKER_ITEM_TYPE, DEFAULT_MARKER_PROPERTY_NAME, DEFAULT_MARKER_SORT_PROPERTY_NAME, MARKER_CREATIONDATE_PROPERTY_NAME, MARKER_DATA_PROPERTY_NAME, MARKER_DUPLICATIONMODE_PROPERTY_NAME, MARKER_KEY_PROPERTY_NAME, MARKER_OWNER_PROPERTY_NAME, MARKER_RESOURCE_NAME, MARKER_VALUE_PROPERTY_NAME, NO_DUPLICATES, PARAM_DATA, PARAM_DUPMODE, PARAM_EXTENDED_PROPERTIES, PARAM_ITEM, PARAM_ITEM_ID, PARAM_KEY, PARAM_MARKED_ITEM_TYPE, PARAM_MARKER_ITEM_TYPE, PARAM_MARKER_MANAGER, PARAM_MARKER_PROPERTY_NAME, PARAM_VALUE, REPLACE_DUPLICATES, sResourceBundle
Constructor and Description |
---|
OrderHasMarker() |
Modifier and Type | Method and Description |
---|---|
protected Filter |
evaluate(ProcessExecutionContext pContext)
Evaluates this filter in the given process execution context.
|
protected java.lang.String |
getHasMarkerOperatorToPerform(ProcessExecutionContext pContext)
This method is called by the evaluate method to determine the operator name.
|
protected Order |
getOrderToUse(ProcessExecutionContext pContext)
This method is called by the doAction method to return the Order
that's used in the order marker manager API calls.
|
void |
initialize(java.lang.String pOperator,
Expression[] pOperands)
called by Scenario Manager to initialize the expression
|
configure, getData, getDuplicationMode, getExtendedProperties, getKey, getMarkedItemType, getMarkerConfiguration, getMarkerItemType, getMarkerPropertyName, getRepositoryMarkerManager, getValue, setMarkerConfiguration
equals, getOperands, getOperator, operandsEquals, setOperands, setOperator, toString
andFilters, andFilters, assumeFalse, assumeTrue, createProcessInstanceQuery, createSubjectQuery, getResourceBundle, getSubjectType, hashCode, implies, isCacheable, negate, orFilters, orFilters, setCacheable, test
public static java.lang.String CLASS_VERSION
public static final java.lang.String OP_HAS_MARKER
public static final java.lang.String OP_HAS_LASTMARKER
public static final java.lang.String OP_HAS_LASTMARKER_WITHKEY
protected Order getOrderToUse(ProcessExecutionContext pContext)
The order is either extracted from the event or from the current session's shopping cart.
protected java.lang.String getHasMarkerOperatorToPerform(ProcessExecutionContext pContext)
By default, this method uses the operator name returned by getOperator to lookup to the appropriate base operator name provided by ItemHasMarker.
The base operator names for OrderHasMarker are: hasMarker, hasLastMarker and hasLastMarkerWithKey
Because this class can be extended to implement any number of scenario hasMarker expressions, the new expression operator names must be mapped in the configuration component to one of the standard operators above.
MarkerConfiguration.getHasMarkerOperatorMap()
public void initialize(java.lang.String pOperator, Expression[] pOperands) throws ProcessException
initialize
in class MarkerExpressionFilter
pOperator
- the filter operator namespOperands
- the operands to the filter.ProcessException
- if the operands argument is invalidprotected Filter evaluate(ProcessExecutionContext pContext) throws ProcessException
The possible return values of this method are as follows:
Filter.TRUE
- if the filter can be fully
evaluated, and is satisfied in the given context
Filter.FALSE
- if the filter can be fully
evaluated, and is not satisfied in the given context
evaluate
in class Filter
ProcessException
- if there is a problem evaluating the
filter (other than information missing from the context)