In Tuscany C++ the language implementation (C++, Python, etc) defines the location of the .componentType file. For C++ we use the header=".." and path=" .." attributes of implementation.cpp:
in fred.composite: <implementation.cpp library="Calculator" header="CalculatorImpl.h" path="abc/xyz"/> The implementation library is abc/xyz/Calcualtor.dll (or abc/xyz/libCalculator.so for linux). The compnentType file is named from the implentation interface (header) so in the above will be located at abc/xyz/CalculatorImpl.componentType. The paths are relative to the composite root (location of the .composite file). Cheers, On 20/06/07, Mike Edwards <[EMAIL PROTECTED]> 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 > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
-- Pete
