The main reason i was doing it in a single module is because that seemed an easier way to leave the existing node-api and node-impl modules alone while we refine the new one. It still seems easiest to me but we could have node-api2/node-impl2 instead, i'd also be fine with having it all go in core-spi/core at the end too but i do think it would be good if we can not break anyone using the existing node modules for now until we're sure we're all happy with the new approach, and thats why a new module seemed less disruptive.
...ant On Tue, Feb 2, 2010 at 6:46 PM, Raymond Feng <[email protected]> wrote: > Maybe we can consider the following: > > 1) Merge node-api into core-spi > 2) Merge node-impl into core > > We'll have to look into the dependency tree to determine what's the best > option. > > Thanks, > Raymond > -------------------------------------------------- > From: "Raymond Feng" <[email protected]> > Sent: Tuesday, February 02, 2010 8:54 AM > To: <[email protected]>; <[email protected]> > Subject: Re: Our story for Domain/Node > >> Why do you need to merge node-api and node-impl? Once we introduce >> dependencies such as extensibility to node-api, we can discover the >> NodeFactoryImpl/NodeImpl using that. I prefer to leave the node-impl in a >> separate module as we have other node impls such as node-impl-osgi. >> >> Thanks, >> Raymond >> -------------------------------------------------- >> From: "ant elder" <[email protected]> >> Sent: Tuesday, February 02, 2010 1:27 AM >> To: <[email protected]> >> Subject: Re: Our story for Domain/Node >> >>> On Mon, Feb 1, 2010 at 1:43 PM, ant elder <[email protected]> wrote: >>>> >>>> On Fri, Jan 29, 2010 at 9:43 PM, Raymond Feng <[email protected]> >>>> wrote: >>>> >>>>> B) NodeFactory/Node as API or SPI >>>>> >>>>> At this point, we try to not add other Tuscany modules in the node-api >>>>> module and use reflection APIs to discover and invoke NodeImpl. That >>>>> creates >>>>> some difficulty for the code that wants to use NodeFactory/Node as a >>>>> SPI. >>>>> The later case wants to access more information from NodeFactory/Node, >>>>> for >>>>> example, our client factory could get all the Nodes from the >>>>> NodeFactory and >>>>> list the contributions and composites (including the service >>>>> endpoints). >>>>> >>>>> Do we want to introduce subinterfaces for NodeFactory/Node as SPIs or >>>>> it's >>>>> OK to add more dependencies into node-api? Some examples could be: >>>>> >>>>> NodeFactory.getExtensionPointRegistry(); >>>>> NodeFactory.getNodes(); >>>>> NodeFactory.getNodes(String domainURI); >>>>> NodeFactory.getNode(String domainURI, String nodeURI); >>>>> Node.getEndpointRegistry(); >>>>> Node.getDeploymentComposite(); >>>>> >>>> >>>> I think its fine to add dependencies, AFAICT the reasons that node-api >>>> was kept with minimum dependencies are historical and no longer apply >>>> with the current code, so unless someone can think of reasons why we >>>> need to do this then i think its fine for it to get more dependencies. >>>> I doesn't actually even look like there's even a need to have the two >>>> separate node-api and node-impl modules anymore either. >>>> >>>> ...ant >>>> >>> >>> No one has disagreed with this so I'm going to create a new module >>> named "node" that merges node-api and node-impl where we can start >>> looking at the changes here and from the other Node API thread we had >>> earlier. This will also mean we can leave the current node-api/impl >>> alone for now so there's no impact on people already using that. >>> >>> ...ant >> >
