InterfaceContract and its associated objects should be Cloneable
----------------------------------------------------------------
Key: TUSCANY-1452
URL: https://issues.apache.org/jira/browse/TUSCANY-1452
Project: Tuscany
Issue Type: Improvement
Components: Java SCA Assembly Model, Java SCA Core Runtime
Affects Versions: Java-SCA-0.90, Java-SCA-0.91, Java-SCA-Next
Reporter: Matthew Sykes
Given the current infrastructure in 0.90, it is difficult for a binding
provider to setup a binding-specific databinding on the binding
InterfaceContract because the InterfaceContract, Interface, and Operation model
objects can't be easily cloned.
While the binding providers are allowed to give the runtime an
InterfaceContract for the binding, if the data describing the interface comes
from something other than the binding configuration the binding will typically
use the InterfaceContract from the componentType. Without a way to copy the
InterfaceContract, the binding provider will need to create an interface from
scratch by using one of the interface processors or the assembly model
factories and custom logic.
For example, the axis2 binding will use the portType from wsdl document
associated with the <binding.ws ...> element in scdl to create an
InterfaceContract or the binding. This approach requires the
WebServiceBindngProcessor to access the interface introspector and introspect
an interface contract.
I've discussed this a bit with Raymond who has agreed that making the
InterfaceContract, Interface, Operation, and associated objects cloneable would
allow a binding provider implementation to get an instance of the interface
contract that could be updated with a binding-specific databinding. This is
similar to what existed in the M2 branches of days gone by.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]