This page is the top level page for information relating to the SCA Java Event Processing work.
There is a Prototype project for SCA Event processing being carried out in a Sandbox associated with the SCA Java project (sandbox/event). These pages help to describe the work taking place in that sandbox.
Event Processing Compared with Service Processing
Currently SCA describes a programming model which is concerned with Service Processing - business function is developed as a series of services, which are implemented by components. Each service may have one or more operations. Each operation typically has (zero or more) request message and optionally some response message. One important aspect of a service operation is that the client invokes a specific operation, providing the necessary request message, and the client knows that a specific service implementation will execute the operation - and the operation usually has some implied business semantics associated with it. SCA provides a model for writing services and service clients at the implementation language level (eg in Java) and also an Assembly level model for composing sets of components together, satisfying service references made by one component by wiring them to a component that provides the service.
p.
Event processing is a different approach to programming business applications, offering a more loose coupled approach to application design. In event processing, one component can produce a message, called an Event, which it makes available for other components to consume. The Producer component produces the event whether or not there are actually any Consumer components listening for that event. The event can be received by zero, one or many Consumer components. When a Producer produces an event, no semantics are implied for what processing should happen if the event is consumed - a consumer component is free to do what it wants with the event.