tuscany-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jean-Sebastien Delfino <jsdelf...@apache.org>
Subject Re: Contribution services and SCDL4J
Date Wed, 04 Apr 2007 21:57:40 GMT
Luciano Resende wrote:
> Hi Sebastien
>   Your understanding is very right, with the new artifactProcessor
> interfaces, we should be able to separate the load phases in multiple 
> phases
> as you described.
>   As for your specific questions, let me try to clarify :
>> - The assembly module deals with 3 types of files, .componentType,
> .constrainingType, .composite.
>> Does that mean I have to implement 3 ArtifactProcessors?
> Not necessarily, you can associate multiple file types with same 
> processor,
> as an example, I had previously associated .scdl and .composite all 
> with the
> SCDLProcessor. It all depends on the algorithms used to process these 
> files,
> if they are the same or very simmilar, you might consider building one
> artifact processor, otherwise, you should create multiple processors
>> If the answer is yes, how do I associate a particular ArtifactProcessor
> with a file type?
> Basically, the PackageProcessors will scan a file system or jar archive
> contribution, and for each artifact, it will use the contentType 
> describer
> to identify what type of file it is, and call the artifactProcessor
> registered for the artifact type. At the moment, an artifactProcessor can
> only register for one type, but you make the contentType describer 
> recognize
> multiple files extensions as one unique type as the example I described
> above (.scdl and .composite).
> Talking about this, one thing that I wasn't planning to do for now, is
> plugability to extend the contentType describer, so new types could be
> recognized... but I'm starting to think we might need this ? Thoughts ?
> BTW, I should have the artifactResolver registry and other things 
> necessary
> to exercise the processors you are implementing by EOD today (sometime
> tonight) ...

I think that we need to make this extensible, to support different 
content types without having to go change the code in a central 
ContentDescriber. I'm also not sure about how an artifact processor can 
be associated with a content type.

So, instead of each extension having to:
- write a ContentDescriber that returns a ContentType for say .composite 
- register the ContentDescriber in some registry
- having to know about an ArtifactProcessorRegistry in my 
ArtifactProcessor implementation
- register myself in that registry with that content type for .composite...

Could we start simple and I would just implement a String 
getContentType() method (to be added to ArtifactProcessor), return 
".composite" from that method, and that would be your indication that 
you need to invoke me on .composite files?


To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org

View raw message