com.espertech.esper.epl.join.table
Class PropertyIndexedEventTableSingleUnique

java.lang.Object
  extended by com.espertech.esper.epl.join.table.PropertyIndexedEventTableSingle
      extended by com.espertech.esper.epl.join.table.PropertyIndexedEventTableSingleUnique
All Implemented Interfaces:
EventTable, java.lang.Iterable<EventBean>

public class PropertyIndexedEventTableSingleUnique
extends PropertyIndexedEventTableSingle

Unique index.


Field Summary
 
Fields inherited from class com.espertech.esper.epl.join.table.PropertyIndexedEventTableSingle
propertyGetter, streamNum
 
Constructor Summary
PropertyIndexedEventTableSingleUnique(int streamNum, EventPropertyGetter propertyGetter, java.lang.String indexName)
           
 
Method Summary
 void add(EventBean[] events)
          Add an array of events.
 void addRemove(EventBean[] newData, EventBean[] oldData)
          Remove then add events.
 void clear()
          Clear out index.
 boolean isEmpty()
          Returns true if the index is empty, or false if not
 java.util.Iterator<EventBean> iterator()
          Returns an iterator over events in the table.
 java.util.Set<EventBean> lookup(java.lang.Object key)
          Returns the set of events that have the same property value as the given event.
 void remove(EventBean[] events)
          Remove events.
 java.lang.String toQueryPlan()
           
 java.lang.String toString()
           
 
Methods inherited from class com.espertech.esper.epl.join.table.PropertyIndexedEventTableSingle
getKey
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PropertyIndexedEventTableSingleUnique

public PropertyIndexedEventTableSingleUnique(int streamNum,
                                             EventPropertyGetter propertyGetter,
                                             java.lang.String indexName)
Method Detail

addRemove

public void addRemove(EventBean[] newData,
                      EventBean[] oldData)
Remove then add events.

Specified by:
addRemove in interface EventTable
Overrides:
addRemove in class PropertyIndexedEventTableSingle
Parameters:
newData - to add
oldData - to remove

add

public void add(EventBean[] events)
Description copied from class: PropertyIndexedEventTableSingle
Add an array of events. Same event instance is not added twice. Event properties should be immutable. Allow null passed instead of an empty array.

Specified by:
add in interface EventTable
Overrides:
add in class PropertyIndexedEventTableSingle
Parameters:
events - to add

remove

public void remove(EventBean[] events)
Description copied from class: PropertyIndexedEventTableSingle
Remove events.

Specified by:
remove in interface EventTable
Overrides:
remove in class PropertyIndexedEventTableSingle
Parameters:
events - to be removed, can be null instead of an empty array.

lookup

public java.util.Set<EventBean> lookup(java.lang.Object key)
Description copied from class: PropertyIndexedEventTableSingle
Returns the set of events that have the same property value as the given event.

Overrides:
lookup in class PropertyIndexedEventTableSingle
Parameters:
key - to compare against
Returns:
set of events with property value, or null if none found (never returns zero-sized set)

isEmpty

public boolean isEmpty()
Description copied from interface: EventTable
Returns true if the index is empty, or false if not

Specified by:
isEmpty in interface EventTable
Overrides:
isEmpty in class PropertyIndexedEventTableSingle
Returns:
true for empty index

iterator

public java.util.Iterator<EventBean> iterator()
Description copied from interface: EventTable
Returns an iterator over events in the table.

Specified by:
iterator in interface EventTable
Specified by:
iterator in interface java.lang.Iterable<EventBean>
Overrides:
iterator in class PropertyIndexedEventTableSingle
Returns:
table iterator

clear

public void clear()
Description copied from interface: EventTable
Clear out index.

Specified by:
clear in interface EventTable
Overrides:
clear in class PropertyIndexedEventTableSingle

toString

public java.lang.String toString()
Overrides:
toString in class PropertyIndexedEventTableSingle

toQueryPlan

public java.lang.String toQueryPlan()
Specified by:
toQueryPlan in interface EventTable
Overrides:
toQueryPlan in class PropertyIndexedEventTableSingle

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