Events Framework Interfaces and Classes
- Last UpdatedJul 19, 2024
- 2 minute read
The following table 1 and table 2 describe the interfaces and classes used in the event Framework. All the interfaces need to be implemented in the event service class files.
Interfaces
Table 1 - Interfaces
|
Interface |
Description |
|---|---|
|
IEventPort |
This interface represents a port used by the event service provider and contains portname, port guid, event name and port XML string. Port generally contains the information about event listener. For example, in case it is FileSystemEventProvider, the port contains name of directories which file system event provider is going to monitor. |
|
IEventClientServiceProvider |
This interface needs to be implemented in the event handler class file to return a new event port and set its values. It has the methods such as GetNewEventPort,LoadEventPort, GetAllEventParameters, and so on. The read only property event name is hard coded in each event provider. GetNewEventPort method is used to return new empty port object. LoadEventPort method creates new port and set its values. GetAllEventParameters method returns all event parameters which will be available whenever an event is raised by the event service provider. This is useful to give event notification to appropriate consumer. IsEventValidForTheTarget method is useful to change the event message before it reaches the workflow engine. This is like additional preprocessing on the event message before it delivered. |
|
IEventServiceProvider |
This interface will start the events and need to be implemented in the event handler class file. This has the methods such as StartListeningPort, StopListeningPort, RefreshListeningPort, and so on. |
Classes
Table 2 - Classes
|
Class |
Description |
|---|---|
|
EventBinding |
This class file is used to set the event parameters (event name, Portguid, Application name, and so on) and saving to the SKEventbinding table. This file inherited from Skelta.Core.DS.SingleTableObject class file. This base class has the method save for saving the data to the event binding table. This converts the parameters in XML format and make the saving the data to the event binding table. After raising the events the specified record is deleted from the table by calling the delete method. |
|
EventBindingCollection |
This will retrieve the matching event item record from the eventbinding table. This generates the selected query and set all SQL parameters, and retrieves the corresponding event record. |
|
EventItem |
This class file is used to create a new event object. Here the parameters are event provider name, event port, event parameters and event message. |
|
EventParameter |
This class file holds parameters used for correlation between an event and an eventbinding. |
|
EventServiceManager |
This will be called from the Engine to start the events or stop the events. This file called the StartListeningPort method which is implemented in the event handler class file. This contains other important methods such as GetAllEventProviders and GetAllEventPorts. It will retrieve the event providers from the table, and then retrieve the event ports from the table. |
|
EventServicePort |
This class file will set event service port details and save to the SKEventServicePorts table. This class file is inherited from the Skelta.Core.DS.SingleTableObject file. This base class facilitates the saving option and represents a particular port record. |
|
EventServicePortCollection |
This will retrieve the event port details for a specific event type. This retrieves collection of ports for the event from the table SKEventServiceports table. |