"MyCloud" was intended to ease cloud-onboarding: somebody would run the
orchestration server and others could just install the agent and register
the agent with the 3rd party management server. I think the idea still has
potential, so I would leave it in.

On 1/14/13 3:02 PM, "Rohit Yadav" <rohit.ya...@citrix.com> wrote:

>
>On 14-Jan-2013, at 1:14 PM, Frank Zhang <frank.zh...@citrix.com> wrote:
>
>>> 
>>>> From the url mapping it seems to be used for mycloud which is obsolete
>>>> I think
>>> 
>>> Should we remove it and get rid of the servlet class then?
>> 
>> Chiradeep and Edison are right person for this question
>
>Comment on this please, Chiradeep or Edison?
>
>> 
>>> 
>>>> _pluginsMap is non-static but s_locators is. ComponentLocator.
>>>> getLocator which essentially calls ComponentLocator
>>>> .getLocatorInternal will synchronize on s_locators, that means
>>>> ComponentLocators having the same name should not be initialized
>>>>twice.
>>> So  pluggable services  twice initialized  should be caused by some
>>>other issue.
>>> 
>>> Looking at the code, we are getting a component by
>>> ConfigurationServer.Name and then by ManagementServer.Name, and from
>>> debugging earlier I'd found the issues with this code;
>>> 
>>>         ConfigurationServer c =
>>> (ConfigurationServer)ComponentLocator.getComponent(ConfigurationServ
>>> er.Name);
>>>         //ConfigurationServer c = new ConfigurationServerImpl();
>>>         try {
>>>             c.persistDefaultValues();
>>>             s_locator =
>>> ComponentLocator.getLocator(ManagementServer.Name);
>>>                 ManagementServer ms =
>>> (ManagementServer)ComponentLocator.getComponent(ManagementServ
>>> er.Name);
>> 
>> Then we always have two copies of each singleton. It didn't cause
>>problem before because most time we use
>> ComponentLocator.getComponent(ManagementServer.Name)
>> 
>>> 
>>>> I don't know where does our Spring IOC get initialized, but if
>>>> ComponentLocator is loaded by spring with a name other than
>>>> ManagementServer.Name, then there would be two copies of
>>>> ComponentLocator which load all plugins twice
>>> 
>>> For javelin ComponentLocator is no more and starting that we will use
>>>spring
>>> DI and for getting components without @Inject I've seen usage of a new
>>> ComponentContext.
>>> 
>>> Regards.
>

Reply via email to