Hi all,

As per requirements of the new siddhi implementation we have changed the
event object model. Tentative class diagram of new event object model is
shown below with only important attributes and methods.

​*Event*: High-level interface which is exposed to the user.

*ComplexEvent*: High-level common interface to be used inside Siddhi
implementation

*StreamEvent*: Input event type of Siddhi in implementation level. It is
worthy to note next attribute which offers event chaining capability to
StreamEvents.

*InnerStreamEvent*: Event type which is used by executors to process. Here
data is divided into three categories.
1. Before window data - event data which will be used by processors before
a window occurs.
2. On after window data - event data which will be used on and after window
occur
3. Out data - output data after processing
Data will not be duplicated among these categories. When duplication
happens priority will be given in the order of outData>on
afterWindowData>beforeWindowData. So out data will always contain
processing results which can be directly sent forward. Also with this new
model we can only forward the data needed for processing leaving behind
unwanted data. This will save both memory and processing time.

*StateEvent*: To facilitate sequence and patterns.

*MetaStreamEvent*: This is container class to store information needed of
InnerStreamEvent creation and configuring Processors according to that.

*MetaStateEvent*: This contains a collection of MetaStreamEvents to handle
conversion of state events.

To handle memory issues in event conversion we are planing to use object
pools. Corresponding to this event model change Siddhi event processing
process has also changed. Will update on that separately.
-- 
Tishan Dahanayakage
Software Engineer
WSO2, Inc.
Mobile:+94 716481328

Disclaimer: This communication may contain privileged or other confidential
information and is intended exclusively for the addressee/s. If you are not
the intended recipient/s, or believe that you may have received this
communication in error, please reply to the sender indicating that fact and
delete the copy you received and in addition, you should not print, copy,
re-transmit, disseminate, or otherwise use the information contained in
this communication. Internet communications cannot be guaranteed to be
timely, secure, error or virus-free. The sender does not accept liability
for any errors or omissions.
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to