Hi folks!

I've now drafted a first version of the API

https://github.com/struberg/incubator-deltaspike/blob/containerctrl/deltaspike/containerctrl/api/src/main/java/org/apache/deltaspike/containerctrl/api/ContainerControl.java

wdyt?

I think it's now clear that we only need this for built-in scopes, but it's 
really nice to provide that way.
Pete, I don't get the argument with CDI<T> because it doesn't offer anything 
close to the functionality of the ContainerControl.

LieGrue,
strub



----- Original Message -----
> From: Pete Muir <[email protected]>
> To: [email protected]; Mark Struberg <[email protected]>
> Cc: 
> Sent: Wednesday, February 15, 2012 9:31 PM
> Subject: Re: [DISCUSS] bootstrap api
> 
> Aha, so this is "mixing" bootstrap and context lifecycle management? 
> If so, I would prefer we keep these as two separate APIs. I can make a 
> proposal 
> for a context lifecycle management api based on what we have in Weld.
> 
> On 15 Feb 2012, at 17:17, Mark Struberg wrote:
> 
>>  Hi Pete!
>> 
>>  fluent api is fine for me.
>> 
>>  The reason why the context control is so fine granular is that you 
> don't have any well defined extension points in an SE app. Thus the 
> application must perform those steps itself. 
>> 
>> 
>>  Imagine a Swing App.
>>  A Request could be a user interaction. 
>> 
>>  A Conversation could start when a multi-page dialogue gets opened and ends 
> when it will finally be stored.
>>  etc.
>>  Of course for custom scopes this needs to be refined or the Extension 
> providing this scope must allow us to control this.
>> 
>>  LieGrue,
>>  strub
>> 
>> 
>> 
>>  ----- Original Message -----
>>>  From: Pete Muir <[email protected]>
>>>  To: [email protected]; Mark Struberg 
> <[email protected]>
>>>  Cc: 
>>>  Sent: Wednesday, February 15, 2012 4:59 PM
>>>  Subject: Re: [DISCUSS] bootstrap api
>>> 
>>>  My first thoughts:
>>> 
>>>  * the API should be fluent - always return an instance of the bootstrap 
> API 
>>>  class
>>>  * I would prefer to avoid the use of the word container, on the whole 
> the spec 
>>>  avoids that term as it's overloaded
>>>  * I'm unsure of why you want to start the contexts with such 
> granularity, 
>>>  and want to understand the use cases better. I'm not really sure 
> why you 
>>>  want to control this outside the main start/stop methods...
>>>  * I would prefer start/stop to boot/shutdown - again, slightly less 
> meaning 
>>>  attached to the terms which might be confusing
>>>  * Make sure that this class has the same methods as the CDI class from 
> CDI 1.1, 
>>>  so that we don't make people change their API too much
>>> 
>>>  On 10 Feb 2012, at 17:35, Mark Struberg wrote:
>>> 
>>>>  Hi!
>>>> 
>>>>  Thats perfectly fine. Keep the ideas rolling ;) 
>>>> 
>>>>  The original API was intended for doing a quick cdi boot for unit 
> testing, 
>>>  thus it might miss some features.
>>>> 
>>>>  LieGrue,
>>>>  strub
>>>> 
>>>> 
>>>> 
>>>>  ----- Original Message -----
>>>>>  From: Pete Muir <[email protected]>
>>>>>  To: [email protected]; Mark Struberg 
>>>  <[email protected]>
>>>>>  Cc: 
>>>>>  Sent: Friday, February 10, 2012 12:11 PM
>>>>>  Subject: Re: [DISCUSS] bootstrap api
>>>>> 
>>>>>  +1 to the idea but I would want to discuss the API in quite a 
> lot of 
>>>  detail.
>>>>> 
>>>>>  On 9 Feb 2012, at 10:13, Mark Struberg wrote:
>>>>> 
>>>>>>  Hi! 
>>>>>> 
>>>>>> 
>>>>>>  I developed an API to bootstrap and control CDI containers 
> from 
>>>  within a SE 
>>>>>  application [1].
>>>>>>  This was originally developed to make OpenWebBeans SE 
> applications 
>>>  easily 
>>>>>  testable, but it also can be used for SE applications in 
> general!
>>>>>> 
>>>>>>  There is already an implementation for OpenWebBeans [2] and 
> it 
>>>  would be 
>>>>>  really easy to also provide the same for various Weld versions.
>>>>>> 
>>>>>> 
>>>>>>  wdyt? Could be nice to import this as 
>>>>>> 
>>>>>> 
>>>>>>  core/bootstrap/api
>>>>>>  core/bootstrap/owb
>>>>>>  and add a new
>>>>>>  core/bootstrap/weld
>>>>>> 
>>>>>> 
>>>>>>  LieGrue,
>>>>>>  strub
>>>>>> 
>>>>>> 
>>>>>>  [1] 
>>>>> 
>>> 
> https://svn.apache.org/repos/asf/openwebbeans/trunk/webbeans-test/cditest/src/main/java/org/apache/webbeans/cditest/
>>>>>>  [2] 
>>>>> 
>>> 
> https://svn.apache.org/repos/asf/openwebbeans/trunk/webbeans-test/cditest-owb/
>>>>>> 
>>>>> 
>>> 
> 

Reply via email to