[ 
https://issues.apache.org/jira/browse/TUSCANY-2409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12613413#action_12613413
 ] 

Jean-Sebastien Delfino commented on TUSCANY-2409:
-------------------------------------------------

That new createSCANode() method which just got added does not make any sense to 
me, sorry.

First it's overriding the createSCANode(compositeURI, Contribution...) method 
which had very different semantics and it's not compatible with 
createSCANodeFromClassLoader() either.

Second, including a call to start() as part of the create() confuses the 
lifecycle of Node and is actually starting to make the start() method 
irrelevant.

If I understand the story correctly, this method was added to work around a 
problem? Can we please fix the original problem and remove that hack?

Thanks

> Major consumability issues with new Node and Domain APIs
> --------------------------------------------------------
>
>                 Key: TUSCANY-2409
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-2409
>             Project: Tuscany
>          Issue Type: Bug
>    Affects Versions: Java-SCA-1.3
>         Environment: All
>            Reporter: Simon Nash
>            Assignee: Raymond Feng
>             Fix For: Java-SCA-Next
>
>
> The recent change to remove the previous domain/node implementation has 
> created severe usabliity issues for the callback-ws-client and 
> callback-ws-server samples.
> 1. In callback-ws-client, MyClientImpl, the line
>         SCANode node = 
> SCANodeFactory.createNodeWithComposite("myapp.composite");
>     was changed to
>         SCANode2 node = 
> SCANode2Factory.newInstance().createSCANode("target/classes/myapp.composite", 
> new SCAContribution("test", "target/classes"));
> 2. In callback-ws-client, CallbackClientTestCase, the line
>         node = SCANodeFactory.createNodeWithComposite("callbackws.composite");
>     was changed to
>         node = 
> SCANode2Factory.newInstance().createSCANode("jar:file:../callback-ws-service/target/sample-callback-ws-service.jar!/callbackws.composite",
>  new SCAContribution("server", 
> "../callback-ws-service/target/sample-callback-ws-service.jar"));
> 3. In callback-ws-server, CallbackServer, the line
>         SCANode node = 
> SCANodeFactory.createNodeWithComposite("callbackws.composite");
>     was changed to     
>         SCANode2 node = 
> SCANode2Factory.newInstance().createSCANode("target/classes/callbackws.composite",
>  new SCAContribution("test", "target/classes"));
> 4. In callback-ws-server, CallbackServerTestCase, the line
>         node = SCANodeFactory.createNodeWithComposite("callbackws.composite");
>     was changed to
>         node = 
> SCANode2Factory.newInstance().createSCANode("target/classes/callbackws.composite",
>  new SCAContribution("test", "target/classes"));
> The complexity of these APIs, and the need to embed hard-wired paths and jar 
> names, is unacceptable for a simple sample.  This is "must fix" for the 1.3 
> release.
> It would also be good to convert more samples from the previous host-embedded 
> APIs to the new domain/node APIs, but this can't happen until the 
> consumability problems are fixed.
> Ideally we would have a "convenience" API similar to the previous 
> createNodeWithComposite() API.  This API would call the other more complex 
> APIs under the covers.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to