On Feb 25, 2007, at 2:18 PM, Jeremy Boynes wrote:

I'm little confused by this one. AIUI we have two configurations in the physical world:
1) two co-located components connected by a wire
   the PCS would contain two PCDs and a PWD for the connection

2) a component connected to the network via a binding
the PCD would contain a PCD with binding configuration for the remote service/reference

These could actually be mixed (a PCD may have one service/reference bound to the network and another wired to a different co-located component).

With that in mind, I don't see why we would have 'bindingType' on a PWD. In the optimal case, the controller would have reduced that to:
  <wire source="foo#ref" target="bar#srv"/>

In the non-optimal case, we would need to define interceptor chains for each of the source/callback operations, something like:
  <wire source="foo#ref" target="bar#srv">
    <interface>
       <operation name="method1">*
         <paramType type="type1"/>  <!-- deals with overloading
<ins:interceptorName ...>* <!-- unique QName for each interceptor type
    <callback>
       <operation name="cb1">*
         <ins:interceptorName ...>*

For the second configuration above, we would just specify binding configuration in the PCD for each physically bound service/ reference. Something like:

  <cns:component name="foo">
    ...
<bns:reference name="ref">* <!-- unique QName for reference binding
       ... binding config elements ...
       <interface>
         <operation name="method1">*
<paramType type="type1"/> <!-- do we need to deal with overloading?
           <ins:interceptorName ...>* <!-- outbound interceptors
       <callback>
         <operation name="method1">*
           <paramType type="type1"/>
           <ins:interceptorName ...>* <!-- inbound interceptors

<bns:service name="srv">* <!-- unique QName for service binding
       ... binding config elements ...
       <interface>
         ...
       <callback>
         ...

I'm cool with the format above provided we allow for extensibility info in the interceptor (I think it needs to be more than a name). Having the param types as elements rather than attributes is better as is the separation of forward and callback ops. Also, you are right, we don't need binding type.

Jim


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

Reply via email to