← Prev in month ← Prev in thread
Next in thread → Next in month →

NEW ISSUE: (1.2) Promotion of consumers and producers underminescomposability

From
Eric Johnson <>
Date
2010-04-08T17:18:28+00:00
ID
Thread
NEW ISSUE: (1.2) Promotion of consumers and producers underminescomposability
Target: sca-assembly-1.2-spec-wd01.doc

Title: Promotion of SCA consumers and producers undermines composibility

Description:

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:

  
"target" channel references are a weak way to couple the use of
the same destination.

  
target channel references can be to a domain channel, thus
undermining composability - either by collisions in the naming of
target channels, or by forcing special knowledge of which channels are
used where.

  

Proposal:

Instead of promoting consumers and producers, promote channels.  Move
the filter and eventType information on consumers and producers into
the channel.

-Eric
← Prev in month ← Prev in thread
Next in thread → Next in month →