public interface EventTable extends Iterable<EventBean>
Modifier and Type | Method and Description |
---|---|
void |
add(EventBean event)
Add event to table.
|
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.
|
void |
destroy()
Destroy index.
|
Object |
getIndex()
Return the index object itself, or an object-array for multiple index structures.
|
Integer |
getNumberOfEvents()
If the number of events is readily available, an implementation will return that number
or it may return null to indicate that the count is not readily available.
|
int |
getNumKeys()
If the index retains events using some key-based organization this returns the number of keys,
and may return null to indicate that either the number of keys is not available or
costly to obtain.
|
EventTableOrganization |
getOrganization() |
Class |
getProviderClass() |
boolean |
isEmpty()
Returns true if the index is empty, or false if not
|
Iterator<EventBean> |
iterator()
Returns an iterator over events in the table.
|
void |
remove(EventBean event)
Remove event from table.
|
void |
remove(EventBean[] events)
Remove events from table.
|
String |
toQueryPlan() |
forEach, spliterator
void addRemove(EventBean[] newData, EventBean[] oldData)
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.
newData
- to addoldData
- to removevoid add(EventBean[] events)
events
- to addvoid add(EventBean event)
event
- to addvoid remove(EventBean[] events)
events
- to removevoid remove(EventBean event)
event
- to removeboolean isEmpty()
void clear()
void destroy()
String toQueryPlan()
Class getProviderClass()
Integer getNumberOfEvents()
int getNumKeys()
The number returned can be an estimate and may not be accurate.
Object getIndex()
May return null if the information is not readily available, i.e. externally maintained index
EventTableOrganization getOrganization()