public class EventTypeIndexBuilder
extends java.lang.Object
EventTypeIndex
for addition and removal of filters.
It delegates the work to make modifications to the filter parameter tree to an IndexTreeBuilder
.
It enforces a policy that a filter callback can only be added once.Constructor and Description |
---|
EventTypeIndexBuilder(EventTypeIndex eventTypeIndex,
boolean allowIsolation)
Constructor - takes the event type index to manipulate as its parameter.
|
Modifier and Type | Method and Description |
---|---|
FilterServiceEntry |
add(FilterValueSet filterValueSet,
FilterHandle filterCallback,
FilterServiceGranularLockFactory lockFactory)
Add a filter to the event type index structure, and to the filter subtree.
|
void |
apply(FilterSet filterSet,
FilterServiceGranularLockFactory lockFactory)
Add the filters, from previously-taken filters.
|
void |
destroy()
Destroy the service.
|
boolean |
isSupportsTakeApply() |
void |
remove(FilterHandle filterCallback,
FilterServiceEntry filterServiceEntry)
Remove a filter callback from the given index node.
|
FilterSet |
take(java.util.Set<java.lang.Integer> statementIds)
Returns filters for the statement ids.
|
public EventTypeIndexBuilder(EventTypeIndex eventTypeIndex, boolean allowIsolation)
eventTypeIndex
- - index to manipulateallowIsolation
- - indicator whether isolated service provider is allowed for the enginepublic void destroy()
public final FilterServiceEntry add(FilterValueSet filterValueSet, FilterHandle filterCallback, FilterServiceGranularLockFactory lockFactory)
filterValueSet
- is the filter informationfilterCallback
- is the callbacklockFactory
- lock factorypublic final void remove(FilterHandle filterCallback, FilterServiceEntry filterServiceEntry)
filterCallback
- is the callback to removefilterServiceEntry
- entrypublic final FilterSet take(java.util.Set<java.lang.Integer> statementIds)
statementIds
- ids to takepublic void apply(FilterSet filterSet, FilterServiceGranularLockFactory lockFactory)
filterSet
- to addlockFactory
- lock factorypublic boolean isSupportsTakeApply()