On Wed, Jun 2, 2010 at 9:15 PM, Yang Lei <yl.yangle...@gmail.com> wrote:
>
> I would like to bring up a requirement on contribution processing, binding
> provider start,  implementation provider start.
>
> While trying to integrate Tuscany 2.x into a hosting environment, there are
> times I need to know "context" :
>
> Scenario 1, I need to create my own classLoader of a given contribution.
>
> When implementing the ModelResolver, the code can access
> org.apache.tuscany.sca.contribution.Contribution , however I can not pass a
> "context" that is associated with this contribution.  So I will either have
> to maintain singleton HashMap between the contribution ID to this "context",
> or I have to use threadLocal to pass information around. I do not like
> either approach.
>
> One way can solve the problem is to allow the object that I use to start the
> contribution(e.g. org.apache.tuscany.sca.node.Contribution)  to set some
> "context" , and the same "context" will be copied onto the runtime
> Contribution object. E.g. add method: java.util.Properties
> getContextProperties() in both Contribution classes.
>
> Scenario 2, for certain bindings I am developing, I also need to know some
> "context". This "context" is associated with the deployable composite that
> hosting the component. Again if I can not make this "context" available to
> the ServiceBindingProvider, I would have to maintain a singleton HashMap or
> using threadLocal, which I want to avoid .
>
> I do see that RuntimeEndpoint ,  available for the Service BindingProvider,
> has method :  CompositeContext getCompositeContext(). It seems if the same
> "context"  set on node.Contribution above can be available to the
> CompositeContext, then I have what I need. E.g. adding method
>  java.util.Properties getContributionContextProperties() in CompositeContext
> which return the contribution's java.util.Properties getContextProperties()
> .
>
> Of course, there may be other ways achieving it. I would like to start the
> discussion.
>
> Thanks. Yang.
>

Do you have more details on what type of information you need on the
context ? Is this something that you need to pass as context, or these
are "extended contribution attributes" ?

-- 
Luciano Resende
http://people.apache.org/~lresende
http://twitter.com/lresende1975
http://lresende.blogspot.com/

Reply via email to