A CEP application is created using the CEP web based authoring tool. Using this authoring tool, the application developer creates the building blocks of the application definitions. This is done by filling up forms without the need to write any code.
The URL of the CEP authoring tool is:
<cep_host>:<port>/AuthoringTool/Main.html
//(Example: http://130.206.81.23:8080/AuthoringTool/Main.html)
The building blocks of a CEP application are:
- Event types – the events that are expected to be received as input or to be sent as output. An event type definition includes the event name and a list of its attributes.
- Producers – the event sources and the way the CEP should pull events from those sources. If you are going to push events through REST calls, there is no need to define a producer.
- Consumers – the event consumers and the way to send them the CEP output events.
- Temporal processing contexts – time window contexts in which event processing agents are active.
- Segmentation processing contexts – semantic contexts that are used to group several events to be processed by event processing agents.
- Composite processing contexts – group together several different processing contexts.
- Event processing agents (EPAs) – responsible to detect patterns over incoming events in a specific processing context and to generate derived events.
The Authoring tool allows you to define a CEP application, validate it, and export the application definition. The export action creates a JSON format representation of the CEP application. This JSON can be exported either to the engine repository or to a local file (to be later fed to the engine repository).
This JSON file that describes a CEP application is the input for the CEP engine. It can be generated by the authoring tool, and it can be generated programmatically by any other application and fed to the CEP engine.