See inline.
Simon
Jean-Sebastien Delfino (JIRA) wrote:
[ https://issues.apache.org/jira/browse/TUSCANY-1499?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12516845 ]
Jean-Sebastien Delfino commented on TUSCANY-1499:
-------------------------------------------------
I'd suggest the following to further simplify this:
State that a reference with a callback cannot be named like a service
State that a service with a callback cannot be named like a reference
Take these statements as proposals to the SCA spec workgroup.
This will save us from having to implement a complicated naming convention for
the derived callback services and callback references, and will save the
application developer to have to understand it. I think that this is a
reasonable approach for now, as Java components for example will typically name
a reference foo and a service Foo, and as another example BPEL components
already have this naming limitation as well if I understand BPEL and WSDL
correctly.
I don't think convenience of the runtime (one particular runtime) should
be made visible at the spec level. We should take the spec as is and do
what we need to support it. This won't be very difficult.
Define marker interfaces ComponentCallbackService extends ComponentService and
ComponentCallbackReference extends Reference to allow code like
domain.locateService to filter out these callback services/references and not
allow them to be located explicitly.
I'd be more inclined to do this using a method isCallback() on the
Contract interface from which services and references inherit.
Instead of trying to establish callback wires all over the place, which will not fly
anyway as soon as 2 references with callback are wired to a single service, flow the
endpoint reference of the callback service representing the client in the SCA request
message and use it to direct the callback.... "in context" as suggested by
Raymond in thread [1].
These callback wires are already being established and AFAIK this does work
in the case you describe. The callback wire is selected based on the
forward wire that was used. I'll write an itest to verify that this is
working correctly.
Core wiring framework should create pseudo-services and pseudo-references for
callbacks
---------------------------------------------------------------------------------------
Key: TUSCANY-1499
URL: https://issues.apache.org/jira/browse/TUSCANY-1499
Project: Tuscany
Issue Type: Bug
Components: Java SCA Core Runtime
Affects Versions: Java-SCA-Next
Environment: Windows XP
Reporter: Simon Nash
Assignee: Simon Nash
Fix For: Java-SCA-Next
As proposed in [1], there are many benefits in allowing bindings to treat
callbacks like regular calls rather than having to add special code to every
binding to support callbacks.
The core wiring framework should be changed as described in [1] to enable this.
See also the comments in [2].
[1] http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg20497.html
[2] http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg20556.html
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]