[
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)