com.espertech.esper.epl.virtualdw
Class VirtualDWEventTable

java.lang.Object
  extended by com.espertech.esper.epl.virtualdw.VirtualDWEventTable
All Implemented Interfaces:
EventTable, java.lang.Iterable<EventBean>

public class VirtualDWEventTable
extends java.lang.Object
implements EventTable


Constructor Summary
VirtualDWEventTable(boolean unique, java.util.List<VirtualDataWindowLookupFieldDesc> hashAccess, java.util.List<VirtualDataWindowLookupFieldDesc> btreeAccess)
           
 
Method Summary
 void add(EventBean[] events)
          Add events to table.
 void addRemove(EventBean[] newData, EventBean[] oldData)
          Add and remove events from table.
 void clear()
          Clear out index.
 EventTable copyShallow()
           
 java.util.List<VirtualDataWindowLookupFieldDesc> getBtreeAccess()
           
 java.util.List<VirtualDataWindowLookupFieldDesc> getHashAccess()
           
 boolean isEmpty()
          Returns true if the index is empty, or false if not
 boolean isUnique()
           
 java.util.Iterator<EventBean> iterator()
          Returns an iterator over events in the table.
 void remove(EventBean[] events)
          Remove events from table.
 void setUnique(boolean unique)
           
 java.lang.String toQueryPlan()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VirtualDWEventTable

public VirtualDWEventTable(boolean unique,
                           java.util.List<VirtualDataWindowLookupFieldDesc> hashAccess,
                           java.util.List<VirtualDataWindowLookupFieldDesc> btreeAccess)
Method Detail

addRemove

public void addRemove(EventBean[] newData,
                      EventBean[] oldData)
Description copied from interface: EventTable
Add and remove events from table.

It is up to the index to decide whether to add first and then remove, or whether to remove and then add.

It is important to note that a given event can be in both the removed and the added events. This means that unique indexes probably need to remove first and then add. Most other non-unique indexes will add first and then remove since the an event can be both in the add and the remove stream.

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

add

public void add(EventBean[] events)
Description copied from interface: EventTable
Add events to table.

Specified by:
add in interface EventTable
Parameters:
events - to add

remove

public void remove(EventBean[] events)
Description copied from interface: EventTable
Remove events from table.

Specified by:
remove in interface EventTable
Parameters:
events - to remove

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>
Returns:
table iterator

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
Returns:
true for empty index

clear

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

Specified by:
clear in interface EventTable

toQueryPlan

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

getHashAccess

public java.util.List<VirtualDataWindowLookupFieldDesc> getHashAccess()

getBtreeAccess

public java.util.List<VirtualDataWindowLookupFieldDesc> getBtreeAccess()

copyShallow

public EventTable copyShallow()

isUnique

public boolean isUnique()

setUnique

public void setUnique(boolean unique)

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