On 9/12/07, Simon Nash <[EMAIL PROTECTED]> wrote:
>
> Comments inline.
>
>    Simon
>
> Simon Laws wrote:
>
> > Thanks for the reply Sebastien
> >
> > A few more comments below...
> >
> > On 9/12/07, Jean-Sebastien Delfino <[EMAIL PROTECTED]> wrote:
> >
> >>Simon Laws wrote:
> >>
> >>>There are some reorganized domain/node classes under
> modules/distributed
> >>
> >>and
> >>
> >>>modules/distributed-impl dirs. Here the SCADomain is replaced by a
> >>
> >>Node.  A
> >>
> >>>node runs all or part of a domain. A Node has contributions added and
> >>>removed and has components started/stoppped etc. If available (a domain
> >>
> >>and
> >>
> >>>node name are provided and the domain is running) a Node  registers
> with
> >>
> >>a
> >>
> >>>DomainManager service and a ServiceDiscovery service. Here's what's in
> >>
> >>the
> >>
> >>>new code
> >>>
> >>>Node
> >>>- A node implementation (NodeImpl)
> >>>- A contributions manager for adding/removing contributions
> >>>- A component manager
> >>>- A management SCA application that provides access to these features
> >>>remotely
> >>>- a web page for looking at the node
> >>>
> >>>Domain
> >>>- A ServiceDiscovery service
> >>>- A domain manager service
> >>>- A sample domain application that pulls two together and includes
> >>>- A web page for looking at the domain and provides links to each nodes
> >>
> >>web
> >>
> >>>page.
> >>>
> >>>
> >>
> >>This looks pretty good to me! So far I've looked at the interfaces and
> >>the implementation, and will try the web pages next :)
> >>
> >
> >
> > I'd like to make a proposal to change ServiceDiscovery a bit, but I'll
> >
> >>do that in a separate email.
> >>
> >>
> >>>You can try this by running the calculator distributed sample. This
> runs
> >>
> >>and
> >>
> >>>exercises some distributed nodes as it always has but uses the new
> >>
> >>classes
> >>
> >>>now. If you run the nodes independently from the command line they stay
> >>>around long enough for you to point a browser at them. Try
> >>>htpp://localhost:8080/node/index.html  (or whatever port the node has
> >>
> >>come
> >>
> >>>up on) and see the components in a node.
> >>>
> >>>
> >>>There is a new sample (sample-domain-webapp). The intention here is to
> >>>provide a generic domain and a node so you can start the domain and
> node
> >>
> >>and
> >>
> >>>then add contributions. Not complete yet as the "add contribution"
> >>
> >>function
> >>
> >>>needs turning into a remote service but you can use the domain
> >>>implementation along with nodes from the distributed calculator sample
> >>
> >>which
> >>
> >>>have hard coded contributions.
> >>>
> >>>Here are some todos
> >>>
> >>>I've copied all of the interfaces I need to make this work into
> >>>modules/distributed so there is code/interfaces here that is also
> >>
> >>elsewhere,
> >>
> >>>for
> >>>example, the component manager classes. I would like to move the new
> >>
> >>code to
> >>
> >>>new modules
> >>>
> >>>modules/host-node - for the node related code?
> >>>modules/host-domain - for the domain related code?
> >>>
> >>
> >>How about this?
> >>modules/node
> >>modules/domain
> >>
> >>IMO host-* is for the integration with hosting environments like Tomcat,
> >>Jetty, an HTTP or RMI server.
> >>And host-embedded should probably not be called host-embedded :)
> >
> >
> >
> > Sounds OK to me - I'll go ahead and split them out.
> >
> >
> >>I have used the interfaces Node and Domain currently should this be
> >>SCANode
> >>
> >>>and SCADomain?
> >>>
> >>
> >>I'm OK with both, not sure what others prefer.
> >
> >
> >
> > I'm ambivalent but we have one positive request for SCANode and
> SCADomain so
> > I'll wait a little longer and probably change to that
> >
> I don't think we need "SCA" in front of these names.  After all,
> just about everything we are doing in Tuscany is to do with SCA,
> so if we go down this path we might see "SCA" name prefixes
> cropping up everywhere :-(
>
> Is there a reason why these two names would need "SCA" in front of
> them?  Do we have any other "Node" or "Domain" concept in Tuscany
> that could be be confused with these?
>
> >
> >>host-embedded can stay as it provides the runtime and embedded support
> but
> >>
> >>>there are numerous domain implementations that we can remove assuming
> we
> >>>get to the stage where we are comfortable with Node. Ant has already
> >>
> >>ported
> >>
> >>>the hot update web app to use the new domain (currently working through
> >>>an issue with uris)
> >>>
> >>>I'd like to start using the Node implementation in the samples. I'll
> >>
> >>have a
> >>
> >>>go at converting some and see how it goes.
> >>>
> >>
> >>Great!
> >>
> >>I'd suggest to move the API methods (expected to be used in application
> >>business logic) like getService(), getServiceReference() and cast() to a
> >>separate interface in a separate domain-api or node-api module.
> >
> >
> >
> > OK,  i'll take a look at that.
> >
> + 1 for this.  I think the new module should include the API for creating
> a domain as well.
>
>    Simon
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
> I don't think we have more than one node or domain concept. These words
are used elsewhere many times (outside of Tuscany) and it could be useful to
ensure that people understand that we are talking about the Tuscany concept
of Node and Domain rather than anyone else's. The code at the moment uses
Node and Domain. I raised the question as I felt there was scope for
confusion. I'm now thinking that the SCA prefix is too loose (and not
applicable in the Node code) so maybe TuscanyNode/TuscanyDomain would fit
the bill?

Simon

Reply via email to