Luciano Resende wrote:
> I have committed some new contribution services interfaces under
> revision #
> 525071 that would better align the contribution service module with the
> SCDL4J proposals. Note that some of these interfaces, that would be
> used for
> artifact resolving, will need to be implemented by the Assembly model
> classes.
> Please take a look at these interfaces and let me know what you guys
> think,
> I plan to polish them little bit more tomorrow, and then start
> integrating
> it with the other modules and the embedded runtime.
>
> Thoughts ?
>
Thanks. I'll try to implement the ArtifactProcessors and ModelResolvers
for SCA XML assembly files in the modules/assembly module.
I am assuming that the ArtifactProcessor.read() method will contain the
logic currently in the loaders, then I'll move the logic from
CompositeUtil to the ArtifactProcessor.resolve() and
ArtifactProcessor.normalize() methods. I added a little earlier today
that normalize method to your ArtifactProcessor interface, to cover the
3rd of the 3 phases I was describing in [1].
[1] http://www.mail-archive.com/tuscany-dev@ws.apache.org/msg16229.html
Here's an outline of how I'm planning to implement the ArtifactProcessor
interface:
- read will read the model in memory, from a StAX XMLStreamReader
- resolve will resolve pointers to other models, calling back to the
Contribution to find the referenced artifacts
- normalize will apply policies at the various levels, propagage and
merge component/service/reference configuration declarations from the
bottom (componentType/constrainingType) to the top (composite/component)
of the hierarchy. I'll probably just do the strict minimum here for now
just to get going.
Does that makes sense?
Now some questions:
- The assembly module deals with 3 types of files, .componentType,
.constrainingType, .composite. Does that mean I have to implement 3
ArtifactProcessors?
- If the answer is yes, how do I associate a particular
ArtifactProcessor with a file type?
--
Jean-Sebastien
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org
|