Simon Laws wrote:
[snip]
To determine which contributions are required to support a composite a few
things are required.
- which contribution holds the composite
- which contributions the resulting contribution depends on
and so on.
To do this based on the information from the read and resolved contributions
the contributions have to be read and resolved in reverse order given the
current contribution processor API.
Yes, this is a problem in the current contribution processing code. I'd
like to improve it to decouple:
- knowing the presence of a contribution in the domain
- listing the artifacts in it
- reading the artifacts
- resolving dependencies on other artifacts
- validating a contribution knowing its dependencies
- building a resolved in-memory model for its artifacts
At the moment the domain interface doesn't directly relate the request to
start a composite with the contribution in which to find that composite (its
worked out as the contributions have been processed by that stage). We could
make it so. Is that what you were thinking?
If so are you also including changes to the domain service in your mental
model so that contributions can be read in some arbitrary order and then
resolved once they have all been read?
Yes, the decoupling described above.
From there I can walk the tree and present the contributions that are
required by a deployed composite to the node in the correct order. Not
well
tested yet though.
there will be no need to figure out the order (as it may not be possible
to figure the order anyway) if the resolution is deferred to after the
contributions are installed.
What does installed mean here? Do you mean what we have talked about above,
i.e. the selection of a composite to run on a node and the identification of
all of the contributions that are required to support it?
Sorry I should have been clearer: I meant "added to the domain", as
opposed to "loaded into a node".
An administrator needs a contribution validation tool to validate
contributions or the whole domain after adding/removing/changing a set
of contributions. The tool should also run automatically on the
contribution graph required to run a composite, before loading the graph
into a node and starting the composite.
Also when you say " no need to figure out the order" is this because you
have contribution service changes in mind so that read and resolve for a
single contribution are not tightly coupled.
Yes.
--
Jean-Sebastien
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]