com.espertech.esper.rowregex
Class RegexPartitionStateImpl

java.lang.Object
  extended by com.espertech.esper.rowregex.RegexPartitionStateImpl
All Implemented Interfaces:
RegexPartitionState

public class RegexPartitionStateImpl
extends java.lang.Object
implements RegexPartitionState

All current state holding partial NFA matches.


Constructor Summary
RegexPartitionStateImpl(RegexPartitionStateRandomAccessGetter getter, java.util.List<RegexNFAStateEntry> currentStates)
          Ctor.
RegexPartitionStateImpl(RegexPartitionStateRandomAccessGetter getter, java.util.List<RegexNFAStateEntry> currentStates, java.lang.Object optionalKeys)
          Ctor.
RegexPartitionStateImpl(RegexPartitionStateRandomAccess randomAccess, java.lang.Object optionalKeys)
          Ctor.
 
Method Summary
 void clearCurrentStates()
           
 java.util.List<RegexNFAStateEntry> getCurrentStatesForPrint()
           
 java.util.Iterator<RegexNFAStateEntry> getCurrentStatesIterator()
          Returns partial matches.
 int getNumStates()
           
 java.lang.Object getOptionalKeys()
          Returns partition keys, if any.
 RegexPartitionStateRandomAccess getRandomAccess()
          Returns the random access for "prev".
 boolean isEmptyCurrentState()
           
 void removeEventFromPrev(EventBean oldEvent)
          Remove an event from random access for "prev".
 void removeEventFromPrev(EventBean[] oldEvents)
          Remove an event from random access for "prev".
 int removeEventFromState(EventBean oldEvent)
          Remove an event from state.
static java.util.List<RegexNFAStateEntry> removeEventFromState(EventBean oldEvent, java.util.Iterator<RegexNFAStateEntry> states)
           
 void setCurrentStates(java.util.List<RegexNFAStateEntry> currentStates)
          Sets partial matches.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RegexPartitionStateImpl

public RegexPartitionStateImpl(RegexPartitionStateRandomAccess randomAccess,
                               java.lang.Object optionalKeys)
Ctor.

Parameters:
randomAccess - for handling "prev" functions, if any
optionalKeys - keys for "partition", if any

RegexPartitionStateImpl

public RegexPartitionStateImpl(RegexPartitionStateRandomAccessGetter getter,
                               java.util.List<RegexNFAStateEntry> currentStates)
Ctor.

Parameters:
getter - for "prev" access
currentStates - existing state

RegexPartitionStateImpl

public RegexPartitionStateImpl(RegexPartitionStateRandomAccessGetter getter,
                               java.util.List<RegexNFAStateEntry> currentStates,
                               java.lang.Object optionalKeys)
Ctor.

Parameters:
getter - for "prev" access
currentStates - existing state
optionalKeys - partition keys if any
Method Detail

getRandomAccess

public RegexPartitionStateRandomAccess getRandomAccess()
Returns the random access for "prev".

Specified by:
getRandomAccess in interface RegexPartitionState
Returns:
access

getCurrentStatesIterator

public java.util.Iterator<RegexNFAStateEntry> getCurrentStatesIterator()
Returns partial matches.

Specified by:
getCurrentStatesIterator in interface RegexPartitionState
Returns:
state

setCurrentStates

public void setCurrentStates(java.util.List<RegexNFAStateEntry> currentStates)
Sets partial matches.

Specified by:
setCurrentStates in interface RegexPartitionState
Parameters:
currentStates - state to set

getOptionalKeys

public java.lang.Object getOptionalKeys()
Returns partition keys, if any.

Specified by:
getOptionalKeys in interface RegexPartitionState
Returns:
keys

removeEventFromPrev

public void removeEventFromPrev(EventBean[] oldEvents)
Remove an event from random access for "prev".

Parameters:
oldEvents - to remove

removeEventFromPrev

public void removeEventFromPrev(EventBean oldEvent)
Remove an event from random access for "prev".

Parameters:
oldEvent - to remove

removeEventFromState

public int removeEventFromState(EventBean oldEvent)
Remove an event from state.

Parameters:
oldEvent - to remove
Returns:
true for removed, false for not found

getNumStates

public int getNumStates()
Specified by:
getNumStates in interface RegexPartitionState

clearCurrentStates

public void clearCurrentStates()

getCurrentStatesForPrint

public java.util.List<RegexNFAStateEntry> getCurrentStatesForPrint()
Specified by:
getCurrentStatesForPrint in interface RegexPartitionState

isEmptyCurrentState

public boolean isEmptyCurrentState()
Specified by:
isEmptyCurrentState in interface RegexPartitionState

removeEventFromState

public static java.util.List<RegexNFAStateEntry> removeEventFromState(EventBean oldEvent,
                                                                      java.util.Iterator<RegexNFAStateEntry> states)

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