Hi Lahiru, You can get the carbon tenant repository by using CarbonUtils.getCarbonTenantsDirPath().
With in the the tenant repository you can get the array of folder names ( tenant ID ). There after you can iterate the tenant id array and access the event-sinks folder for each tenant. Regards, Firzhan On Sat, Nov 15, 2014 at 1:32 PM, Lahiru Chandima <[email protected]> wrote: > Thanks Frizhan for the nice solution :) > > Do you know a way to programmatically get deployment directory path of a > tenant? > > Thanks > > On Sat, Nov 15, 2014 at 1:12 PM, Firzhan Naqash <[email protected]> wrote: > >> Hi Lahiru, >> >> On that case, you can touch(update) the artifacts of tenanat's once the >> bundle get activated :) . This is not an elegant solution. >> >> There might be other better proper ways to achieve this. >> >> Regards, >> Firzhan >> >> On Sat, Nov 15, 2014 at 12:35 PM, Lahiru Chandima <[email protected]> >> wrote: >> >>> Hi Frizhan, >>> >>> Thanks for the information. >>> >>> Is there any way I can automatically re-deploy artifacts for tenants on >>> startup? If I log in using a tenant user to ESB, I can see the proxy >>> service artifacts that were added earlier, showing that they were somehow >>> re-deployed. So I think there should be a way. >>> >>> Thanks >>> >>> On Sat, Nov 15, 2014 at 10:31 AM, Firzhan Naqash <[email protected]> >>> wrote: >>> >>>> Hi Lahiru, >>>> >>>> Deployer's deploy() method will get trigger only when artifacts are >>>> being deployed. >>>> >>>> For super-tenant during the server start-up axis2 re-deploys the >>>> artifacts, thus triggering deploy(). But for tenants nothing happens like >>>> that unless you do it manually. >>>> >>>> >>>> >>>> Regards, >>>> Firzhan >>>> >>>> On Sat, Nov 15, 2014 at 7:33 AM, Lahiru Chandima <[email protected]> >>>> wrote: >>>> >>>>> Hi Lasantha, >>>>> >>>>> Thanks for the solution. >>>>> >>>>> logging in as a tenant user solved the problem. Now new artifacts that >>>>> I add after tenant is loaded get deployed. >>>>> >>>>> But, the artifacts that were already there in my tenant artifact >>>>> directory neither gets deployed at server startup nor when a tenant user >>>>> is >>>>> logged in. But these artifacts get deployed if I do some change to them >>>>> after a tenant user logs in. >>>>> >>>>> What may be the reason for this? >>>>> >>>>> Thanks >>>>> >>>>> >>>>> On Sat, Nov 15, 2014 at 12:08 AM, Lasantha Fernando <[email protected] >>>>> > wrote: >>>>> >>>>>> Hi Lahiru, >>>>>> >>>>>> Can you verify whether your tenant is loaded in the server? (If you >>>>>> simply login as a tenant user, the tenant should be loaded) >>>>>> >>>>>> If your tenant is not loaded, the deployment of artifacts for that >>>>>> particular tenant will not happen. AFAIK, this is the expected behaviour >>>>>> for a carbon server since we load tenants lazily. >>>>>> >>>>>> Thanks, >>>>>> Lasantha >>>>>> >>>>>> On 14 November 2014 22:58, Lahiru Chandima <[email protected]> wrote: >>>>>> >>>>>>> Hi Firzhan, >>>>>>> >>>>>>> Thanks for the reply. >>>>>>> >>>>>>> Tried your method and its working for files deployed in >>>>>>> repository/deployment/server/event-sinks. But still no luck with >>>>>>> deploying >>>>>>> for a tenant (in repository/tenants/1/event-sinks) >>>>>>> >>>>>>> Any idea why? >>>>>>> >>>>>>> Thanks >>>>>>> >>>>>>> On Fri, Nov 14, 2014 at 8:10 PM, Firzhan Naqash <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Lahiru, >>>>>>>> >>>>>>>> Rathern than defining them in axis2.xml, you can define them in >>>>>>>> compnent.xml and pom.xml file which worked for me [1] >>>>>>>> >>>>>>>> [1] >>>>>>>> http://architects.dzone.com/articles/writing-axis2-custom-deployers >>>>>>>> >>>>>>>> Regards, >>>>>>>> Firzhan >>>>>>>> >>>>>>>> On Fri, Nov 14, 2014 at 7:14 PM, Lahiru Chandima <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi All, >>>>>>>>> >>>>>>>>> I have created an Axis2 deployer to deploy an xml artifact. I have >>>>>>>>> added following to repository/conf/axis2/axis2.xml >>>>>>>>> >>>>>>>>> <deployer extension=".xml" >>>>>>>>> class="org.wso2.carbon.event.sink.EventSinkDeployer" >>>>>>>>> directory="event-sinks"/> >>>>>>>>> >>>>>>>>> And I have created a directory named event-sinks for my new >>>>>>>>> artifact type in repository/deployment/server >>>>>>>>> >>>>>>>>> When I add a new xml artifact to the event-sinks directory, >>>>>>>>> deploy(DeploymentFileData deploymentFileData) in my deployer gets >>>>>>>>> called >>>>>>>>> without a problem. >>>>>>>>> >>>>>>>>> But, if I deploy an artifact for a tenant (eg: in directory >>>>>>>>> repository/tenants/1/event-sinks for tenant 1), deploy() method of my >>>>>>>>> deployer doesn't get called. >>>>>>>>> >>>>>>>>> What have I done wrong? Have I created event-sinks directory in >>>>>>>>> the wrong location for tenant 1? >>>>>>>>> >>>>>>>>> Thanks >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Lahiru Chandima >>>>>>>>> *Senior Software Engineer* >>>>>>>>> Mobile : +94 (0) 772 253283 >>>>>>>>> [email protected] >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Dev mailing list >>>>>>>>> [email protected] >>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Lahiru Chandima >>>>>>> *Senior Software Engineer* >>>>>>> Mobile : +94 (0) 772 253283 >>>>>>> [email protected] >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Dev mailing list >>>>>>> [email protected] >>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Lasantha Fernando* >>>>>> Software Engineer - Data Technologies Team >>>>>> WSO2 Inc. http://wso2.com >>>>>> >>>>>> email: [email protected] >>>>>> mobile: (+94) 71 5247551 >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Lahiru Chandima >>>>> *Senior Software Engineer* >>>>> Mobile : +94 (0) 772 253283 >>>>> [email protected] >>>>> >>>> >>>> >>> >>> >>> -- >>> Lahiru Chandima >>> *Senior Software Engineer* >>> Mobile : +94 (0) 772 253283 >>> [email protected] >>> >> >> > > > -- > Lahiru Chandima > *Senior Software Engineer* > Mobile : +94 (0) 772 253283 > [email protected] >
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
