Changing getInstance() synchronization way. Adding instance data holder class for cloudcontrollerclient.
Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/d9827dbb Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/d9827dbb Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/d9827dbb Branch: refs/heads/master Commit: d9827dbb26cee94ae1dc529f3ba678aac78072ce Parents: e928a42 Author: Udara Liyanage <[email protected]> Authored: Fri Dec 20 16:36:23 2013 -0500 Committer: Udara Liyanage <[email protected]> Committed: Fri Dec 20 16:36:23 2013 -0500 ---------------------------------------------------------------------- .../cloud/controller/CloudControllerClient.java | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/d9827dbb/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/client/cloud/controller/CloudControllerClient.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/client/cloud/controller/CloudControllerClient.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/client/cloud/controller/CloudControllerClient.java index 7208e87..14903d9 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/client/cloud/controller/CloudControllerClient.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/client/cloud/controller/CloudControllerClient.java @@ -28,6 +28,7 @@ import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy; import org.apache.stratos.autoscaler.exception.PartitionValidationException; import org.apache.stratos.autoscaler.exception.SpawningException; import org.apache.stratos.autoscaler.exception.TerminationException; +import org.apache.stratos.autoscaler.policy.PolicyManager; import org.apache.stratos.autoscaler.util.ConfUtil; import org.apache.stratos.cloud.controller.deployment.partition.Partition; import org.apache.stratos.cloud.controller.pojo.MemberContext; @@ -43,20 +44,13 @@ public class CloudControllerClient { private static final Log log = LogFactory.getLog(CloudControllerClient.class); private static CloudControllerServiceStub stub; - private static CloudControllerClient instance; + + private static class InstanceHolder { + private static final CloudControllerClient INSTANCE = new CloudControllerClient(); + } public static CloudControllerClient getInstance() { - - if (instance == null) { - synchronized (CloudControllerClient.class) { - - if(instance == null) { - instance = new CloudControllerClient(); - } - } - } - - return instance; + return InstanceHolder.INSTANCE; } private CloudControllerClient(){
