Book Image

OSWorkflow: A guide for Java developers and architects to integrating open-source Business Process Management

Book Image

OSWorkflow: A guide for Java developers and architects to integrating open-source Business Process Management

Overview of this book

OSWorkflow is an open-source workflow engine written entirely in Java with a flexible approach and a technical user-base target. It is released under the Apache License. You can create simple or complex workflows, depending on your needs. You can focus your work on the business logic and rules. No more Petri Net or finite state machine coding! You can integrate OSWorkflow into your application with a minimum of fuss. OSWorkflow provides all of the workflow constructs that you might encounter in real-life processes, such as steps, conditions, loops, splits, joins, roles, etc.This book explains in detail all the various aspects of OSWorkflow, without assuming any prior knowledge of Business Process Management. Real-life examples are used to clarify concepts.
Table of Contents (13 chapters)
OSWorkflow
Credits
About the Author
About the Reviewers
Introduction

What is Esper?


Esper is an open-source Java CEP engine. Esper, like OSWorkflow needs to be embedded inside your application, it doesn't run in standalone mode. Esper is optimized for the processing of very large volume of events in real time.

The Esper Architecture

This section describes the three most important concepts in Esper architecture: events, patterns, and listeners.

Esper, like every CEP engine analyzes an event stream and detects relevant events, matching them with user-defined patterns. For Esper, these events are regular JavaBeans and the patterns are represented in EQL. EQL is a special language designed for pattern matching and its syntax is very similar to that of SQL.

The patterns in EQL are registered in the Esper engine and when an event arrives, it is checked against all the active patterns. What happens when one or more patterns match the event? The Esper engine notifies the listeners of the event's matching patterns.

This mechanism is analogous to the observer design...