Hi Ignacio,

Comments inline.

Jim

- I would like to  eliminate the need for outbound and inbound wires,
having the connector create a single Wire which is attached to a
source.  In this scenario, targets will not have wires but will
continue to supply TargetInvokers to sources. This will tie in
directly with Meeraj's work on the physical component builders and
wire reconstitution on slaves. It will also further serve to simplify
the connect phase. As we do this, we will need to revisit the SPI for
WirePostProcessors. Following on Meeraj's physical builder work,
policy and wire processing will need to be done on the master against
the model and a portable representation of the wire sent to slaves
where it will be constituted. We will need something akin to an
InterceptorBuilder which will be responsible for helping to
constitute a wire on the slave by supplying interceptors. Thoughts?


Not sure what the intended approach is here. I would think that inbound chains for targets would still be needed, where would those live now, in
the single wire at the source?
I see two cases, managed and non-managed code. In the former, where the source is a component, there would be one set of chains (no distinction between inbound and outbound) attached to the source component. For non-managed code, it would be pretty much the same thing with the chains held in the proxy or CallableReference.

This should simplify the connector a bit more and allow us to fit in with the master allocation process described by Meeraj. For example, a WireDefinition will be marshalled to a slave node where it will be reconstituted.

Would that also preserve the bridging
interceptors at the source wire?
We would just need the non-blocking variant. There would be no need for the synchronous form. If a wire changes, the assembly will be mutated on the master and a diff (probably of just the wire) sent to the slave.

Perhaps I am not understanding, but at some point we used to have a
similar approach where (at least some of) the chains were co-located
in a single wire, but that had to be undone to allow multiple sets of
callback source chains at an inbound wire. Could you elaborate on
how this would work with a single wire?

I think I'm proposing something different to what we had before, essentially collapsing the distinction between inbound and outbound wires. For example, what we currently have is:

A --------------\
                        |-----------------C
B --------------/

I'm proposing we do the following:

A ---------------
                        C
B ---------------

In the approach connections would be:

1. Between components
2. From a transport to a component
3. From a component to a transport
4. From a transport to a transport

We won't need to have multiple hop wires with the "local" binding anymore (e.g. component-->reference-->service-->component) since they can be optimized as point-to-point communications (e.g. component-- >component) on the master. The connector would be responsible for just creating wires, populating it with interceptors, and obtaining a target invoker from the target.

Callback wires would just be associated on the source side and set as context as it is today.

Jim

This is not that much different from what we have today in that we are collapsing OutboundWire and InboundWire. Callback

- Integrate the autowire changes with Meeraj's federation work which
will give us support for federated/distributed autowire across an SCA
Domain (as well as supporting more of the SCA autowire semantics).

Jim





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to