[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: NEW ISSUE: (1.2) Promotion of consumers and producers underminescomposability
Title: Promotion of SCA consumers and producers undermines composibility
In the assembly 1.2 WD 01, consumers and producers are identified as part of the "component type" of a component, whereas "channels" are limited in scope to the boundaries of a composite. This is contrary to the rest of SCA, where the indication of the communication between components surfaces in the component type, currently as a service or reference. When needed, services or references can establish concrete bindings, but otherwise communication needs are exposed at the boundary of a composite. In the case of producers, consumers, and channels, not only can bindings be applied, but also "targets", which then either hide endpoints within a composite, or expose them globally as part of the "global domain."
This makes composition of applications using eventing more difficult.
Further, although producers and consumers can refer to the same target, this is an awkward way for these two constructs to establish that they intend to operate on the same "destination". When building a composite the composite developer may wish for one component to produce for a channel, and a different component to publish on the same channel, and then promote the combination of producer and consumer. If the developer only promotes the consumer, or only promotes the publisher, that would be misleading to the composites using that component. Perhaps it is even an error.
Here, then, are two problems:
Instead of promoting consumers and producers, promote channels. Move the filter and eventType information on consumers and producers into the channel.