http://git-wip-us.apache.org/repos/asf/stratos/blob/dee7291c/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java
index 05e8f9e..4304d1c 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/bean/util/converter/PojoConverter.java
@@ -19,13 +19,10 @@
 
 package org.apache.stratos.rest.endpoint.bean.util.converter;
 
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.List;
-
 import org.apache.commons.lang.StringUtils;
-import 
org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition;
+import 
org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelPartition;
+import 
org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelNetworkPartition;
+import org.apache.stratos.autoscaler.stub.deployment.policy.ChildPolicy;
 import org.apache.stratos.autoscaler.stub.pojo.ApplicationContext;
 import org.apache.stratos.autoscaler.stub.pojo.DependencyContext;
 import org.apache.stratos.autoscaler.stub.pojo.GroupContext;
@@ -46,24 +43,11 @@ import 
org.apache.stratos.messaging.domain.applications.Group;
 import org.apache.stratos.messaging.domain.topology.Cluster;
 import org.apache.stratos.rest.endpoint.bean.ApplicationBean;
 import org.apache.stratos.rest.endpoint.bean.GroupBean;
+import 
org.apache.stratos.rest.endpoint.bean.autoscaler.partition.ApplicationLevelNetworkPartition;
 import org.apache.stratos.rest.endpoint.bean.autoscaler.partition.Partition;
-import 
org.apache.stratos.rest.endpoint.bean.autoscaler.partition.NetworkPartition;
-import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.AutoscalePolicy;
-import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.LoadAverageThresholds;
-import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.LoadThresholds;
-import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.MemoryConsumptionThresholds;
-import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.RequestsInFlightThresholds;
+import org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.*;
 import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.deployment.DeploymentPolicy;
-import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.CartridgeDefinitionBean;
-import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.ContainerBean;
-import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.IaasProviderBean;
-import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.LoadBalancerBean;
-import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.NetworkInterfaceBean;
-import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.PersistenceBean;
-import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.PortMappingBean;
-import org.apache.stratos.rest.endpoint.bean.cartridge.definition.PropertyBean;
-import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.ServiceDefinitionBean;
-import org.apache.stratos.rest.endpoint.bean.cartridge.definition.VolumeBean;
+import org.apache.stratos.rest.endpoint.bean.cartridge.definition.*;
 import org.apache.stratos.rest.endpoint.bean.kubernetes.KubernetesGroup;
 import org.apache.stratos.rest.endpoint.bean.kubernetes.KubernetesHost;
 import org.apache.stratos.rest.endpoint.bean.kubernetes.KubernetesMaster;
@@ -71,6 +55,11 @@ import 
org.apache.stratos.rest.endpoint.bean.kubernetes.PortRange;
 import 
org.apache.stratos.rest.endpoint.bean.subscription.domain.SubscriptionDomainBean;
 import org.apache.stratos.rest.endpoint.bean.topology.Member;
 
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.List;
+
 public class PojoConverter {
 
     public static CartridgeConfig 
populateCartridgeConfigPojo(CartridgeDefinitionBean cartridgeDefinitionBean) {
@@ -122,8 +111,7 @@ public class PojoConverter {
             
cartridgeConfig.setProperties(getProperties(cartridgeDefinitionBean.property));
         }
 
-        if(cartridgeDefinitionBean.getExportingProperties() != null)
-        {
+        if (cartridgeDefinitionBean.getExportingProperties() != null) {
             
cartridgeConfig.setExportingProperties(cartridgeDefinitionBean.getExportingProperties());
         }
 
@@ -134,7 +122,7 @@ public class PojoConverter {
         return cartridgeConfig;
     }
 
-    public static ServiceGroup populateServiceGroupPojo 
(ServiceGroupDefinition serviceGroupDefinition ) {
+    public static ServiceGroup populateServiceGroupPojo(ServiceGroupDefinition 
serviceGroupDefinition) {
         ServiceGroup servicegroup = new ServiceGroup();
 
         // implement conversion (mostly List -> Array)
@@ -295,18 +283,16 @@ public class PojoConverter {
         return networkInterfaces;
     }
 
-    public static org.apache.stratos.cloud.controller.stub.domain.Partition 
convertToCCPartitionPojo
+    public static 
org.apache.stratos.autoscaler.stub.deployment.partition.Partition 
convertToCCPartitionPojo
             (Partition partitionBean) {
 
-        org.apache.stratos.cloud.controller.stub.domain.Partition partition = 
new
-                org.apache.stratos.cloud.controller.stub.domain.Partition();
+        org.apache.stratos.autoscaler.stub.deployment.partition.Partition 
partition = new
+                
org.apache.stratos.autoscaler.stub.deployment.partition.Partition();
 
         partition.setId(partitionBean.id);
         partition.setDescription(partitionBean.description);
         partition.setIsPublic(partitionBean.isPublic);
         partition.setProvider(partitionBean.provider);
-        partition.setPartitionMin(partitionBean.partitionMin);
-        partition.setPartitionMax(partitionBean.partitionMax);
 
         if (partitionBean.property != null && 
!partitionBean.property.isEmpty()) {
             partition.setProperties(getProperties(partitionBean.property));
@@ -316,7 +302,7 @@ public class PojoConverter {
     }
 
     public static 
org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy 
convertToCCAutoscalerPojo(AutoscalePolicy
-                                                                               
                                     autoscalePolicyBean) {
+                                                                               
                                         autoscalePolicyBean) {
 
         org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy 
autoscalePolicy = new
                 
org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy();
@@ -370,43 +356,82 @@ public class PojoConverter {
         return autoscalePolicy;
     }
 
-    public static 
org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy 
convetToCCDeploymentPolicyPojo(DeploymentPolicy
-                                                                               
                                           deploymentPolicyBean) {
+    public static 
org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy
+    convetToCCDeploymentPolicyPojo(DeploymentPolicy
+                                           deploymentPolicyBean) {
 
         org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy 
deploymentPolicy = new
                 
org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy();
 
-        deploymentPolicy.setId(deploymentPolicyBean.getId());
-        deploymentPolicy.setDescription(deploymentPolicyBean.getDescription());
-        deploymentPolicy.setIsPublic(deploymentPolicyBean.isPublic());
-        if(deploymentPolicyBean.getNetworkPartition() != null && 
!deploymentPolicyBean.getNetworkPartition().isEmpty()) {
-            
deploymentPolicy.setApplicationLevelNetworkPartitions(convertToCCPartitionGroup(deploymentPolicyBean.getNetworkPartition()));
+        deploymentPolicy.setId(deploymentPolicyBean.id);
+        deploymentPolicy.setDescription(deploymentPolicyBean.description);
+        deploymentPolicy.setIsPublic(deploymentPolicyBean.isPublic);
+        if (deploymentPolicyBean.applicationPolicy != null &&
+                deploymentPolicyBean.applicationPolicy.networkPartition != 
null &&
+                
!deploymentPolicyBean.applicationPolicy.networkPartition.isEmpty()) {
+            deploymentPolicy.setApplicationLevelNetworkPartitions(
+                    
convertToCCPartitionGroup(deploymentPolicyBean.applicationPolicy.networkPartition));
+        }
+
+        if (deploymentPolicyBean.childPolicies != null && 
!deploymentPolicyBean.childPolicies.isEmpty()) {
+            
deploymentPolicy.setChildPolicies(convertToCCChildPolicy(deploymentPolicyBean.childPolicies));
         }
 
         return deploymentPolicy;
     }
 
-    private static ApplicationLevelNetworkPartition[] 
convertToCCPartitionGroup(List<NetworkPartition> networkPartitionBeans) {
+    private static 
org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[]
 convertToCCPartitionGroup(List<ApplicationLevelNetworkPartition> 
networkPartitionBeans) {
 
-        ApplicationLevelNetworkPartition[] partitionGroups = new
-                ApplicationLevelNetworkPartition[networkPartitionBeans.size()];
+        
org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[]
+                appNWPartitions = new
+                
org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition
+                [networkPartitionBeans.size()];
 
         for (int i = 0; i < networkPartitionBeans.size(); i++) {
-            ApplicationLevelNetworkPartition partitionGroup = new
-                    ApplicationLevelNetworkPartition();
-            partitionGroup.setId(networkPartitionBeans.get(i).id);
-//            
partitionGroup.setPartitionAlgo(networkPartitionBeans.get(i).partitionAlgo);
-            
partitionGroup.setActiveByDefault(networkPartitionBeans.get(i).activeByDefault);
+            
org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition
 appNWPartition = new
+                    
org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition();
+            appNWPartition.setId(networkPartitionBeans.get(i).id);
+            
appNWPartition.setActiveByDefault(networkPartitionBeans.get(i).activeByDefault);
+            if (networkPartitionBeans.get(i).partitions != null && 
!networkPartitionBeans.get(i).partitions.isEmpty()) {
+                
appNWPartition.setPartitions(convertToCCPartitionPojos(networkPartitionBeans.get(i).partitions));
+            }
+
+            appNWPartitions[i] = appNWPartition;
+        }
+
+        return appNWPartitions;
+    }
+
+    private static ChildPolicy[] 
convertToCCChildPolicy(List<org.apache.stratos.rest.endpoint.bean.autoscaler.policy.deployment.ChildPolicy>
 childPolicies) {
 
-            //TODO populate partitions according to new policy structure
-//            if (partitionGroupBeans.get(i).partition != null && 
!partitionGroupBeans.get(i).partition.isEmpty()) {
-//                
partitionGroup.setPartitions(convertToCCPartitionPojos(partitionGroupBeans.get(i).partition));
-//            }
+        ChildPolicy[] childPolicies1 = new ChildPolicy[childPolicies.size()];
 
-            partitionGroups[i] = partitionGroup;
+        for (int i = 0; i < childPolicies.size(); i++) {
+            ChildPolicy childPolicy = new ChildPolicy();
+            childPolicy.setId(childPolicies.get(i).childId);
+            
childPolicy.setChildLevelNetworkPartitions(convertToCCChildNetworkPartition(childPolicies.get(i).childLevelNetworkPartition));
+
+
+            childPolicies1[i] = childPolicy;
+        }
+
+        return childPolicies1;
+    }
+
+    private static ChildLevelNetworkPartition[] 
convertToCCChildNetworkPartition(List<org.apache.stratos.rest.endpoint.bean.autoscaler.partition.ChildLevelNetworkPartition>
 networkPartitions) {
+
+        ChildLevelNetworkPartition[] childLevelNetworkPartitions = new 
ChildLevelNetworkPartition[networkPartitions.size()];
+
+        for (int i = 0; i < networkPartitions.size(); i++) {
+            ChildLevelNetworkPartition childLevelNetworkPartition = new 
ChildLevelNetworkPartition();
+            childLevelNetworkPartition.setId(networkPartitions.get(i).id);
+            
childLevelNetworkPartition.setPartitionAlgo(networkPartitions.get(i).partitionAlgo);
+            
childLevelNetworkPartition.setChildLevelPartitions(convertToCCChildPartitionPojos(networkPartitions.get(i).childLevelPartitions));
+
+            childLevelNetworkPartitions[i] = childLevelNetworkPartition;
         }
 
-        return partitionGroups;
+        return childLevelNetworkPartitions;
     }
 
     public static org.apache.stratos.rest.endpoint.bean.topology.Cluster 
populateClusterPojos(Cluster cluster, String alias) {
@@ -452,11 +477,11 @@ public class PojoConverter {
         return cluster1;
     }
 
-    private static org.apache.stratos.cloud.controller.stub.domain.Partition[] 
convertToCCPartitionPojos
+    private static 
org.apache.stratos.autoscaler.stub.deployment.partition.Partition[] 
convertToCCPartitionPojos
             (List<Partition> partitionList) {
 
-        org.apache.stratos.cloud.controller.stub.domain.Partition[] partitions 
=
-                new 
org.apache.stratos.cloud.controller.stub.domain.Partition[partitionList.size()];
+        org.apache.stratos.autoscaler.stub.deployment.partition.Partition[] 
partitions =
+                new 
org.apache.stratos.autoscaler.stub.deployment.partition.Partition[partitionList.size()];
         for (int i = 0; i < partitionList.size(); i++) {
             partitions[i] = convertToCCPartitionPojo(partitionList.get(i));
         }
@@ -464,6 +489,21 @@ public class PojoConverter {
         return partitions;
     }
 
+    private static ChildLevelPartition[] convertToCCChildPartitionPojos
+            
(List<org.apache.stratos.rest.endpoint.bean.autoscaler.partition.ChildLevelPartition>
 partitionList) {
+
+        ChildLevelPartition[] childLevelPartitions = new 
ChildLevelPartition[partitionList.size()];
+        for (int i = 0; i < partitionList.size(); i++) {
+            ChildLevelPartition childLevelPartition = new 
ChildLevelPartition();
+            childLevelPartition.setPartitionId(partitionList.get(i).id);
+            childLevelPartition.setMax(partitionList.get(i).max);
+
+            childLevelPartitions[i] = childLevelPartition;
+        }
+
+        return childLevelPartitions;
+    }
+
     public static Partition[] 
populatePartitionPojos(org.apache.stratos.cloud.controller.stub.domain.Partition[]
                                                              partitions) {
 
@@ -474,7 +514,7 @@ public class PojoConverter {
         }
 
         partitionBeans = new Partition[partitions.length];
-        for (int i = 0 ; i < partitions.length ; i++) {
+        for (int i = 0; i < partitions.length; i++) {
             partitionBeans[i] = populatePartitionPojo(partitions[i]);
         }
         return partitionBeans;
@@ -576,7 +616,7 @@ public class PojoConverter {
         }
 
         autoscalePolicyBeans = new AutoscalePolicy[autoscalePolicies.length];
-        for (int i = 0 ; i < autoscalePolicies.length ; i++) {
+        for (int i = 0; i < autoscalePolicies.length; i++) {
             autoscalePolicyBeans[i] = 
populateAutoscalePojo(autoscalePolicies[i]);
         }
         return autoscalePolicyBeans;
@@ -637,7 +677,7 @@ public class PojoConverter {
         }
 
         deploymentPolicyBeans = new 
DeploymentPolicy[deploymentPolicies.length];
-        for (int i = 0 ; i < deploymentPolicies.length ; i++) {
+        for (int i = 0; i < deploymentPolicies.length; i++) {
             deploymentPolicyBeans[i] = 
populateDeploymentPolicyPojo(deploymentPolicies[i]);
         }
 
@@ -652,9 +692,9 @@ public class PojoConverter {
             return deploymentPolicyBean;
         }
 
-        deploymentPolicyBean.setId(deploymentPolicy.getId());
-        deploymentPolicyBean.setDescription(deploymentPolicy.getDescription());
-        deploymentPolicyBean.setPublic(deploymentPolicy.getIsPublic());
+        deploymentPolicyBean.id = deploymentPolicy.getId();
+        deploymentPolicyBean.description = deploymentPolicy.getDescription();
+        deploymentPolicyBean.isPublic = deploymentPolicy.getIsPublic();
 //TODO populate the Network partition based on new policy structure
 //        if (deploymentPolicy.getApplicationLevelNetworkPartition() != null 
&& deploymentPolicy.getApplicationLevelNetworkPartition().length > 0) {
 //            
deploymentPolicyBean.setPartitionGroup(Arrays.asList(populatePartitionGroupPojos(deploymentPolicy.getApplicationLevelNetworkPartition())));
@@ -667,10 +707,10 @@ public class PojoConverter {
         return deploymentPolicyBean;
     }
 
-    public static NetworkPartition 
populatePartitionGroupPojo(ApplicationLevelNetworkPartition
-                                                                    
partitionGroup) {
+    public static ApplicationLevelNetworkPartition 
populatePartitionGroupPojo(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition
+                                                                               
       partitionGroup) {
 
-        NetworkPartition networkPartitionBean = new NetworkPartition();
+        ApplicationLevelNetworkPartition networkPartitionBean = new 
ApplicationLevelNetworkPartition();
         if (partitionGroup == null) {
             return networkPartitionBean;
         }
@@ -685,17 +725,17 @@ public class PojoConverter {
         return networkPartitionBean;
     }
 
-    public static NetworkPartition[] 
populatePartitionGroupPojos(ApplicationLevelNetworkPartition[] partitionGroups) 
{
+    public static ApplicationLevelNetworkPartition[] 
populatePartitionGroupPojos(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[]
 partitionGroups) {
 
-        NetworkPartition[] networkPartitionGroupsBeans;
+        ApplicationLevelNetworkPartition[] networkPartitionGroupsBeans;
         if (partitionGroups == null) {
-            networkPartitionGroupsBeans = new NetworkPartition[0];
+            networkPartitionGroupsBeans = new 
ApplicationLevelNetworkPartition[0];
             return networkPartitionGroupsBeans;
         }
 
-        networkPartitionGroupsBeans = new 
NetworkPartition[partitionGroups.length];
+        networkPartitionGroupsBeans = new 
ApplicationLevelNetworkPartition[partitionGroups.length];
 
-        for (int i = 0 ; i < partitionGroups.length ; i ++) {
+        for (int i = 0; i < partitionGroups.length; i++) {
             networkPartitionGroupsBeans[i] = 
populatePartitionGroupPojo(partitionGroups[i]);
         }
 
@@ -818,18 +858,18 @@ public class PojoConverter {
 
     public static KubernetesGroup[] 
populateKubernetesGroupsPojo(org.apache.stratos.common.kubernetes.KubernetesGroup[]
 kubernetesGroups) {
 
-        if (kubernetesGroups == null){
+        if (kubernetesGroups == null) {
             return null;
         }
         KubernetesGroup[] kubernetesGroupsBean = new 
KubernetesGroup[kubernetesGroups.length];
-        for (int i = 0; i < kubernetesGroups.length; i++){
+        for (int i = 0; i < kubernetesGroups.length; i++) {
             kubernetesGroupsBean[i] = 
populateKubernetesGroupPojo(kubernetesGroups[i]);
         }
         return kubernetesGroupsBean;
     }
 
     public static KubernetesGroup 
populateKubernetesGroupPojo(org.apache.stratos.common.kubernetes.KubernetesGroup
 kubernetesGroup) {
-        if (kubernetesGroup == null){
+        if (kubernetesGroup == null) {
             return null;
         }
         KubernetesGroup kubernetesGroupBean = new KubernetesGroup();
@@ -843,7 +883,7 @@ public class PojoConverter {
     }
 
     public static KubernetesMaster 
populateKubernetesMasterPojo(org.apache.stratos.common.kubernetes.KubernetesMaster
 kubernetesMaster) {
-        if (kubernetesMaster == null){
+        if (kubernetesMaster == null) {
             return null;
         }
         KubernetesMaster kubernetesMasterBean = new KubernetesMaster();
@@ -856,18 +896,18 @@ public class PojoConverter {
     }
 
     public static List<KubernetesHost> 
populateKubernetesHostsPojo(org.apache.stratos.common.kubernetes.KubernetesHost[]
 kubernetesHosts) {
-        if (kubernetesHosts == null){
+        if (kubernetesHosts == null) {
             return null;
         }
         List<KubernetesHost> kubernetesHostList = new 
ArrayList<KubernetesHost>();
-        for (int i = 0; i < kubernetesHosts.length; i++){
+        for (int i = 0; i < kubernetesHosts.length; i++) {
             
kubernetesHostList.add(populateKubernetesHostPojo(kubernetesHosts[i]));
         }
         return kubernetesHostList;
     }
 
     private static KubernetesHost 
populateKubernetesHostPojo(org.apache.stratos.common.kubernetes.KubernetesHost 
kubernetesHost) {
-        if (kubernetesHost == null){
+        if (kubernetesHost == null) {
             return null;
         }
         KubernetesHost kubernetesHostBean = new KubernetesHost();
@@ -879,18 +919,18 @@ public class PojoConverter {
     }
 
     private static List<PropertyBean> populateASProperties(Properties 
properties) {
-        if (properties == null || properties.getProperties() == null){
+        if (properties == null || properties.getProperties() == null) {
             return null;
         }
         List<PropertyBean> propertyBeanList = new ArrayList<PropertyBean>();
-        for (int i = 0; i < properties.getProperties().length; i++){
+        for (int i = 0; i < properties.getProperties().length; i++) {
             
propertyBeanList.add(populateASProperty(properties.getProperties()[i]));
         }
         return propertyBeanList;
     }
 
     private static PropertyBean populateASProperty(Property propertyE) {
-        if (propertyE == null){
+        if (propertyE == null) {
             return null;
         }
         PropertyBean propertyBean = new PropertyBean();
@@ -900,7 +940,7 @@ public class PojoConverter {
     }
 
     private static PortRange 
populatePortRangePojo(org.apache.stratos.common.kubernetes.PortRange portRange) 
{
-        if (portRange == null){
+        if (portRange == null) {
             return null;
         }
         PortRange portRangeBean = new PortRange();
@@ -909,7 +949,7 @@ public class PojoConverter {
         return portRangeBean;
     }
 
-    public static ApplicationContext 
convertApplicationBeanToApplicationContext (ApplicationDefinition 
compositeAppDefinition) {
+    public static ApplicationContext 
convertApplicationBeanToApplicationContext(ApplicationDefinition 
compositeAppDefinition) {
 
         org.apache.stratos.autoscaler.stub.pojo.ApplicationContext 
applicationContext =
                 new 
org.apache.stratos.autoscaler.stub.pojo.ApplicationContext();
@@ -944,7 +984,7 @@ public class PojoConverter {
         return applicationContext;
     }
 
-    private static SubscribableInfoContext[] 
getSubscribableInfoContextArrFromSubscribableInfoDefinition 
(List<SubscribableInfo> subscribableInfos) {
+    private static SubscribableInfoContext[] 
getSubscribableInfoContextArrFromSubscribableInfoDefinition(List<SubscribableInfo>
 subscribableInfos) {
 
         SubscribableInfoContext[] subscribableInfoContexts = new 
SubscribableInfoContext[subscribableInfos.size()];
         int i = 0;
@@ -970,18 +1010,18 @@ public class PojoConverter {
                 }
                 subscribableInfoContext.setProperties(properties);
             }
-            subscribableInfoContexts[i++] =  subscribableInfoContext;
+            subscribableInfoContexts[i++] = subscribableInfoContext;
         }
         return subscribableInfoContexts;
     }
 
-    private static DependencyContext 
getDependencyContextFromDependencyDefinition (DependencyDefinitions 
dependencyDefinitions) {
+    private static DependencyContext 
getDependencyContextFromDependencyDefinition(DependencyDefinitions 
dependencyDefinitions) {
 
         DependencyContext dependencyContext = new DependencyContext();
         
dependencyContext.setTerminationBehaviour(dependencyDefinitions.getTerminationBehaviour());
 
         if (dependencyDefinitions != null && 
dependencyDefinitions.getStartupOrders() != null) {
-            String [] startupOrders = new String 
[dependencyDefinitions.getStartupOrders().size()];
+            String[] startupOrders = new 
String[dependencyDefinitions.getStartupOrders().size()];
             startupOrders = 
dependencyDefinitions.getStartupOrders().toArray(startupOrders);
             dependencyContext.setStartupOrdersContexts(startupOrders);
         }
@@ -990,7 +1030,7 @@ public class PojoConverter {
     }
 
     private static org.apache.stratos.autoscaler.stub.pojo.GroupContext[]
-    getgroupContextArrayFromGroupDefinitions (List<GroupDefinition> 
groupDefinitions) {
+    getgroupContextArrayFromGroupDefinitions(List<GroupDefinition> 
groupDefinitions) {
 
         GroupContext[] groupContexts = new 
GroupContext[groupDefinitions.size()];
         int i = 0;
@@ -1019,7 +1059,7 @@ public class PojoConverter {
         return groupContexts;
     }
 
-    private static org.apache.stratos.autoscaler.stub.pojo.SubscribableContext 
[]
+    private static 
org.apache.stratos.autoscaler.stub.pojo.SubscribableContext[]
     
getSubscribableContextArrayFromSubscribableDefinitions(List<SubscribableDefinition>
 subscribableDefinitions) {
 
         org.apache.stratos.autoscaler.stub.pojo.SubscribableContext[] 
subscribableContexts =
@@ -1039,7 +1079,7 @@ public class PojoConverter {
 
     public static ApplicationBean applicationToBean(Application application) {
 
-        if(application == null){
+        if (application == null) {
             return null;
         }
 
@@ -1051,7 +1091,7 @@ public class PojoConverter {
     }
 
     public static GroupBean toGroupBean(Group group) {
-        if(group == null){
+        if (group == null) {
             return null;
         }
 

http://git-wip-us.apache.org/repos/asf/stratos/blob/dee7291c/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
index 3532672..5ec01cd 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/MockContext.java
@@ -26,8 +26,8 @@ import org.apache.stratos.manager.user.mgt.beans.UserInfoBean;
 import org.apache.stratos.rest.endpoint.bean.CartridgeInfoBean;
 import org.apache.stratos.rest.endpoint.bean.StratosApiResponse;
 import org.apache.stratos.rest.endpoint.bean.SubscriptionDomainRequest;
+import 
org.apache.stratos.rest.endpoint.bean.autoscaler.partition.ApplicationLevelNetworkPartition;
 import org.apache.stratos.rest.endpoint.bean.autoscaler.partition.Partition;
-import 
org.apache.stratos.rest.endpoint.bean.autoscaler.partition.NetworkPartition;
 import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.AutoscalePolicy;
 import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.deployment.DeploymentPolicy;
 import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.CartridgeDefinitionBean;
@@ -551,7 +551,7 @@ public class MockContext {
        int tenantId = getTenantId();
        Map<String,DeploymentPolicy> policies;
        
-       if(!deploymentPolicy.isPublic()){
+       if(!deploymentPolicy.isPublic){
                if (deploymentPolicyMap.containsKey(tenantId)){
                        policies = deploymentPolicyMap.get(tenantId);
                }
@@ -570,7 +570,7 @@ public class MockContext {
                }
        }
        
-       policies.put(deploymentPolicy.getId(),deploymentPolicy);
+       policies.put(deploymentPolicy.id,deploymentPolicy);
         StratosApiResponse stratosApiResponse = new StratosApiResponse();
         stratosApiResponse.setMessage("Successfully deployed deployment policy 
definition");
         return stratosApiResponse;
@@ -597,7 +597,7 @@ public class MockContext {
        int tenantId = getTenantId();
        if(!partitionMap.containsKey(tenantId)){
                if(!partitionMap.containsKey(PUBLIC_DEFINITION)){
-                       throw new RestAPIException(Status.NO_CONTENT,"No 
partitions have been defined for the tenant");
+                       throw new RestAPIException(Status.NO_CONTENT,"No 
childLevelPartitions have been defined for the tenant");
                }
                
if(!(partitionMap.get(PUBLIC_DEFINITION)).containsKey(partitionId)){
                        throw new RestAPIException("There is no partition with 
the id: " + partitionId);
@@ -622,17 +622,19 @@ public class MockContext {
                        
if(!(deploymentPolicyMap.get(PUBLIC_DEFINITION)).containsKey(deploymentPolicyId)){
                                throw new 
RestAPIException(Status.NO_CONTENT,"There is no deployment policy with id: " + 
deploymentPolicyId);
                        }
-                       return 
(deploymentPolicyMap.get(PUBLIC_DEFINITION)).get(deploymentPolicyId).getPartition().toArray(new
 Partition[0]);
+                       return 
(deploymentPolicyMap.get(PUBLIC_DEFINITION)).get(deploymentPolicyId).applicationPolicy.networkPartition.get(0).partitions.toArray(new
 Partition[0]);
                }
        }
                
        
if(!(deploymentPolicyMap.get(tenantId)).containsKey(deploymentPolicyId)){
                throw new RestAPIException(Status.NO_CONTENT,"There is no 
deployment policy with id: " + deploymentPolicyId);
         }
-       return 
(deploymentPolicyMap.get(tenantId)).get(deploymentPolicyId).getPartition().toArray(new
 Partition[0]);
+        //FIXME to parse thr all the NW partitions
+       return (deploymentPolicyMap.get(tenantId)).
+                
get(deploymentPolicyId).applicationPolicy.networkPartition.get(0).partitions.toArray(new
 Partition[0]);
     }
 
-    public NetworkPartition[] getPartitionGroups(String deploymentPolicyId)  
throws RestAPIException{
+    public ApplicationLevelNetworkPartition[] getPartitionGroups(String 
deploymentPolicyId)  throws RestAPIException{
        int tenantId = getTenantId();
        if(!deploymentPolicyMap.containsKey(tenantId)){
                if(!deploymentPolicyMap.containsKey(PUBLIC_DEFINITION)){
@@ -642,14 +644,14 @@ public class MockContext {
                        
if(!(deploymentPolicyMap.get(PUBLIC_DEFINITION)).containsKey(deploymentPolicyId)){
                                throw new 
RestAPIException(Status.NO_CONTENT,"There is no deployment policy with id: " + 
deploymentPolicyId);
                        }
-                       return 
(deploymentPolicyMap.get(PUBLIC_DEFINITION)).get(deploymentPolicyId).getNetworkPartition().toArray(new
 NetworkPartition[0]);
+                       return 
(deploymentPolicyMap.get(PUBLIC_DEFINITION)).get(deploymentPolicyId).applicationPolicy.networkPartition.toArray(new
 ApplicationLevelNetworkPartition[0]);
                }
        }
                
        
if(!(deploymentPolicyMap.get(tenantId)).containsKey(deploymentPolicyId)){
                throw new RestAPIException(Status.NO_CONTENT,"There is no 
deployment policy with id: " + deploymentPolicyId);
         }
-       return 
(deploymentPolicyMap.get(tenantId)).get(deploymentPolicyId).getNetworkPartition().toArray(new
 NetworkPartition[0]);
+       return 
(deploymentPolicyMap.get(tenantId)).get(deploymentPolicyId).applicationPolicy.networkPartition.toArray(new
 ApplicationLevelNetworkPartition[0]);
     }
 
     public AutoscalePolicy[] getAutoscalePolicies()  throws RestAPIException{
@@ -811,9 +813,9 @@ public class MockContext {
        }
                        
         Partition[] partitions = null;
-         for(NetworkPartition networkPartition : 
deploymentPolicy.getNetworkPartition()){
+         for(ApplicationLevelNetworkPartition networkPartition : 
deploymentPolicy.applicationPolicy.networkPartition){
              if(networkPartition.id.equals(partitionGroupId)){
-                 partitions =  networkPartition.partition.toArray(new 
Partition[0]);
+                 partitions =  networkPartition.partitions.toArray(new 
Partition[0]);
              }
          }
         if(partitions == null){

http://git-wip-us.apache.org/repos/asf/stratos/blob/dee7291c/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosApiV40Mock.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosApiV40Mock.java
 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosApiV40Mock.java
index ad821ac..6cfc2d7 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosApiV40Mock.java
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/mock/StratosApiV40Mock.java
@@ -34,8 +34,8 @@ import 
org.apache.stratos.rest.endpoint.annotation.SuperTenantService;
 import org.apache.stratos.rest.endpoint.bean.CartridgeInfoBean;
 import org.apache.stratos.rest.endpoint.bean.StratosApiResponse;
 import org.apache.stratos.rest.endpoint.bean.SubscriptionDomainRequest;
+import 
org.apache.stratos.rest.endpoint.bean.autoscaler.partition.ApplicationLevelNetworkPartition;
 import org.apache.stratos.rest.endpoint.bean.autoscaler.partition.Partition;
-import 
org.apache.stratos.rest.endpoint.bean.autoscaler.partition.NetworkPartition;
 import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.autoscale.AutoscalePolicy;
 import 
org.apache.stratos.rest.endpoint.bean.autoscaler.policy.deployment.DeploymentPolicy;
 import 
org.apache.stratos.rest.endpoint.bean.cartridge.definition.CartridgeDefinitionBean;
@@ -363,7 +363,7 @@ public class StratosApiV40Mock {
     @Produces("application/json")
     @Consumes("application/json")
     @AuthorizationAction("/permission/protected/manage/monitor/tenants")
-    public NetworkPartition[] getPartitionGroups 
(@PathParam("deploymentPolicyId") String deploymentPolicyId)
+    public ApplicationLevelNetworkPartition[] getPartitionGroups 
(@PathParam("deploymentPolicyId") String deploymentPolicyId)
             throws RestAPIException {
           return 
MockContext.getInstance().getPartitionGroups(deploymentPolicyId);
 

http://git-wip-us.apache.org/repos/asf/stratos/blob/dee7291c/components/org.apache.stratos.rest.endpoint/src/main/webapp/api/WEB-INF/cxf-servlet.xml
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.rest.endpoint/src/main/webapp/api/WEB-INF/cxf-servlet.xml
 
b/components/org.apache.stratos.rest.endpoint/src/main/webapp/api/WEB-INF/cxf-servlet.xml
index 9c30e78..573e51b 100644
--- 
a/components/org.apache.stratos.rest.endpoint/src/main/webapp/api/WEB-INF/cxf-servlet.xml
+++ 
b/components/org.apache.stratos.rest.endpoint/src/main/webapp/api/WEB-INF/cxf-servlet.xml
@@ -122,6 +122,11 @@
                 <value>groups</value>
                 <value>clusters</value>
                 <value>startupOrders</value>
+                <value>childPolicies</value>
+                <value>childLevelNetworkPartition</value>
+                <value>childLevelPartitions</value>
+                <value>networkPartition</value>
+                <value>partitions</value>
             </list>
         </property>
     </bean>

Reply via email to