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

Reply via email to