Repository: stratos
Updated Branches:
  refs/heads/docker-grouping-merge ed5feced6 -> 2a4fec3a3


Moving deployment policy to policy package


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/2a4fec3a
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/2a4fec3a
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/2a4fec3a

Branch: refs/heads/docker-grouping-merge
Commit: 2a4fec3a3b616c9f5f4c5018f832ff027e6e69c5
Parents: ed5fece
Author: Lahiru Sandaruwan <[email protected]>
Authored: Tue Nov 4 18:28:15 2014 +0530
Committer: Lahiru Sandaruwan <[email protected]>
Committed: Tue Nov 4 18:28:15 2014 +0530

----------------------------------------------------------------------
 .../autoscaler/algorithm/OneAfterAnother.java   |   2 +-
 .../autoscaler/api/AutoScalerServiceImpl.java   |   2 +-
 .../cloud/controller/CloudControllerClient.java |   2 +-
 .../commands/DeploymentPolicyCommands.java      |   2 +-
 .../deployment/policy/DeploymentPolicy.java     | 179 -------------------
 .../interfaces/AutoScalerServiceInterface.java  |   2 +-
 .../internal/AutoscalerServerComponent.java     |   2 +-
 .../monitor/cluster/ClusterMonitorFactory.java  |   2 +-
 .../monitor/cluster/VMClusterMonitor.java       |   2 +-
 .../monitor/cluster/VMLbClusterMonitor.java     |   2 +-
 .../cluster/VMServiceClusterMonitor.java        |   2 +-
 .../autoscaler/partition/PartitionManager.java  |   2 +-
 .../autoscaler/policy/PolicyManager.java        |   2 +-
 .../policy/model/DeploymentPolicy.java          | 179 +++++++++++++++++++
 .../autoscaler/registry/RegistryManager.java    |   2 +-
 15 files changed, 192 insertions(+), 192 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
index 4c26939..e234713 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
@@ -37,7 +37,7 @@ import java.util.List;
  * This class is used for selecting a {@link Partition} one after another and 
checking availability of
  * partitions of a {@link NetworkPartitionContext}
  * One after another means it completes partitions in the order defined in
- * {@link org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy}, 
and go to next  if current one
+ * {@link org.apache.stratos.autoscaler.policy.model.DeploymentPolicy}, and go 
to next  if current one
  * reached the max limit
  */
 public class OneAfterAnother implements AutoscaleAlgorithm {

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
index a3f7903..90aac2d 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
@@ -28,7 +28,7 @@ import 
org.apache.stratos.autoscaler.applications.parser.DefaultApplicationParse
 import org.apache.stratos.autoscaler.applications.pojo.ApplicationContext;
 import org.apache.stratos.autoscaler.applications.topic.ApplicationBuilder;
 import 
org.apache.stratos.autoscaler.client.cloud.controller.CloudControllerClient;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.*;
 import org.apache.stratos.autoscaler.interfaces.AutoScalerServiceInterface;
 import org.apache.stratos.autoscaler.kubernetes.KubernetesManager;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/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 560a7a5..eb3a1d9 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
@@ -25,7 +25,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.Constants;
 import 
org.apache.stratos.autoscaler.applications.pojo.ApplicationClusterContext;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.*;
 import org.apache.stratos.autoscaler.kubernetes.KubernetesManager;
 import org.apache.stratos.autoscaler.util.ConfUtil;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/commands/DeploymentPolicyCommands.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/commands/DeploymentPolicyCommands.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/commands/DeploymentPolicyCommands.java
index 18fd027..9cd5d76 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/commands/DeploymentPolicyCommands.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/commands/DeploymentPolicyCommands.java
@@ -20,7 +20,7 @@
 package org.apache.stratos.autoscaler.commands;
 
 import org.apache.commons.lang.StringUtils;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.policy.PolicyManager;
 import org.eclipse.osgi.framework.console.CommandInterpreter;
 import org.eclipse.osgi.framework.console.CommandProvider;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/deployment/policy/DeploymentPolicy.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/deployment/policy/DeploymentPolicy.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/deployment/policy/DeploymentPolicy.java
deleted file mode 100644
index 6c5e0dc..0000000
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/deployment/policy/DeploymentPolicy.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one 
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
- * KIND, either express or implied.  See the License for the 
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.stratos.autoscaler.deployment.policy;
-
-import org.apache.stratos.autoscaler.partition.PartitionGroup;
-import org.apache.stratos.cloud.controller.stub.deployment.partition.Partition;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.Arrays;
-
-/**
- * The model class for Deployment-Policy definition.
- */
-public class DeploymentPolicy implements Serializable{
-
-    private static final long serialVersionUID = 5675507196284400099L;
-    private String id;
-    private String description;
-    private boolean isPublic;
-    private PartitionGroup[] partitionGroups;
-    private int tenantId;
-
-    /**
-     * Gets the value of the id property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getId() {
-        return id;
-    }
-
-    /**
-     * Sets the value of the id property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setId(String value) {
-        this.id = value;
-    }
-    
-    /**
-     * Gets the value of the description property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getDescription() {
-        return description;
-    }
-    
-    /**
-     * Sets the value of the description property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setDescription(String value) {
-        this.description = value;
-    }
-    
-    /**
-     * Gets the value of the isPublic property.
-     * 
-     * @return
-     *     possible object is boolean
-     *     
-     */
-       public boolean getIsPublic() {
-               return isPublic;
-       }
-
-        /**
-     * Sets the value of the isPublic property.
-     * 
-     * @param isPublic
-     *     allowed object is boolean
-     *     
-     */
-       public void setIsPublic(boolean isPublic) {
-               this.isPublic = isPublic;
-       }
-       
-       /**
-     * Gets the value of the tenantId property.
-     * 
-     *          
-     */
-       public int getTenantId() {
-               return tenantId;
-       }
-
-        /**
-     * Sets the value of the tenantId property.
-     * 
-     *     
-     */
-       public void setTenantId(int tenantId) {
-               this.tenantId = tenantId;
-       }
-    
-    public void setPartitionGroups(PartitionGroup[] partitionGroups) {
-        if(partitionGroups == null) {
-            this.partitionGroups = new PartitionGroup[0];
-        } else {
-            this.partitionGroups = Arrays.copyOf(partitionGroups, 
partitionGroups.length);
-        }
-    }
-    
-    public Partition[] getAllPartitions() {
-       ArrayList<Partition> partitionsList = new ArrayList<Partition>();
-       for (PartitionGroup partitionGroup : this.getPartitionGroups()) {
-            Partition[] partitions = partitionGroup.getPartitions();
-            if(partitions != null) {
-               partitionsList.addAll(Arrays.asList(partitions));
-            }
-        }
-        return partitionsList.toArray(new Partition[partitionsList.size()]);
-    }
-        
-    public Partition getPartitionById(String id){
-       for(Partition p : this.getAllPartitions()){
-               if(p.getId().equalsIgnoreCase(id))
-                       return p;
-       }
-        return null;
-    }
-    
-    /**
-     * Gets the value of the partition-groups.
-     */
-    public PartitionGroup[] getPartitionGroups() {
-        
-        return this.partitionGroups;
-    }
-    
-    public PartitionGroup getPartitionGroup(String partitionGrpId){
-       for(PartitionGroup parGrp : this.getPartitionGroups()){
-               if(parGrp.getId().equals(partitionGrpId))
-                       return parGrp;
-               
-       }
-       return null;
-    }
-    
-    public String toString() {
-        return "Deployment Policy [id]" + this.id + " Description " +  
this.description 
-                       + " isPublic " +  this.isPublic 
-                       +" [partitions] " + 
Arrays.toString(this.getAllPartitions());
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
index 0b2bf43..204cc79 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/interfaces/AutoScalerServiceInterface.java
@@ -22,7 +22,7 @@
 package org.apache.stratos.autoscaler.interfaces;
 
 import org.apache.stratos.autoscaler.applications.pojo.ApplicationContext;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.*;
 import org.apache.stratos.autoscaler.exception.ApplicationDefinitionException;
 import org.apache.stratos.autoscaler.exception.InvalidPartitionException;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServerComponent.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServerComponent.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServerComponent.java
index 3da60ab..c8934e7 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServerComponent.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/internal/AutoscalerServerComponent.java
@@ -22,7 +22,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.NetworkPartitionLbHolder;
 import 
org.apache.stratos.autoscaler.applications.ApplicationSynchronizerTaskScheduler;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.AutoScalerException;
 import org.apache.stratos.autoscaler.kubernetes.KubernetesManager;
 import 
org.apache.stratos.autoscaler.event.receiver.health.AutoscalerHealthStatEventReceiver;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitorFactory.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitorFactory.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitorFactory.java
index c049323..26a0118 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitorFactory.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/ClusterMonitorFactory.java
@@ -30,7 +30,7 @@ import org.apache.stratos.autoscaler.NetworkPartitionContext;
 import org.apache.stratos.autoscaler.NetworkPartitionLbHolder;
 import org.apache.stratos.autoscaler.PartitionContext;
 import 
org.apache.stratos.autoscaler.client.cloud.controller.CloudControllerClient;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.PartitionValidationException;
 import org.apache.stratos.autoscaler.exception.PolicyValidationException;
 import org.apache.stratos.autoscaler.partition.PartitionGroup;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
index 19d3704..0990ead 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
@@ -26,7 +26,7 @@ import org.apache.stratos.autoscaler.MemberStatsContext;
 import org.apache.stratos.autoscaler.NetworkPartitionContext;
 import org.apache.stratos.autoscaler.PartitionContext;
 import 
org.apache.stratos.autoscaler.client.cloud.controller.CloudControllerClient;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.InvalidArgumentException;
 import org.apache.stratos.autoscaler.exception.TerminationException;
 import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMLbClusterMonitor.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMLbClusterMonitor.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMLbClusterMonitor.java
index 3c82bdd..b3dad4e 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMLbClusterMonitor.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMLbClusterMonitor.java
@@ -27,7 +27,7 @@ import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.NetworkPartitionContext;
 import org.apache.stratos.autoscaler.NetworkPartitionLbHolder;
 import org.apache.stratos.autoscaler.PartitionContext;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.partition.PartitionManager;
 import org.apache.stratos.autoscaler.policy.PolicyManager;
 import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java
index a6ed9aa..0b460ab 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMServiceClusterMonitor.java
@@ -27,7 +27,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.NetworkPartitionContext;
 import org.apache.stratos.autoscaler.PartitionContext;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import 
org.apache.stratos.autoscaler.event.publisher.ClusterStatusEventPublisher;
 import org.apache.stratos.autoscaler.monitor.events.MonitorStatusEvent;
 import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
index 644cc22..2d39ea0 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
@@ -24,7 +24,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.NetworkPartitionLbHolder;
 import 
org.apache.stratos.autoscaler.client.cloud.controller.CloudControllerClient;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.AutoScalerException;
 import org.apache.stratos.autoscaler.exception.InvalidPartitionException;
 import org.apache.stratos.autoscaler.exception.PartitionValidationException;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
index 6a91817..6ff2c2d 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java
@@ -25,7 +25,7 @@ import java.util.Map;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.AutoScalerException;
 import org.apache.stratos.autoscaler.exception.InvalidPartitionException;
 import org.apache.stratos.autoscaler.exception.InvalidPolicyException;

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/DeploymentPolicy.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/DeploymentPolicy.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/DeploymentPolicy.java
new file mode 100644
index 0000000..0676723
--- /dev/null
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/DeploymentPolicy.java
@@ -0,0 +1,179 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one 
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
+ * KIND, either express or implied.  See the License for the 
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.stratos.autoscaler.policy.model;
+
+import org.apache.stratos.autoscaler.partition.PartitionGroup;
+import org.apache.stratos.cloud.controller.stub.deployment.partition.Partition;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Arrays;
+
+/**
+ * The model class for Deployment-Policy definition.
+ */
+public class DeploymentPolicy implements Serializable{
+
+    private static final long serialVersionUID = 5675507196284400099L;
+    private String id;
+    private String description;
+    private boolean isPublic;
+    private PartitionGroup[] partitionGroups;
+    private int tenantId;
+
+    /**
+     * Gets the value of the id property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getId() {
+        return id;
+    }
+
+    /**
+     * Sets the value of the id property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setId(String value) {
+        this.id = value;
+    }
+    
+    /**
+     * Gets the value of the description property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getDescription() {
+        return description;
+    }
+    
+    /**
+     * Sets the value of the description property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setDescription(String value) {
+        this.description = value;
+    }
+    
+    /**
+     * Gets the value of the isPublic property.
+     * 
+     * @return
+     *     possible object is boolean
+     *     
+     */
+       public boolean getIsPublic() {
+               return isPublic;
+       }
+
+        /**
+     * Sets the value of the isPublic property.
+     * 
+     * @param isPublic
+     *     allowed object is boolean
+     *     
+     */
+       public void setIsPublic(boolean isPublic) {
+               this.isPublic = isPublic;
+       }
+       
+       /**
+     * Gets the value of the tenantId property.
+     * 
+     *          
+     */
+       public int getTenantId() {
+               return tenantId;
+       }
+
+        /**
+     * Sets the value of the tenantId property.
+     * 
+     *     
+     */
+       public void setTenantId(int tenantId) {
+               this.tenantId = tenantId;
+       }
+    
+    public void setPartitionGroups(PartitionGroup[] partitionGroups) {
+        if(partitionGroups == null) {
+            this.partitionGroups = new PartitionGroup[0];
+        } else {
+            this.partitionGroups = Arrays.copyOf(partitionGroups, 
partitionGroups.length);
+        }
+    }
+    
+    public Partition[] getAllPartitions() {
+       ArrayList<Partition> partitionsList = new ArrayList<Partition>();
+       for (PartitionGroup partitionGroup : this.getPartitionGroups()) {
+            Partition[] partitions = partitionGroup.getPartitions();
+            if(partitions != null) {
+               partitionsList.addAll(Arrays.asList(partitions));
+            }
+        }
+        return partitionsList.toArray(new Partition[partitionsList.size()]);
+    }
+        
+    public Partition getPartitionById(String id){
+       for(Partition p : this.getAllPartitions()){
+               if(p.getId().equalsIgnoreCase(id))
+                       return p;
+       }
+        return null;
+    }
+    
+    /**
+     * Gets the value of the partition-groups.
+     */
+    public PartitionGroup[] getPartitionGroups() {
+        
+        return this.partitionGroups;
+    }
+    
+    public PartitionGroup getPartitionGroup(String partitionGrpId){
+       for(PartitionGroup parGrp : this.getPartitionGroups()){
+               if(parGrp.getId().equals(partitionGrpId))
+                       return parGrp;
+               
+       }
+       return null;
+    }
+    
+    public String toString() {
+        return "Deployment Policy [id]" + this.id + " Description " +  
this.description 
+                       + " isPublic " +  this.isPublic 
+                       +" [partitions] " + 
Arrays.toString(this.getAllPartitions());
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/2a4fec3a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java
index 94b3ecf..e0a676b 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java
@@ -25,7 +25,7 @@ import org.apache.commons.lang.StringUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.autoscaler.NetworkPartitionLbHolder;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy;
 import org.apache.stratos.autoscaler.exception.AutoScalerException;
 import org.apache.stratos.autoscaler.pojo.ServiceGroup;
 import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy;

Reply via email to