com.espertech.esper.epl.join.base
Class JoinSetComposerStreamToWinImpl

java.lang.Object
  extended by com.espertech.esper.epl.join.base.JoinSetComposerStreamToWinImpl
All Implemented Interfaces:
JoinSetComposer

public class JoinSetComposerStreamToWinImpl
extends java.lang.Object
implements JoinSetComposer

Implements the function to determine a join result for a unidirectional stream-to-window joins, in which a single stream's events are ever only evaluated using a query strategy.


Constructor Summary
JoinSetComposerStreamToWinImpl(java.util.Map<TableLookupIndexReqKey,EventTable>[] repositories, boolean isPureSelfJoin, int streamNumber, QueryStrategy queryStrategy, boolean[] selfJoinRepositoryResets)
          Ctor.
 
Method Summary
 void destroy()
          Destroy stateful index tables, if any.
 void init(EventBean[][] eventsPerStream)
          Provides initialization events per stream to composer to populate join indexes, if required
 UniformPair<java.util.Set<MultiKey<EventBean>>> join(EventBean[][] newDataPerStream, EventBean[][] oldDataPerStream, ExprEvaluatorContext exprEvaluatorContext)
          Return join tuple result set from new data and old data for each stream.
 java.util.Set<MultiKey<EventBean>> staticJoin()
          For use in iteration over join statements, this must build a join tuple result set from all events in indexes, executing query strategies for each.
 void visitIndexes(StatementAgentInstancePostLoadIndexVisitor visitor)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JoinSetComposerStreamToWinImpl

public JoinSetComposerStreamToWinImpl(java.util.Map<TableLookupIndexReqKey,EventTable>[] repositories,
                                      boolean isPureSelfJoin,
                                      int streamNumber,
                                      QueryStrategy queryStrategy,
                                      boolean[] selfJoinRepositoryResets)
Ctor.

Parameters:
repositories - - for each stream an array of (indexed/unindexed) tables for lookup.
isPureSelfJoin - for self-joins
streamNumber - is the undirectional stream
queryStrategy - is the lookup query strategy for the stream
selfJoinRepositoryResets - indicators for any stream's table that reset after strategy executon
Method Detail

init

public void init(EventBean[][] eventsPerStream)
Description copied from interface: JoinSetComposer
Provides initialization events per stream to composer to populate join indexes, if required

Specified by:
init in interface JoinSetComposer
Parameters:
eventsPerStream - is an array of events for each stream, with null elements to indicate no events for a stream

destroy

public void destroy()
Description copied from interface: JoinSetComposer
Destroy stateful index tables, if any.

Specified by:
destroy in interface JoinSetComposer

join

public UniformPair<java.util.Set<MultiKey<EventBean>>> join(EventBean[][] newDataPerStream,
                                                            EventBean[][] oldDataPerStream,
                                                            ExprEvaluatorContext exprEvaluatorContext)
Description copied from interface: JoinSetComposer
Return join tuple result set from new data and old data for each stream.

Specified by:
join in interface JoinSetComposer
Parameters:
newDataPerStream - - for each stream the event array (can be null).
oldDataPerStream - - for each stream the event array (can be null).
exprEvaluatorContext - expression evaluation context
Returns:
join tuples

staticJoin

public java.util.Set<MultiKey<EventBean>> staticJoin()
Description copied from interface: JoinSetComposer
For use in iteration over join statements, this must build a join tuple result set from all events in indexes, executing query strategies for each.

Specified by:
staticJoin in interface JoinSetComposer
Returns:
static join result

visitIndexes

public void visitIndexes(StatementAgentInstancePostLoadIndexVisitor visitor)
Specified by:
visitIndexes in interface JoinSetComposer

© 2006-2015 EsperTech Inc.
All rights reserved.
Visit us at espertech.com