Hi, Below is the list of deployers using start/endTenantFlow.
platform/branches/4.0.0/components$ fn *Deployer*.java | xargs grep -l "TenantFlow" ./data-services/org.wso2.carbon.dataservices.core/4.0.2/src/main/java/org/wso2/carbon/dataservices/core/DBDeployer.java ./data-services/org.wso2.carbon.dataservices.core/4.0.0/src/main/java/org/wso2/carbon/dataservices/core/DBDeployer.java ./data-services/org.wso2.carbon.dataservices.core/4.0.1/src/main/java/org/wso2/carbon/dataservices/core/DBDeployer.java ./jaggery/0.9.0.ALPHA2-wso2v1/jaggery-core/org.jaggeryjs.jaggery.app.mgt/src/main/java/org/jaggeryjs/jaggery/app/mgt/TomcatJaggeryWebappsDeployer.java ./jaggery/0.9.0.ALPHA2-wso2v2/jaggery-core/org.jaggeryjs.jaggery.app.mgt/src/main/java/org/jaggeryjs/jaggery/app/mgt/TomcatJaggeryWebappsDeployer.java ./jaggery/0.9.0-ALPHA1/jaggery-core/org.jaggeryjs.jaggery.app.mgt/0.9.0-ALPHA1/src/main/java/org/jaggeryjs/jaggery/app/mgt/TomcatJaggeryWebappsDeployer.java ./mashup/org.wso2.carbon.mashup.jsservices/4.0.2/src/main/java/org/wso2/carbon/mashup/jsservices/deployer/JSDeployer.java ./mashup/org.wso2.carbon.mashup.jsservices/4.0.0/src/main/java/org/wso2/carbon/mashup/jsservices/deployer/JSDeployer.java ./mashup/org.wso2.carbon.mashup.jsservices/4.0.1/src/main/java/org/wso2/carbon/mashup/jsservices/deployer/JSDeployer.java ./webapp-mgt/org.wso2.carbon.webapp.mgt/4.0.0/src/main/java/org/wso2/carbon/webapp/mgt/TomcatGenericWebappsDeployer.java ./webapp-mgt/org.wso2.carbon.webapp.mgt/4.0.1/src/main/java/org/wso2/carbon/webapp/mgt/TomcatGenericWebappsDeployer.java ./stratos/sample-installer/org.wso2.carbon.sample.installer/2.0.0/src/main/java/org/wso2/carbon/sample/installer/SampleDeployer.java ./stratos/sample-installer/org.wso2.carbon.sample.installer/2.0.2/src/main/java/org/wso2/carbon/sample/installer/SampleDeployer.java thanks, On Sat, Sep 22, 2012 at 8:17 AM, Anjana Fernando <[email protected]> wrote: > I see, the utility methods can be called from an arbitrary nested level > though, so parsing in the CarbonContext is not always possible .. for > example .. Deployer -> Initializing a Data Service -> Init. A Data Source > -> Lookup a Registry Resource -> Lookup Tenant Registry. It will be ugly in > that case to always parse a CarbonContext throughout all the > classes/methods being used. Anyways for data services use case it seems > I'll always get the requirement to get the tenant id etc.. in the > deployment, and not in any other places, so it wont be a problem. And yeah, > if I need it in any other message processing path in the future, I can use > the other approach. > > Cheers, > Anjana. > > > On Sat, Sep 22, 2012 at 12:24 AM, Afkham Azeez <[email protected]> wrote: > >> *PrivilegedCarbonContext.getThreadLocalCarbonContext() *performs better. >> This is because, PrivilegedCarbonContext.getContext() will first try to get >> the data from Axis2 MessageContext, failing which it will try >> ConfigurationContext & AxisConfiguration, and only finally try to get the >> data from the ThreadLocal variable. So, in cases like the deployers where >> you can be sure that the deployment scheduler thread would set the >> ThreadLocal data, you should directly call the getThreadLocalCarbonContext >> method. >> >> Generally, you should have an idea of what thread you are executing >> under. So in the case of util methods, it is better to resolve the >> CarbonContext outside that util method. In order to be able to properly >> retrieve a CC, anyway the relevant data should be available somewhere >> (ThreadLocal, AxisConfig, ConfigContext, MessageContext etc) so generally. >> If calling CarbonContext.getCurrentContext returns a CC with tenant ID = -1 >> or tenant domain = null, that means, some up stream code had not populated >> the data needed for the CC, so you have to first look into fixing that >> issue. >> >> Azeez >> >> On Fri, Sep 21, 2012 at 10:43 PM, Anjana Fernando <[email protected]>wrote: >> >>> *PrivilegedCarbonContext.getThreadLocalCarbonContext()* >> >> >> >> >> -- >> *Afkham Azeez* >> Director of Architecture; WSO2, Inc.; http://wso2.com >> Member; Apache Software Foundation; http://www.apache.org/ >> * <http://www.apache.org/>** >> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >> twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >> * >> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >> * >> * >> *Lean . Enterprise . Middleware* >> >> > > > -- > *Anjana Fernando* > Associate Technical Lead > WSO2 Inc. | http://wso2.com > lean . enterprise . middleware > -- Supun Malinga, Software Engineer, WSO2 Inc. http://wso2.com http://wso2.org email - [email protected] <[email protected]> mobile - 071 56 91 321
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
