public class SortWindowViewFactory extends Object implements DataWindowViewFactory, DataWindowViewWithPrevious
Modifier and Type | Field and Description |
---|---|
protected Comparator<Object> |
comparator |
protected boolean[] |
isDescendingValues
The flags defining the ascending or descending sort order.
|
protected ExprEvaluator |
sizeEvaluator
The sort window size.
|
protected ExprEvaluator[] |
sortCriteriaEvaluators |
protected ExprNode[] |
sortCriteriaExpressions
The sort-by expressions.
|
Constructor and Description |
---|
SortWindowViewFactory() |
Modifier and Type | Method and Description |
---|---|
void |
attach(EventType parentEventType,
StatementContext statementContext,
ViewFactory optionalParentFactory,
List<ViewFactory> parentViewFactories)
Attaches the factory to a parent event type such that the factory can validate
attach requirements and determine an event type for resulting views.
|
boolean |
canReuse(View view,
AgentInstanceContext agentInstanceContext)
Determines if the given view could be used instead of creating a new view,
requires the view factory to compare view type, parameters and other capabilities provided.
|
Comparator<Object> |
getComparator() |
EventType |
getEventType()
Returns the event type that the view that is created by the view factory would create for events posted
by the view.
|
boolean[] |
getIsDescendingValues() |
ExprEvaluator |
getSizeEvaluator() |
ExprEvaluator[] |
getSortCriteriaEvaluators() |
ExprNode[] |
getSortCriteriaExpressions() |
String |
getViewName()
Returns the name of the view, not namespace+name but readable name.
|
boolean |
isUseCollatorSort() |
Object |
makePreviousGetter() |
View |
makeView(AgentInstanceViewFactoryChainContext agentInstanceViewFactoryContext)
Create a new view.
|
void |
setViewParameters(ViewFactoryContext viewFactoryContext,
List<ExprNode> viewParams)
Indicates user EPL query view parameters to the view factory.
|
protected ExprNode[] sortCriteriaExpressions
protected ExprEvaluator[] sortCriteriaEvaluators
protected boolean[] isDescendingValues
protected ExprEvaluator sizeEvaluator
protected Comparator<Object> comparator
public void setViewParameters(ViewFactoryContext viewFactoryContext, List<ExprNode> viewParams) throws ViewParameterException
ViewFactory
setViewParameters
in interface ViewFactory
viewFactoryContext
- supplied context information for the view factoryviewParams
- is the objects representing the view parametersViewParameterException
- if the parameters don't match view parameter needspublic void attach(EventType parentEventType, StatementContext statementContext, ViewFactory optionalParentFactory, List<ViewFactory> parentViewFactories) throws ViewParameterException
ViewFactory
attach
in interface ViewFactory
parentEventType
- is the parent event stream's or view factory's event typestatementContext
- contains the services needed for creating a new event typeoptionalParentFactory
- is null when there is no parent view factory, or contains the
parent view factoryparentViewFactories
- is a list of all the parent view factories or empty list if there are noneViewParameterException
- is thrown to indicate that this view factories's view would not play
with the parent view factories viewpublic View makeView(AgentInstanceViewFactoryChainContext agentInstanceViewFactoryContext)
ViewFactory
makeView
in interface ViewFactory
agentInstanceViewFactoryContext
- contextpublic Object makePreviousGetter()
makePreviousGetter
in interface DataWindowViewWithPrevious
public EventType getEventType()
ViewFactory
getEventType
in interface ViewFactory
public boolean canReuse(View view, AgentInstanceContext agentInstanceContext)
ViewFactory
canReuse
in interface ViewFactory
view
- is the candidate view to compare toagentInstanceContext
- agent instance contextpublic String getViewName()
ViewFactory
getViewName
in interface ViewFactory
public ExprEvaluator[] getSortCriteriaEvaluators()
public ExprNode[] getSortCriteriaExpressions()
public ExprEvaluator getSizeEvaluator()
public Comparator<Object> getComparator()
public boolean[] getIsDescendingValues()
public boolean isUseCollatorSort()