[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.]

Classes

  ClassDescription
public classDoubleRange
Holds a range of double values with a minimum (Start) value and a maximum (end) value.

public classDoubleRangeComparator
Comparator for DoubleRange values.

Sorts double ranges as this: sort by min asc, max asc. I.e. same minimum value sorts maximum value ascending.


public classEventTypeIndex
Mapping of event type to a tree-like structure containing filter parameter constants in indexes net.esper.filter.FilterParamIndex and filter callbacks in net.esper.filter.FilterCallbackSetNode.

This class evaluates events for the purpose of filtering by (1) looking up the event's net.esper.events.EventType and (2) asking the subtree for this event type to evaluate the event.

The class performs all the locking required for multithreaded access.


public classEventTypeIndexBuilder
This class is responsible for changes to net.esper.filter.EventTypeIndex for addition and removal of filters. It delegates the work to make modifications to the filter parameter tree to an net.esper.filter.IndexTreeBuilder. It enforces a policy that a filter callback can only be added once.

public classFilterCallbackImpl
An interface that wraps the the filter callback with a delegate

public classFilterCallbackSetNode
This class holds a list of indizes storing filter constants in net.esper.filter.FilterParamIndex nodes and a set of net.esper.filter.FilterCallback. An instance of this class represents a leaf-node (no indizes stored, just filter callbacks) but can also be non-leaf (some indizes exist) in a filter evaluation tree. Events are evaluated by asking each of the indizes to evaluate the event and by adding any filter callbacks in this node to the "matches" list of callbacks.

public classFilterOperatorHelper
Contains static methods useful for help with FilterOperators.

public classFilterParamIndex
Each implementation of this abstract class represents an index of filter parameter constants supplied in filter parameters in filter specifications that feature the same event property and operator. For example, a filter with a parameter of "count EQUALS 10" would be represented as index for a property named "count" and for a filter operator typed "EQUALS". The index would store a value of "10" in its internal structure. Implementations make sure that the type of the Object constant in get and put calls matches the event property type.

public classFilterParamIndexCompare
Index for filter parameter constants for the comparison operators (less, greater, etc). The implementation is based on the SortedDictionary implementation of SortedDictionary. The index only accepts numeric constants. It keeps a lower and upper bounds of all constants in the index for fast range checking, since the assumption is that frequently values fall within a range.

public classFilterParamIndexEquals
Index for filter parameter constants to match using the equals (=) operator. The implementation is based on a regular HashMap.

public classFilterParamIndexNotEquals
Index for filter parameter constants to match using the equals (=) operator. The implementation is based on a regular HashMap.

public classFilterParamIndexRange
Index for filter parameter constants for the range operators (range open/closed/half). The implementation is based on the SortedDictionary implementation of SortedDictionary and stores only expression parameter values of type DoubleRange.

public classFilterServiceImpl
Implementation of the filter service interface. Does not allow the same filter callback to be added more then once.

public classFilterServiceProvider
Static factory for implementations of the net.esper.filter.FilterService interface.

public classFilterSpec
Contains the filter criteria to sift through events. The filter criteria are the event class to look for and a set of parameters (attribute names, operators and constant/range values).

public classFilterSpecParam
This class represents one filter parameter in an net.esper.filter.FilterSpec filter specification.

Each filerting parameter has an attribute name and operator type.


public classFilterSpecParamComparator
Sort comparator for filter parameters that sorts filter parameters according to filter operator type, and within the same filter operator sorts by event property name.

public classFilterSpecParamConstant
This class represents a single, constant value filter parameter in an net.esper.filter.FilterSpec filter specification.

public classFilterSpecParamEventProp
This class represents a filter parameter containing a reference to another event's property in the event pattern result, for use to describe a filter parameter in a net.esper.filter.FilterSpec filter specification.

public classFilterSpecParamRange
This class represents a range filter parameter in an net.esper.filter.FilterSpec filter specification.

public classFilterSpecValidator
Utility class for validating filter specifications.

public classFilterValueSetImpl
Container for filter values for use by the net.esper.filter.FilterService to filter and distribute incoming events.

public classFilterValueSetParamImpl
Filter parameter value defining the event property to filter, the filter operator, and the filter value.

public classIndexFactory
Factory for net.esper.filter.FilterParamIndex instances based on event property name and filter operator type.

public classIndexHelper
Utility class for matching filter parameters to indizes. Matches are indicated by the index net.esper.filter.FilterParamIndex and the filter parameter net.esper.filter.FilterSpecParam featuring the same event property name and filter operator.

public classIndexTreeBuilder
Builder manipulates a tree structure consisting of net.esper.filter.FilterCallbackSetNode and net.esper.filter.FilterParamIndex instances. Filters can be added to a top node (an instance of FilterCallbackSetNode) via the add method. This method returns an instance of net.esper.filter.IndexTreePath which represents the tree path (list of indizes) that the filter callback was added to. To remove filters the same IndexTreePath instance must be passed in.

The implementation is designed to be multithread-safe in conjunction with the node classes manipulated by this class.


public classIndexTreePath
Encapsulates the information required by net.esper.filter.IndexTreeBuilder to maintain the filter parameter tree structure when filters are added and removed from the tree.

public classRangeValueDouble
A Double-typed value as a filter parameter representing a range.

public classRangeValueEventProp
An event property as a filter parameter representing a range.

Interfaces

  InterfaceDescription
public interfaceEventEvaluator
Interface for matching an event instance based on the event's property values to filters, specifically filter parameter constants or ranges.

public interfaceFilterCallback
Interface for a callback method to be called when an event matches a filter specification.

public interfaceFilterService
Interface for filtering events by event type and event property values. Allows adding and removing filters.

Filters are defined by a net.esper.filter.FilterSpec and are associated with a net.esper.filter.FilterCallback callback. Implementations may decide if the same filter callback can be registered twice for different or some filter specifications.

The performance of an implementation of this service is crucial in achieving a high overall event throughput.


public interfaceFilterSpecParamRangeValue
Interface for range-type filter parameters for type checking and to obtain the filter values for endpoints based on prior results.

public interfaceFilterValueSet
Contains the filter criteria to sift through events. The filter criteria are the event class to look for and a set of parameters (property names, operators and constant/range values).

public interfaceFilterValueSetParam
This interface represents one filter parameter in an net.esper.filter.FilterValueSet filter specification.

Each filtering parameter has an property name and operator type, and a value to filter for.


Delegates

  DelegateDescription
public delegateFilterCallbackDelegate
A delegate wrapper for the filter callback

Enumerations

  EnumerationDescription
public enumerationFilterOperator
Defines the different operator types available for event filters.

Mathematical notation for defining ranges of floating point numbers is used as defined below: [a,b] a closed range from value a to value b with the end-points a and b included in the range(a,b) an open range from value a to value b with the end-points a and b not included in the range[a,b) a half-open range from value a to value b with the end-point a included and end-point b not included in the range(a,b] a half-open range from value a to value b with the end-point a not included and end-point b included in the range