Composition of Event Processes is based on component-based programming model. An Event Process is composed of microservices (also known as Business Components) linked to each other by Data Routes.
The Event processes are designed by drag-drop-connect function of microservices. The components are customized by configuration rather than by custom code. The routes between components are drawn by visually connecting the component ports. Every component instance in the flow can be configured so that it can be deployed on different ESB network nodes.
The following sections describe how to add an Event Process, add components, add remote service instances and ad external Event Processes.
Adding an Event Process
A new Event Process (EP) project can be developed to meet your customized requirements, which has to be built on an Event Process Project.
To create a new Event Process Project, please refer the Adding an Event Process section.
Adding and Connecting Components
After creating an Event Process you can add components and connect them to form a route; please refer the Adding and Connecting Components section for further information.
All the microservices contain configuration information that can be provided in the Custom Property Sheet (CPS) dialog.
To review the custom property sheet associated with any component, double-click the component in the event process editor.
Adding Remote Service Instance
The Fiorano Platform allows you to compose an Event Process with Business Component instances from other Event Processes. The Remote Service instance is one of the available options for communication between different event processes. If the producer component is in a calling event process, then the producer component needs to send messages to the consumer component in a called event process, then a remote instance of the consumer component can be used in the calling event process.
Adding External Event Process (Subflow)
Subflow concept is used to ease the Event Process development when composing large Event Processes. When an Event Process B is copied into another Event Process A, all the data (service instances, routes etc) in B is copied and shown as a single entity (icon) in A. By default, the icon takes the name of the added Event Process (that is, B). When we double-click on the icon it shows all the service instances/routes and so on. The ports of the inserted Event Process B can be exposed for communication with Event Process A.
A workflow in Fiorano terminology consists of an entry point, an intermediary points and an end point. The entry and intermediary points are defined as Workflow Items and the end point is defined as a Workflow End.
To track the documents going through the Service Instances, document tracking can be enabled on service instance ports.
Defining Route Transformations
In addition to XSLT component, transformations can also be defined on routes having schema mismatch. In the example shown below, there is a schema mismatch between Feeder output port and CBR input port and hence the route is shown as dotted line.
A route transformation can be defined in any one of the following ways:
- Defining a Mapper Project,
- Providing a Custom XSL,
- Using a Named Configuration, or
- Import from a Zip file
Configuring Selectors on Routes
eStudio allows you to define Selectors for the data flow through an event route. The Selectors can be defined based on any one of the following:
- Sender of the message
- Value of a JMS property in the message
- Using an XPath defined on the incoming XML message
- Using an XPath defined on the Application Context (in case Application Context is defined).
Configuring Port Properties
Component port properties can be configured by choosing the port and configuring the appropriate property in the Properties panel.
For detailed description on port configuration, please refer the Port Properties section under Common Configurations.
Running an Event Process
Fiorano enables the deployment of an event processes over a distributed peer-to-peer grid of infrastructure servers (known as "peer servers") at the click of a button. A developed event process contains a set of configured components connected via routes. The configuration for these components also includes the names of the grid-nodes (Fiorano Peers) on which the components are to be deployed.
Running an Event Process involves the following steps:
- Check Resource and Connectivity
- Launch Event Process
- Stopping an Event Process
- Synchronizing an Event Process