|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.espertech.esper.epl.join.table.PropertySortedEventTable
public abstract class PropertySortedEventTable
Index that organizes events by the event property values into a single TreeMap sortable non-nested index with Object keys that store the property values.
Field Summary | |
---|---|
protected EventTableOrganization |
organization
|
protected EventPropertyGetter |
propertyGetter
|
Constructor Summary | |
---|---|
PropertySortedEventTable(EventPropertyGetter propertyGetter,
EventTableOrganization organization)
Ctor. |
Method Summary | |
---|---|
void |
add(EventBean[] events)
Add an array of events. |
void |
addRemove(EventBean[] newData,
EventBean[] oldData)
Add and remove events from table. |
protected java.lang.Object |
getIndexedValue(EventBean theEvent)
Determine multikey for index access. |
java.lang.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. |
EventTableOrganization |
getOrganization()
|
abstract java.util.Set<EventBean> |
lookupConstants(RangeIndexLookupValue lookupValueBase)
|
abstract java.util.Set<EventBean> |
lookupGreater(java.lang.Object keyStart)
|
abstract java.util.Collection<EventBean> |
lookupGreaterColl(java.lang.Object keyStart)
|
abstract java.util.Set<EventBean> |
lookupGreaterEqual(java.lang.Object keyStart)
|
abstract java.util.Collection<EventBean> |
lookupGreaterEqualColl(java.lang.Object keyStart)
|
abstract java.util.Set<EventBean> |
lookupLess(java.lang.Object keyStart)
|
abstract java.util.Set<EventBean> |
lookupLessEqual(java.lang.Object keyStart)
|
abstract java.util.Collection<EventBean> |
lookupLessEqualColl(java.lang.Object keyStart)
|
abstract java.util.Collection<EventBean> |
lookupLessThenColl(java.lang.Object keyStart)
|
abstract java.util.Set<EventBean> |
lookupRange(java.lang.Object keyStart,
boolean includeStart,
java.lang.Object keyEnd,
boolean includeEnd,
boolean allowRangeReversal)
|
abstract java.util.Collection<EventBean> |
lookupRangeColl(java.lang.Object keyStart,
boolean includeStart,
java.lang.Object keyEnd,
boolean includeEnd,
boolean allowRangeReversal)
|
abstract java.util.Set<EventBean> |
lookupRangeInverted(java.lang.Object keyStart,
boolean includeStart,
java.lang.Object keyEnd,
boolean includeEnd)
|
abstract java.util.Collection<EventBean> |
lookupRangeInvertedColl(java.lang.Object keyStart,
boolean includeStart,
java.lang.Object keyEnd,
boolean includeEnd)
|
protected static java.util.Set<EventBean> |
normalize(java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submap)
|
protected static java.util.Set<EventBean> |
normalize(java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submapOne,
java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submapTwo)
|
protected static java.util.Collection<EventBean> |
normalizeCollection(java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submap)
|
protected static java.util.Collection<EventBean> |
normalizeCollection(java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submapOne,
java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submapTwo)
|
void |
remove(EventBean[] events)
Remove events. |
java.lang.String |
toQueryPlan()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.espertech.esper.epl.join.table.EventTable |
---|
add, clear, destroy, getIndex, getNumKeys, getProviderClass, isEmpty, iterator, remove |
Field Detail |
---|
protected final EventPropertyGetter propertyGetter
protected final EventTableOrganization organization
Constructor Detail |
---|
public PropertySortedEventTable(EventPropertyGetter propertyGetter, EventTableOrganization organization)
Method Detail |
---|
public abstract java.util.Set<EventBean> lookupRange(java.lang.Object keyStart, boolean includeStart, java.lang.Object keyEnd, boolean includeEnd, boolean allowRangeReversal)
public abstract java.util.Collection<EventBean> lookupRangeColl(java.lang.Object keyStart, boolean includeStart, java.lang.Object keyEnd, boolean includeEnd, boolean allowRangeReversal)
public abstract java.util.Set<EventBean> lookupRangeInverted(java.lang.Object keyStart, boolean includeStart, java.lang.Object keyEnd, boolean includeEnd)
public abstract java.util.Collection<EventBean> lookupRangeInvertedColl(java.lang.Object keyStart, boolean includeStart, java.lang.Object keyEnd, boolean includeEnd)
public abstract java.util.Set<EventBean> lookupLess(java.lang.Object keyStart)
public abstract java.util.Collection<EventBean> lookupLessThenColl(java.lang.Object keyStart)
public abstract java.util.Set<EventBean> lookupLessEqual(java.lang.Object keyStart)
public abstract java.util.Collection<EventBean> lookupLessEqualColl(java.lang.Object keyStart)
public abstract java.util.Set<EventBean> lookupGreaterEqual(java.lang.Object keyStart)
public abstract java.util.Collection<EventBean> lookupGreaterEqualColl(java.lang.Object keyStart)
public abstract java.util.Set<EventBean> lookupGreater(java.lang.Object keyStart)
public abstract java.util.Collection<EventBean> lookupGreaterColl(java.lang.Object keyStart)
public abstract java.util.Set<EventBean> lookupConstants(RangeIndexLookupValue lookupValueBase)
protected java.lang.Object getIndexedValue(EventBean theEvent)
theEvent
- to get properties from for key
public void addRemove(EventBean[] newData, EventBean[] oldData)
EventTable
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.
addRemove
in interface EventTable
newData
- to addoldData
- to removepublic void add(EventBean[] events)
add
in interface EventTable
events
- to add
java.lang.IllegalArgumentException
- if the event was already existed in the indexpublic void remove(EventBean[] events)
remove
in interface EventTable
events
- to be removed, can be null instead of an empty array.
java.lang.IllegalArgumentException
- when the event could not be removed as its not in the indexpublic java.lang.Integer getNumberOfEvents()
EventTable
getNumberOfEvents
in interface EventTable
protected static java.util.Set<EventBean> normalize(java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submap)
protected static java.util.Collection<EventBean> normalizeCollection(java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submap)
protected static java.util.Collection<EventBean> normalizeCollection(java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submapOne, java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submapTwo)
protected static java.util.Set<EventBean> normalize(java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submapOne, java.util.SortedMap<java.lang.Object,java.util.Set<EventBean>> submapTwo)
public java.lang.String toQueryPlan()
toQueryPlan
in interface EventTable
public EventTableOrganization getOrganization()
getOrganization
in interface EventTable
|
© 2006-2016 EsperTech Inc. All rights reserved. Visit us at espertech.com |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |