net.esper.eql.join
Class JoinSetComposerFactory

java.lang.Object
  extended by net.esper.eql.join.JoinSetComposerFactory

public class JoinSetComposerFactory
extends Object

Factory for building a JoinSetComposer from analyzing filter nodes, for fast join tuple result set composition.


Constructor Summary
JoinSetComposerFactory()
           
 
Method Summary
protected static EventTable buildIndex(int indexedStreamNum, String[] indexProps, Class[] optCoercionTypes, EventType eventType)
          Build an index/table instance using the event properties for the event type.
static JoinSetComposer makeComposer(List<OuterJoinDesc> outerJoinDescList, ExprNode optionalFilterNode, EventType[] streamTypes, String[] streamNames, Viewable[] streamViews, SelectClauseStreamSelectorEnum selectStreamSelectorEnum)
          Builds join tuple composer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JoinSetComposerFactory

public JoinSetComposerFactory()
Method Detail

makeComposer

public static JoinSetComposer makeComposer(List<OuterJoinDesc> outerJoinDescList,
                                           ExprNode optionalFilterNode,
                                           EventType[] streamTypes,
                                           String[] streamNames,
                                           Viewable[] streamViews,
                                           SelectClauseStreamSelectorEnum selectStreamSelectorEnum)
                                    throws ExprValidationException
Builds join tuple composer.

Parameters:
outerJoinDescList - - list of descriptors for outer join criteria
optionalFilterNode - - filter tree for analysis to build indexes for fast access
streamTypes - - types of streams
streamNames - - names of streams
streamViews - - leaf view per stream
selectStreamSelectorEnum - - indicator for rstream or istream-only, for optimization
Returns:
composer implementation
Throws:
ExprValidationException - is thrown to indicate that validation of view use in joins failed.

buildIndex

protected static EventTable buildIndex(int indexedStreamNum,
                                       String[] indexProps,
                                       Class[] optCoercionTypes,
                                       EventType eventType)
Build an index/table instance using the event properties for the event type.

Parameters:
indexedStreamNum - - number of stream indexed
indexProps - - properties to index
optCoercionTypes - - optional array of coercion types, or null if no coercion is required
eventType - - type of event to expect
Returns:
table build