Mike Edwards wrote:
Ant,
In general, I would agree that there should be a simple and obvious
relationship between implementation artifact and componentType file.
However, consider the case of languages like C or C++ where multiple
implementations are bundled into a DLL. The runtime file is the DLL,
but there must be multiple componentType files. So now, what is the
relationship between them....
In these more complex cases, the implementation type defines the
relationship.
Yours, Mike.
ant elder wrote:
On 6/18/07, Mike Edwards <[EMAIL PROTECTED]> wrote:
<snip>
How does that fit with the spec saying - ""A component type file has
the
> same name as the implementation file but has the extension
> ".componentType""
> ? I'm looking for a way to make the default case easy, it doesn't
have
to
> deal with every edge case.
<snip>
Unfortunately, this is no edge case. There is no reason to expect the
component name to be even close to the implementation name.
AFAICT, unless there's an attribute in the SCDL to explicitly point
to it
there has to be a way to find these things programatically, and for
humans
to understand whats going on in a contribution it must be reasonably
obvious
which .componentType side file is associated with which
implementation just
by eyeballing the files. Otherwise, what does this line in the spec
mean:
'A component type file has the same name as the implementation file
but has
the extension ".componentType"'
...ant
Nobody picked up my earlier post to this thread, I thought that my
concrete examples were interesting though :) so I'll repeat a concrete
example again here:
<implementation.java class="calculator.CalculatorImpl">
componentType file: calculator/CalculatorImpl.componentType
- The relationship is obvious to a human
- There is no SCDL attribute pointing to the componentType
- The relationship class name -> .componentType file location is
specific to the Java implementation type.
IMHO you need implementation specific code to derive the .componentType
file location from the attributes of the <implementation>.
--
Jean-Sebastien
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]