[ 
https://issues.apache.org/jira/browse/OWB-1119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15150841#comment-15150841
 ] 

Shahim Essaid commented on OWB-1119:
------------------------------------

[~romain.manni-bucau] Hi, sure. I'm working on an API for more flexible use of 
CDI outside of Java EE. It plugs in a CDIProvider, wraps and manages 
WebBeanContexts per thread, allows for plugging in contexts in the container 
through SomeContext, SomeContextStrategy, SomeContextManager, etc. to be able 
to discover how to find a context when needed (per scope), how to instantiate 
it, manage it, etc. and how to keep all this properly associated with threads. 
I'm doing this work here https://github.com/ShahimEssaid/cdi-container  but the 
context related implementations are not there yet.

Basically, I want to be able to override all context related logic. I am able 
to override ContextsService, ContainerLifecyle, etc but I also wanted to 
override ConversationImpl which is instantiated in ConverstationContext, which 
is instantiated in ConversationManager, which is a singleton in 
WebBeansContext, so I thought that the best option is to be able to specify my 
custom ConversationManager so that I can extend the others as needed to 
implement my APIs.

I'll be happy to provide more details and code in few days if it helps. I think 
for now I'll do a simple patch to test my design ideas but I'm sure you can do 
a better implementation especially if there are other pending issues related to 
the implementation of Conversation.

> Implement ConversationManagerService to plugin a custom manager
> ---------------------------------------------------------------
>
>                 Key: OWB-1119
>                 URL: https://issues.apache.org/jira/browse/OWB-1119
>             Project: OpenWebBeans
>          Issue Type: Improvement
>          Components: Context and Scopes
>    Affects Versions: 1.6.2
>            Reporter: Shahim Essaid
>
> I'm working on a framework for using OpenWebBeans and it would be very 
> helpful to be able to plugin my custom ConversationManager.  Currently the 
> manager is simply  instantiated in WebBeansContext like this: 
>         conversationManager = new ConversationManager(this);
> Please implement the same logic for loading the ConversationManager as a 
> service. I also didn't find an API way for overriding the instantiated 
> ConversationManager with a new one after the WebBeansContext is instantiated. 
> The initial services constructor parameter doesn't help with this either. I'm 
> still new to the OpenWebBeans implementation and I don't think I know enough 
> to be able to submit a patch to implement this.
> Did I miss how I can plugin my own manager with the current implementation?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to