Processing Events Using Structured Stages
This example uses the IEP capability to call out to external IEP processes. In some systems, the event processing is partly filtering partly qualifying (adding data). When the qualification is using a lot of orthogonal information, we can end up with a fully connected staging model, like:
![]()
We can see how this can become heavily linked as we add to the processing information. The goal of this exercise is to show how to use the external IEP process calling to avoid this.
Technical Complexity
Medium
Purposes
- Allow the processing of events in multiple steps
- Avoid creating IEP processes that are overly complex.
- Allow for extensibility in the IEP design
Example Situation
- Need to acquire orthogonal information about an event, and forward the resulting qualified event.
- Is the event about an employee or a customer
- From which region of the world does the event originate?
- Match the request to the proper region to get access to the proper inventory.
- Check for the item requested, and if yes, forward the event.
- Match the request to the proper region to get access to the proper inventory.
- From which region of the world does the event originate?
If we were to do this in a single stage, this is what the process could look like:
In the design section, we'll see what staging would do this interesting process...
Design
This design makes use of the iep external process calling. For this example, we would use only two stages.
- Determination if the request comes from an employee or a client.
- Determination of the location of the request (which part of the world) to query the proper inventory database.
Process Flow, Stage 1
Process Flow, Stage 2
Implementation Model
IEP Constructs Used
- Inbound stream
- Projection and Filters
- Partitionned Windows
- Insert Stream
- Union
- Stream Output
- External IEP Process Callout
Construction Instructions and files
- The Netbeans project for this example can be found there.
- A sample of a test message can be found in the test section of the composite application
- A sql script to populate the DB is in the process files of the iep project. It has to be run after the deployment of the application.