On Mon, Dec 8, 2008 at 9:11 PM, Simon Nash <[EMAIL PROTECTED]> wrote:

> Raymond Feng wrote:
>
>> I meant Extension. Some projects such as Axis2 and Woodstox use this
>> suffix for extended API/SPI.
>>  Thanks,
>> Raymond
>>
>> *From:* Simon Laws <mailto:[EMAIL PROTECTED]>
>> *Sent:* Monday, December 08, 2008 8:44 AM
>> *To:* [email protected] <mailto:[email protected]>
>> *Subject:* Re: [1.4] ComponentContext changes
>>
>>
>>
>> On Mon, Dec 8, 2008 at 4:38 PM, Raymond Feng <[EMAIL PROTECTED]<mailto:
>> [EMAIL PROTECTED]>> wrote:
>>
>>    Hi,
>>        I'm looking into this area in the 2.x stream. What I have done is
>> to
>>    define a ComponentContextExt interface which extends from the
>>    ComponentContext interface and provides Tuscany specific SPIs. I
>>    also plan to consolidate RuntimeComponentContext and
>>    ComponentContextExt into one interface.
>>        In 1.4, the case is slightly different because we are trying to
>>    "enhance" the API. What module do you plan to add such an API? I
>>    think "ComponentContextExt" is still a good name for the extended API.
>>        Thanks,
>>    Raymond
>>
>>    *From:* Simon Laws <mailto:[EMAIL PROTECTED]>
>>    *Sent:* Monday, December 08, 2008 8:26 AM
>>    *To:* tuscany-dev <mailto:[email protected]>
>>    *Subject:* [1.4] ComponentContext changes
>>
>>    A while back I checked the patch for TUSCANY-2281 in and part of
>>    this change was the extension of the ComponentContext API. This
>>    would seem to be incompatible with the spec license so I would like
>>    to propose a further change;
>>
>>    1/ Create a TuscanyComponentContext interface which extends
>>    ComponentContext and holds the new APIs for retrieving reference
>>    collections.
>>    2/ Have the RuntimeComponentContext extend the
>>    TuscanyCompoentContext interface
>>    3/ When you need to use the new APIs you have to cast to the
>>    TuscanyComponentContext
>>
>>    Collection<Crawler> crawlers =
>>    ((TuscanyComponentContext)componentContext).getServices(Crawler.class,
>>    "crawlers");
>>
>>    As an optimization we could look at having the injectors inject
>>    TuscanyComponentContext if this is specified to remove the need to
>>    do the cast.
>>
>>    Thoughts?
>>
>>    Regards
>>
>>    Simon
>>
>>
>> By Ext do you mean Extension/External? ComponentContextExtentsion sounds
>> ok to me. I think it could happily live in the sca api package as long as it
>> is clear that it isn't part of the specified api. Maybe the addition of the
>> word Tuscany makes that clearer? I should point out that the particular
>> problem that 2281 fixes has been corrected in the OASIS specs so this change
>> won't be needed in the OASIS SCA APIs that are added to trunk.
>>
>>  Whatever name we choose, I don't think this interface should be part of
> the sca-api module or the org.osoa.sca package.  We should add another
> module and package for Tuscany API extensions.
>
>  Simon
>
>  Simon
>>
>>
>
>
Hi Simon

I agree it shouldn't be part of the org.osoa.sca package. But do we need to
add a new module just to hold these extensions?

Simon

Reply via email to