You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ra...@apache.org on 2015/02/27 15:46:39 UTC
[16/50] [abbrv] stratos git commit: fixing STRATOS-1214 - deployement
policy changes
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/DeploymentPolicy.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/DeploymentPolicy.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/DeploymentPolicy.java
deleted file mode 100644
index 93d7ea1..0000000
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/DeploymentPolicy.java
+++ /dev/null
@@ -1,221 +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.pojo.policy.deployment;
-
-import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.NetworkPartition;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.ChildLevelNetworkPartition;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition;
-import org.apache.stratos.autoscaler.util.AutoscalerUtil;
-
-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 applicationId;
- private String description;
- private boolean isPublic;
- private NetworkPartition[] applicationLevelNetworkPartitions;
- private ChildPolicy[] childPolicies;
- private int tenantId;
-
- /**
- * Gets the value of the applicationId property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getApplicationId() {
- return applicationId;
- }
-
- /**
- * Sets the value of the applicationId property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setApplicationId(String value) {
- this.applicationId = 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 setApplicationLevelNetworkPartitions(NetworkPartition[] applicationLevelNetworkPartitions) {
- if(applicationLevelNetworkPartitions == null) {
- this.applicationLevelNetworkPartitions = new NetworkPartition[0];
- } else {
- this.applicationLevelNetworkPartitions = Arrays.copyOf(applicationLevelNetworkPartitions, applicationLevelNetworkPartitions.length);
- }
- }
-
- public Partition[] getAllPartitions() {
- ArrayList<Partition> partitionsList = new ArrayList<Partition>();
- for (NetworkPartition networkPartition : this.getApplicationLevelNetworkPartitions()) {
- Partition[] partitions = networkPartition.getPartitions();
- if (partitions != null) {
- partitionsList.addAll(Arrays.asList(partitions));
- }
- }
- return partitionsList.toArray(new Partition[partitionsList.size()]);
- }
-
- private org.apache.stratos.cloud.controller.stub.domain.Partition convertTOCCPartition(org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition partition) {
- org.apache.stratos.cloud.controller.stub.domain.Partition partition1 = new
- org.apache.stratos.cloud.controller.stub.domain.Partition();
-
- partition1.setId(partition.getId());
- partition1.setProvider(partition.getProvider());
- partition1.setProperties(AutoscalerUtil.toStubProperties(partition.getProperties()));
-
- return partition1;
- }
-
- 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 NetworkPartition[] getApplicationLevelNetworkPartitions() {
-
- return this.applicationLevelNetworkPartitions;
- }
-
- public NetworkPartition getApplicationLevelNetworkPartition(String partitionGrpId){
- for(NetworkPartition parGrp : this.getApplicationLevelNetworkPartitions()){
- if(parGrp.getId().equals(partitionGrpId))
- return parGrp;
-
- }
- return null;
- }
-
- public String toString() {
- return "Deployment Policy [applicationId] " + this.applicationId + " Description " + this.description
- + " isPublic " + this.isPublic
- +" [partitions] " + Arrays.toString(this.getAllPartitions());
- }
-
-
- public ChildLevelNetworkPartition[] getChildLevelNetworkPartitions() {
- //TODO create a map of child level network partition context and return correct one
- return new ChildLevelNetworkPartition[0];
- }
-
- public ChildPolicy[] getChildPolicies() {
- return childPolicies;
- }
-
- public void setChildPolicies(ChildPolicy[] childPolicies) {
- if(childPolicies == null) {
- this.childPolicies = new ChildPolicy[0];
- } else {
- this.childPolicies = Arrays.copyOf(childPolicies, childPolicies.length);
- }
- }
-
- public ChildPolicy getChildPolicy(String id) {
- for(ChildPolicy childPolicy : childPolicies) {
- if(childPolicy != null) {
- if (childPolicy.getAlias().equals(id)) {
- return childPolicy;
- }
- }
- }
- return null;
- }
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelNetworkPartition.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelNetworkPartition.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelNetworkPartition.java
deleted file mode 100644
index ded4469..0000000
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelNetworkPartition.java
+++ /dev/null
@@ -1,93 +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.pojo.policy.deployment.partition.network;
-
-import java.io.Serializable;
-
-/**
-* The model class for NetworkPartition definition at child level.
-*/
-public class ChildLevelNetworkPartition implements Serializable {
-
- private static final long serialVersionUID = -8043298009352097370L;
- private String id;
- private String partitionAlgo;
- private ChildLevelPartition[] childLevelPartitions;
- private int min;
-
- /**
- * Gets the value of the partitionAlgo property.
- *
- * @return possible object is
- * {@link String }
- */
- public String getPartitionAlgo() {
- return partitionAlgo;
- }
-
- /**
- * Sets the value of the partitionAlgo property.
- *
- * @param value allowed object is
- * {@link String }
- */
- public void setPartitionAlgo(String value) {
- this.partitionAlgo = value;
- }
-
- /**
- * Gets the value of the id.
- */
- public String getId() {
- return id;
- }
-
- /**
- * sets the value of the id.
- */
- public void setId(String id) {
- this.id = id;
- }
-
- public ChildLevelPartition[] getChildLevelPartitions() {
- return childLevelPartitions;
- }
-
- public void setChildLevelPartitions(ChildLevelPartition[] childLevelPartitions) {
- this.childLevelPartitions = childLevelPartitions;
- }
-
- public ChildLevelPartition getChildLevelPartition(String partitionId) {
- for(ChildLevelPartition partition : childLevelPartitions) {
- if(partition.getPartitionId().equals(partitionId)) {
- return partition;
- }
- }
- return null;
- }
-
- public int getMin() {
- return min;
- }
-
- public void setMin(int min) {
- this.min = min;
- }
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelPartition.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelPartition.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelPartition.java
deleted file mode 100644
index 8c3b140..0000000
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelPartition.java
+++ /dev/null
@@ -1,52 +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.pojo.policy.deployment.partition.network;
-
-import java.io.Serializable;
-
-public class ChildLevelPartition implements Serializable {
- private String partitionId;
- private String networkPartitionId;
- private int max;
-
- public int getMax() {
- return max;
- }
-
- public String getNetworkPartitionId() {
- return networkPartitionId;
- }
-
- public String getPartitionId() {
- return partitionId;
- }
-
- public void setPartitionId(String partitionId) {
- this.partitionId = partitionId;
- }
-
- public void setNetworkPartitionId(String networkPartitionId) {
- this.networkPartitionId = networkPartitionId;
- }
-
- public void setMax(int max) {
- this.max = max;
- }
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildPolicyHolder.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildPolicyHolder.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildPolicyHolder.java
deleted file mode 100644
index bac5447..0000000
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildPolicyHolder.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network;
-
-
-import java.util.Map;
-
-public class ChildPolicyHolder {
-
- // Key: networkPartitinID, value: ChildLevelNetworkPartition
- private Map<String, ChildLevelNetworkPartition> childLevelNetworkPartitions;
- private String deploymentPolicyId;
-
- public ChildPolicyHolder(Map<String, ChildLevelNetworkPartition> childLevelNetworkPartitions, String deploymentPolicyId) {
- this.childLevelNetworkPartitions = childLevelNetworkPartitions;
- this.deploymentPolicyId = deploymentPolicyId;
- }
-
- public String getDeploymentPolicyId() {
- return deploymentPolicyId;
- }
-
- public Map<String, ChildLevelNetworkPartition> getChildLevelNetworkPartitions() {
- return childLevelNetworkPartitions;
- }
-
- public ChildLevelNetworkPartition getChildLevelNetworkPartitionById(String networkPartitionId) {
- return childLevelNetworkPartitions.get(networkPartitionId);
- }
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/NetworkPartition.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/NetworkPartition.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/NetworkPartition.java
deleted file mode 100644
index 0c5f22e..0000000
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/NetworkPartition.java
+++ /dev/null
@@ -1,84 +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.pojo.policy.deployment.partition.network;
-
-import java.io.Serializable;
-import java.util.Arrays;
-
-/**
-* The model class for NetworkPartition definition.
-*/
-public class NetworkPartition implements Serializable {
-
- private static final long serialVersionUID = -8043298009352097370L;
-
- private String id;
- private String kubernetesClusterId;
- private Partition[] partitions;
-
- public void setPartitions(Partition[] partitions) {
- if(partitions == null) {
- this.partitions = partitions;
- } else {
- this.partitions = Arrays.copyOf(partitions, partitions.length);
- }
- }
-
- /**
- * Gets the value of the partitions.
- */
- public Partition[] getPartitions() {
- if (partitions == null) {
- partitions = new Partition[0];
- }
- return this.partitions;
- }
-
- /**
- * Gets the value of the id.
- */
- public String getId() {
- return id;
- }
-
- /**
- * sets the value of the id.
- */
- public void setId(String id) {
- this.id = id;
- }
-
- public Partition getPartition(String partitionId) {
- for(Partition partition : partitions) {
- if(partition.getId().equals(partitionId)) {
- return partition;
- }
- }
- return null;
- }
-
- public String getKubernetesClusterId() {
- return kubernetesClusterId;
- }
-
- public void setKubernetesClusterId(String kubernetesClusterId) {
- this.kubernetesClusterId = kubernetesClusterId;
- }
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/Partition.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/Partition.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/Partition.java
deleted file mode 100644
index dc29d49..0000000
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/Partition.java
+++ /dev/null
@@ -1,150 +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.pojo.policy.deployment.partition.network;
-
-import org.apache.stratos.common.Properties;
-
-import java.io.Serializable;
-
-/**
- * This is keep the partition information
- */
-public class Partition implements Serializable {
-
- private static final long serialVersionUID = 3725971287992010720L;
- /**
- * provider should match with an IaasProvider type.
- */
- private String provider;
- private String id;
- private String description;
- private boolean isPublic;
- private String kubernetesClusterId;
- private Properties properties = new Properties();
-
- /**
- * 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 id
- * allowed object is
- * {@link String }
- *
- */
- public void setId(String id) {
- this.id = id;
- }
-
- /**
- * 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 description
- * allowed object is
- * {@link String }
- *
- */
- public void setDescription(String description) {
- this.description = description;
- }
-
- /**
- * 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 isPublic property.
- *
- */
- public boolean getIsPublic() {
- return isPublic;
- }
-
- public Properties getProperties() {
- return properties;
- }
-
- public void setProperties(Properties properties) {
- this.properties = properties;
- }
-
- public String getProvider() {
- return provider;
- }
-
- public void setProvider(String provider) {
- this.provider = provider;
- }
-
- @Override
- public String toString() {
- return "Partition [id=" + id + ", description=" + description + ", isPublic=" + isPublic
- + ", provider=" + provider + ", properties=" + properties + "]";
- }
-
- public boolean equals(Object obj) {
- if(obj != null && obj instanceof Partition) {
- return this.id.equals(((Partition) obj).getId());
- }
- return false;
-
- }
-
- @Override
- public int hashCode() {
- return this.id.hashCode();
- }
-
- public String getKubernetesClusterId() {
- return kubernetesClusterId;
- }
-
- public void setKubernetesClusterId(String kubernetesClusterId) {
- this.kubernetesClusterId = kubernetesClusterId;
- }
-}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/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 dc2ec7a..408f7f7 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
@@ -29,8 +29,6 @@ import org.apache.stratos.autoscaler.exception.AutoScalerException;
import org.apache.stratos.autoscaler.pojo.ServiceGroup;
import org.apache.stratos.autoscaler.pojo.policy.autoscale.AutoscalePolicy;
import org.apache.stratos.autoscaler.pojo.policy.deployment.ApplicationPolicy;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.NetworkPartition;
import org.apache.stratos.autoscaler.util.AutoscalerConstants;
import org.apache.stratos.autoscaler.util.Deserializer;
import org.apache.stratos.autoscaler.util.Serializer;
@@ -127,14 +125,6 @@ public class RegistryManager {
}
}
- public void persistDeploymentPolicy(DeploymentPolicy deploymentPolicy) {
- String resourcePath = AutoscalerConstants.AUTOSCALER_RESOURCE + AutoscalerConstants.DEPLOYMENT_POLICY_RESOURCE + "/" + deploymentPolicy.getApplicationId();
- persist(deploymentPolicy, resourcePath);
- if (log.isDebugEnabled()) {
- log.debug(String.format("Deployment policy written to registry: %s", deploymentPolicy.toString()));
- }
- }
-
public void persistApplication(Application application) {
try {
@@ -422,36 +412,37 @@ public class RegistryManager {
}
return asPolicyList;
}
-
- public List<DeploymentPolicy> retrieveDeploymentPolicies() {
- List<DeploymentPolicy> depPolicyList = new ArrayList<DeploymentPolicy>();
+
+ public List<ApplicationPolicy> retrieveApplicationPolicies() {
+ List<ApplicationPolicy> applicationPolicyList = new ArrayList<ApplicationPolicy>();
RegistryManager registryManager = RegistryManager.getInstance();
- String[] depPolicyResourceList = (String[]) registryManager.retrieve(AutoscalerConstants.AUTOSCALER_RESOURCE + AutoscalerConstants.DEPLOYMENT_POLICY_RESOURCE);
+ String[] applicationPoliciesResourceList = (String[]) registryManager.retrieve(
+ AutoscalerConstants.AUTOSCALER_RESOURCE + AutoscalerConstants.APPLICATION_POLICY_RESOURCE);
- if (depPolicyResourceList != null) {
- DeploymentPolicy depPolicy;
- for (String resourcePath : depPolicyResourceList) {
+ if (applicationPoliciesResourceList != null) {
+ ApplicationPolicy applicationPolicy;
+ for (String resourcePath : applicationPoliciesResourceList) {
Object serializedObj = registryManager.retrieve(resourcePath);
if (serializedObj != null) {
try {
Object dataObj = Deserializer.deserializeFromByteArray((byte[]) serializedObj);
- if (dataObj instanceof DeploymentPolicy) {
- depPolicy = (DeploymentPolicy) dataObj;
+ if (dataObj instanceof ApplicationPolicy) {
+ applicationPolicy = (ApplicationPolicy) dataObj;
if (log.isDebugEnabled()) {
- log.debug(depPolicy.toString());
+ log.debug(String.format("Application policy read from registry %s", applicationPolicy.toString()));
}
- depPolicyList.add(depPolicy);
+ applicationPolicyList.add(applicationPolicy);
} else {
return null;
}
} catch (Exception e) {
- String msg = "Unable to retrieve data from Registry. Hence, any historical deployment policies will not get reflected.";
+ String msg = "Unable to retrieve data from Registry. Hence, any historical application policies will not get reflected.";
log.warn(msg, e);
}
}
}
}
- return depPolicyList;
+ return applicationPolicyList;
}
public ServiceGroup getServiceGroup(String name) throws Exception {
@@ -539,14 +530,15 @@ public class RegistryManager {
}
}
-
- public void removeDeploymentPolicy(DeploymentPolicy depPolicy) {
- String resourcePath = AutoscalerConstants.AUTOSCALER_RESOURCE + AutoscalerConstants.DEPLOYMENT_POLICY_RESOURCE;
+
+ public void removeApplicationPolicy(String applicationId) {
+ String resourcePath = AutoscalerConstants.AUTOSCALER_RESOURCE + AutoscalerConstants.APPLICATION_POLICY_RESOURCE + "/" +
+ applicationId;
this.delete(resourcePath);
if (log.isDebugEnabled()) {
- log.debug(String.format("Deployment policy deleted from registry: [id] %s",
- depPolicy.getApplicationId()));
+ log.debug(String.format("Application policy deleted from registry [application-id] %s", applicationId));
}
+
}
private void delete(String resourcePath) {
@@ -568,9 +560,10 @@ public class RegistryManager {
}
- public void persistApplicationPolicy(String applicationId, ApplicationPolicy applicationPolicy) {
+ public void persistApplicationPolicy(ApplicationPolicy applicationPolicy) {
- String resourcePath = AutoscalerConstants.AUTOSCALER_RESOURCE + AutoscalerConstants.APPLICATION_POLICY_RESOURCE + "/" + applicationId;
+ String resourcePath = AutoscalerConstants.AUTOSCALER_RESOURCE +
+ AutoscalerConstants.APPLICATION_POLICY_RESOURCE + "/" + applicationPolicy.getApplicationId();
persist(applicationPolicy, resourcePath);
if (log.isDebugEnabled()) {
log.debug(String.format("Application policy written to registry"));
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java
index 4de0f77..dd7677b 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java
@@ -34,7 +34,6 @@ import org.wso2.carbon.utils.CarbonUtils;
import java.io.File;
import java.util.HashMap;
import java.util.Map;
-import java.util.Properties;
/**
* This class is responsible for evaluating the current details of topology, statistics, and health
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/AutoscalerService.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/AutoscalerService.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/AutoscalerService.java
index 9c8b50b..c0ae88b 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/AutoscalerService.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/AutoscalerService.java
@@ -22,14 +22,15 @@
package org.apache.stratos.autoscaler.services;
import org.apache.stratos.autoscaler.applications.pojo.ApplicationContext;
-import org.apache.stratos.autoscaler.exception.InvalidArgumentException;
+import org.apache.stratos.autoscaler.exception.kubernetes.InvalidServiceGroupException;
+import org.apache.stratos.autoscaler.pojo.policy.deployment.ApplicationPolicy;
+import org.apache.stratos.autoscaler.exception.*;
import org.apache.stratos.autoscaler.exception.application.ApplicationDefinitionException;
import org.apache.stratos.autoscaler.exception.kubernetes.InvalidServiceGroupException;
import org.apache.stratos.autoscaler.exception.policy.InvalidPolicyException;
import org.apache.stratos.autoscaler.pojo.ServiceGroup;
import org.apache.stratos.autoscaler.pojo.policy.autoscale.AutoscalePolicy;
import org.apache.stratos.autoscaler.pojo.policy.deployment.ApplicationPolicy;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy;
import org.apache.stratos.common.Properties;
public interface AutoscalerService {
@@ -118,13 +119,6 @@ public interface AutoscalerService {
public void deleteApplication(String applicationId);
/**
- * Returns a deployment policy of an application
- * @param applicationId
- * @return
- */
- public DeploymentPolicy getDeploymentPolicy(String applicationId);
-
- /**
* Dynamically update the properties of an Autoscaling Cluster Monitor
* @param clusterId id of the cluster.
* @param properties updated properties.
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
index e419d4e..4b07380 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
@@ -53,9 +53,6 @@ import org.apache.stratos.autoscaler.pojo.policy.PolicyManager;
import org.apache.stratos.autoscaler.pojo.policy.autoscale.AutoscalePolicy;
import org.apache.stratos.autoscaler.pojo.policy.deployment.ApplicationPolicy;
import org.apache.stratos.autoscaler.pojo.policy.deployment.ApplicationPolicyNetworkPartitionReference;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.NetworkPartition;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition;
import org.apache.stratos.autoscaler.registry.RegistryManager;
import org.apache.stratos.autoscaler.services.AutoscalerService;
import org.apache.stratos.autoscaler.util.AutoscalerUtil;
@@ -126,11 +123,6 @@ public class AutoscalerServiceImpl implements AutoscalerService {
return canRemove;
}
- @Override
- public DeploymentPolicy getDeploymentPolicy(String deploymentPolicyId) {
- return PolicyManager.getInstance().getDeploymentPolicy(deploymentPolicyId);
- }
-
@Override
public AutoscalePolicy getAutoscalingPolicy(String autoscalingPolicyId) {
return PolicyManager.getInstance().getAutoscalePolicy(autoscalingPolicyId);
@@ -193,7 +185,7 @@ public class AutoscalerServiceImpl implements AutoscalerService {
validateApplicationPolicy(applicationId, applicationPolicy);
// Add application policy
- PolicyManager.getInstance().addApplicationPolicy(applicationId, applicationPolicy);
+ PolicyManager.getInstance().addApplicationPolicy(applicationPolicy);
if(!applicationContext.isMultiTenant()) {
// Add application signup for single tenant applications
addApplicationSignUp(applicationContext, application.getKey());
@@ -376,16 +368,16 @@ public class AutoscalerServiceImpl implements AutoscalerService {
// Remove Application SignUp(s) in stratos manager
removeApplicationSignUp(application);
+
+ // Remove application policy
+ PolicyManager.getInstance().removeApplicationPolicy(applicationId);
ApplicationBuilder.handleApplicationUndeployed(applicationId);
ApplicationContext applicationContext = AutoscalerContext.getInstance().getApplicationContext(applicationId);
applicationContext.setStatus(ApplicationContext.STATUS_CREATED);
AutoscalerContext.getInstance().updateApplicationContext(applicationContext);
-
- DeploymentPolicy deploymentPolicy = PolicyManager.getInstance().getDeploymentPolicy(applicationId);
- PolicyManager.getInstance().removeDeploymentPolicy(deploymentPolicy);
-
+
if (log.isInfoEnabled()) {
log.info("Application undeployed successfully: [application-id] " + applicationId);
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerConstants.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerConstants.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerConstants.java
index 2105008..43ccee0 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerConstants.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerConstants.java
@@ -45,7 +45,6 @@ public final class AutoscalerConstants {
public static final String AUTOSCALER_RESOURCE = "/autoscaler";
public static final String PARTITION_RESOURCE = "/partitions";
public static final String AS_POLICY_RESOURCE = "/policies/autoscalingPolicies";
- public static final String DEPLOYMENT_POLICY_RESOURCE = "/policies/deploymentPolicies";
public static final String APPLICATIONS_RESOURCE = "/applications";
public static final String APPLICATION_CONTEXTS_RESOURCE = "/applicationContexts";
public static final String APPLICATION_POLICY_RESOURCE = "/policies/applicationPolicies";
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerObjectConverter.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerObjectConverter.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerObjectConverter.java
index dab8c37..b1fe55e 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerObjectConverter.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerObjectConverter.java
@@ -19,7 +19,6 @@
package org.apache.stratos.autoscaler.util;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.NetworkPartition;
import org.apache.stratos.cloud.controller.stub.Property;
import org.apache.stratos.cloud.controller.stub.domain.Partition;
import org.apache.stratos.common.Properties;
@@ -32,84 +31,84 @@ import java.util.List;
*/
public class AutoscalerObjectConverter {
- /**
- * Convert autoscaler partitions to cloud controller stub partitions
- * @param partitions
- * @return
- */
- public static org.apache.stratos.cloud.controller.stub.domain.Partition[]
- convertASPartitionsToCCStubPartitions(org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition[] partitions) {
+// /**
+// * Convert autoscaler partitions to cloud controller stub partitions
+// * @param partitions
+// * @return
+// */
+// public static org.apache.stratos.cloud.controller.stub.domain.Partition[]
+// convertASPartitionsToCCStubPartitions(org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition[] partitions) {
+//
+// List<Partition> cloudControllerPartitions = new ArrayList<Partition>();
+// for(org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition partition : partitions) {
+// Partition cloudControllerPartition = convertASPartitionToCCPartition(partition);
+// cloudControllerPartitions.add(cloudControllerPartition);
+// }
+// return cloudControllerPartitions.toArray(new Partition[cloudControllerPartitions.size()]);
+// }
- List<Partition> cloudControllerPartitions = new ArrayList<Partition>();
- for(org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition partition : partitions) {
- Partition cloudControllerPartition = convertASPartitionToCCPartition(partition);
- cloudControllerPartitions.add(cloudControllerPartition);
- }
- return cloudControllerPartitions.toArray(new Partition[cloudControllerPartitions.size()]);
- }
-
- /**
- * Convert autoscaler partition to cloud controller partition
- * @param partition
- * @return
- */
- public static org.apache.stratos.cloud.controller.stub.domain.Partition
- convertASPartitionToCCPartition(org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition partition) {
-
- org.apache.stratos.cloud.controller.stub.domain.Partition cloudControllerPartition = new
- org.apache.stratos.cloud.controller.stub.domain.Partition();
-
- cloudControllerPartition.setId(partition.getId());
- cloudControllerPartition.setProvider(partition.getProvider());
- cloudControllerPartition.setDescription(partition.getDescription());
- cloudControllerPartition.setKubernetesClusterId(partition.getKubernetesClusterId());
- cloudControllerPartition.setIsPublic(partition.getIsPublic());
- cloudControllerPartition.setProperties(AutoscalerUtil.toStubProperties(partition.getProperties()));
-
- return cloudControllerPartition;
- }
+// /**
+// * Convert autoscaler partition to cloud controller partition
+// * @param partition
+// * @return
+// */
+// public static org.apache.stratos.cloud.controller.stub.domain.Partition
+// convertASPartitionToCCPartition(org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition partition) {
+//
+// org.apache.stratos.cloud.controller.stub.domain.Partition cloudControllerPartition = new
+// org.apache.stratos.cloud.controller.stub.domain.Partition();
+//
+// cloudControllerPartition.setId(partition.getId());
+// cloudControllerPartition.setProvider(partition.getProvider());
+// cloudControllerPartition.setDescription(partition.getDescription());
+// cloudControllerPartition.setKubernetesClusterId(partition.getKubernetesClusterId());
+// cloudControllerPartition.setIsPublic(partition.getIsPublic());
+// cloudControllerPartition.setProperties(AutoscalerUtil.toStubProperties(partition.getProperties()));
+//
+// return cloudControllerPartition;
+// }
- public static NetworkPartition convertNetworkParitionStubToPojo(org.apache.stratos.cloud.controller.stub.domain.NetworkPartition np) {
-
- NetworkPartition networkPartition = new NetworkPartition();
- networkPartition.setId(np.getId());
- networkPartition.setKubernetesClusterId(np.getKubernetesClusterId());
- networkPartition.setPartitions(convertPartitionStubToPojo(np.getPartitions()));
-
- return networkPartition;
- }
+// public static NetworkPartition convertNetworkParitionStubToPojo(org.apache.stratos.cloud.controller.stub.domain.NetworkPartition np) {
+//
+// NetworkPartition networkPartition = new NetworkPartition();
+// networkPartition.setId(np.getId());
+// networkPartition.setKubernetesClusterId(np.getKubernetesClusterId());
+// networkPartition.setPartitions(convertPartitionStubToPojo(np.getPartitions()));
+//
+// return networkPartition;
+// }
- private static org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition[] convertPartitionStubToPojo(
- Partition[] partitions) {
-
- List<org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition> partitionList =
- new ArrayList<org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition>();
-
- for (Partition p : partitions) {
- org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition partition =
- new org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition();
- partition.setDescription(p.getDescription());
- partition.setId(p.getId());
- partition.setIsPublic(p.getIsPublic());
- partition.setKubernetesClusterId(p.getKubernetesClusterId());
- partition.setProperties(convertProperties(p.getProperties()));
- partition.setProvider(p.getProvider());
- }
-
- return partitionList.toArray(
- new org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition[partitions.length]);
- }
+// private static org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition[] convertPartitionStubToPojo(
+// Partition[] partitions) {
+//
+// List<org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition> partitionList =
+// new ArrayList<org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition>();
+//
+// for (Partition p : partitions) {
+// org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition partition =
+// new org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition();
+// partition.setDescription(p.getDescription());
+// partition.setId(p.getId());
+// partition.setIsPublic(p.getIsPublic());
+// partition.setKubernetesClusterId(p.getKubernetesClusterId());
+// partition.setProperties(convertProperties(p.getProperties()));
+// partition.setProvider(p.getProvider());
+// }
+//
+// return partitionList.toArray(
+// new org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition[partitions.length]);
+// }
- private static Properties convertProperties(
- org.apache.stratos.cloud.controller.stub.Properties properties) {
-
- Properties props = new Properties();
- Property[] propArray = properties.getProperties();
- for (Property property : propArray) {
- props.addProperty(new org.apache.stratos.common.Property(property.getName(),property.getValue()));
- }
-
- return props;
- }
+// private static Properties convertProperties(
+// org.apache.stratos.cloud.controller.stub.Properties properties) {
+//
+// Properties props = new Properties();
+// Property[] propArray = properties.getProperties();
+// for (Property property : propArray) {
+// props.addProperty(new org.apache.stratos.common.Property(property.getName(),property.getValue()));
+// }
+//
+// return props;
+// }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
index 19af96a..fec148f 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
@@ -26,6 +26,10 @@ import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.applications.dependency.context.ApplicationChildContext;
import org.apache.stratos.autoscaler.applications.dependency.context.ClusterChildContext;
import org.apache.stratos.autoscaler.applications.dependency.context.GroupChildContext;
+import org.apache.stratos.autoscaler.applications.pojo.ApplicationContext;
+import org.apache.stratos.autoscaler.applications.pojo.CartridgeContext;
+import org.apache.stratos.autoscaler.applications.pojo.ComponentContext;
+import org.apache.stratos.autoscaler.applications.pojo.GroupContext;
import org.apache.stratos.autoscaler.context.AutoscalerContext;
import org.apache.stratos.autoscaler.exception.application.DependencyBuilderException;
import org.apache.stratos.autoscaler.exception.application.TopologyInConsistentException;
@@ -44,7 +48,9 @@ import org.apache.stratos.messaging.domain.topology.Topology;
import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
import javax.xml.namespace.QName;
+
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
@@ -357,4 +363,165 @@ public class AutoscalerUtil {
}
return "*";
}
+
+ public static String getDeploymentPolicyIdByAlias(String applicationId, String alias) {
+
+ if (alias == null || alias.isEmpty()) {
+ return null;
+ }
+
+ Map<String, String> aliasToDeploymentPolicyIdMap = new HashMap<String, String>();
+
+ ApplicationContext applicationContext = RegistryManager.getInstance().getApplicationContext(applicationId);
+ if (applicationContext == null) {
+ return null;
+ }
+
+ ComponentContext componentContext = applicationContext.getComponents();
+ if (componentContext == null) {
+ return null;
+ }
+
+ CartridgeContext[] cartridgeContexts = componentContext.getCartridgeContexts();
+ if (cartridgeContexts != null && cartridgeContexts.length != 0) {
+ getAliasToDeployloymentPolicyIdMapFromChildCartridgeContexts(aliasToDeploymentPolicyIdMap, cartridgeContexts);
+ }
+
+ GroupContext[] groupContexts = componentContext.getGroupContexts();
+ if (groupContexts != null && groupContexts.length != 0) {
+ getAliasToDeployloymentPolicyIdMapFromChildGroupContexts(aliasToDeploymentPolicyIdMap, groupContexts);
+ }
+
+ return aliasToDeploymentPolicyIdMap.get(alias);
+ }
+
+ private static void getAliasToDeployloymentPolicyIdMapFromChildCartridgeContexts(
+ Map<String, String> aliasToDeploymentPolicyIdMap, CartridgeContext[] cartridgeContexts) {
+
+ if (cartridgeContexts != null && cartridgeContexts.length != 0) {
+ for (CartridgeContext cartridgeContext : cartridgeContexts) {
+ if (cartridgeContext != null) {
+ aliasToDeploymentPolicyIdMap.put(
+ cartridgeContext.getSubscribableInfoContext().getAlias(),
+ cartridgeContext.getSubscribableInfoContext().getDeploymentPolicy());
+ }
+ }
+ }
+ }
+
+ private static void getAliasToDeployloymentPolicyIdMapFromChildGroupContexts(
+ Map<String, String> aliasToDeploymentPolicyIdMap, GroupContext[] groupContexts) {
+
+ if (groupContexts != null && groupContexts.length != 0) {
+ for (GroupContext groupContext : groupContexts) {
+ if (groupContext != null) {
+ if (groupContext.getDeploymentPolicy() == null || groupContext.getDeploymentPolicy().isEmpty()) {
+ // if group does not have a deployment policy, children should have
+ getAliasToDeployloymentPolicyIdMapFromChildCartridgeContexts(aliasToDeploymentPolicyIdMap, groupContext.getCartridgeContexts());
+ getAliasToDeployloymentPolicyIdMapFromChildGroupContexts(aliasToDeploymentPolicyIdMap, groupContext.getGroupContexts());
+ } else {
+ // if group have a deployment policy, it is the same for all the children
+ String deploymentPolicyId = groupContext.getDeploymentPolicy();
+ if (groupContext.getCartridgeContexts() != null && groupContext.getCartridgeContexts().length != 0) {
+ setDeploymentPolicyIdToChildCartridgeContexts(aliasToDeploymentPolicyIdMap, deploymentPolicyId, groupContext.getCartridgeContexts());
+ }
+ if (groupContext.getGroupContexts() != null && groupContext.getGroupContexts().length != 0) {
+ setDeploymentPolicyIdToChildGroupContexts(aliasToDeploymentPolicyIdMap, deploymentPolicyId, groupContext.getGroupContexts());
+ }
+
+ }
+ }
+ }
+ }
+ }
+
+ private static void setDeploymentPolicyIdToChildCartridgeContexts(
+ Map<String, String> aliasToDeploymentPolicyIdMap, String deploymentPolicyId, CartridgeContext[] cartridgeContexts) {
+
+ if (cartridgeContexts != null && cartridgeContexts.length != 0) {
+ for (CartridgeContext cartridgeContext : cartridgeContexts) {
+ if (cartridgeContext != null) {
+ aliasToDeploymentPolicyIdMap.put(cartridgeContext.getSubscribableInfoContext().getAlias(), deploymentPolicyId);
+ }
+ }
+ }
+ }
+
+ private static void setDeploymentPolicyIdToChildGroupContexts(
+ Map<String, String> aliasToDeploymentPolicyIdMap, String deploymentPolicyId, GroupContext[] groupContexts) {
+
+ if (groupContexts != null && groupContexts.length != 0) {
+ for (GroupContext groupContext : groupContexts) {
+ if (groupContext != null) {
+ if (groupContext.getCartridgeContexts() != null && groupContext.getCartridgeContexts().length != 0) {
+ setDeploymentPolicyIdToChildCartridgeContexts(aliasToDeploymentPolicyIdMap, deploymentPolicyId, groupContext.getCartridgeContexts());
+ }
+ if (groupContext.getGroupContexts() != null && groupContext.getGroupContexts().length != 0) {
+ setDeploymentPolicyIdToChildGroupContexts(aliasToDeploymentPolicyIdMap, deploymentPolicyId, groupContext.getGroupContexts());
+ }
+ }
+ }
+ }
+ }
+
+// public static LbClusterMonitor getLbClusterMonitor(Cluster cluster) throws PolicyValidationException, PartitionValidationException {
+// if (null == cluster) {
+// return null;
+// }
+//
+// String autoscalePolicyName = cluster.getAutoscalePolicyName();
+// String deploymentPolicyName = cluster.getDeploymentPolicyName();
+//
+// if (log.isDebugEnabled()) {
+// log.debug("Deployment policy name: " + deploymentPolicyName);
+// log.debug("Autoscaler policy name: " + autoscalePolicyName);
+// }
+//
+// AutoscalePolicy policy =
+// PolicyManager.getInstance()
+// .getAutoscalePolicy(autoscalePolicyName);
+// DeploymentPolicy deploymentPolicy =
+// PolicyManager.getInstance()
+// .getDeploymentPolicy(deploymentPolicyName);
+//
+// if (deploymentPolicy == null) {
+// String msg = "Deployment Policy is null. Policy name: " + deploymentPolicyName;
+// log.error(msg);
+// throw new PolicyValidationException(msg);
+// }
+//
+// Partition[] allPartitions = deploymentPolicy.getAllPartitions();
+// if (allPartitions == null) {
+// String msg =
+// "Deployment Policy's Partitions are null. Policy name: " +
+// deploymentPolicyName;
+// log.error(msg);
+// throw new PolicyValidationException(msg);
+// }
+//
+// try {
+// validateExistenceOfPartions(allPartitions);
+// } catch (InvalidPartitionException e) {
+// String msg = "Deployment Policy is invalid. Policy name: " + deploymentPolicyName;
+// log.error(msg, e);
+// throw new PolicyValidationException(msg, e);
+// }
+//
+// CloudControllerClient.getInstance()
+// .validateDeploymentPolicy(cluster.getServiceName(),
+// allPartitions);
+//
+// LbClusterMonitor clusterMonitor =
+// new LbClusterMonitor(cluster.getClusterId(),
+// cluster.getServiceName(),
+// deploymentPolicy, policy);
+// fNetworkPartitionroup partitionGroup: deploymentPoliNetworkPartitionnGroups()){
+//
+// NetworkPartitionContext networkPartitionContext
+// = PartitionManager.getInstance().getNetworkPartitionLbHolder(partitionGroup.getNetworkPartitionId());
+// clusterMonitor.addNetworkPartitionCtxt(networkPartitionContext);
+// }
+// return null;
+// }
+
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/test/resources/test-minimum-autoscaler-rule.drl
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/test/resources/test-minimum-autoscaler-rule.drl b/components/org.apache.stratos.autoscaler/src/test/resources/test-minimum-autoscaler-rule.drl
index d475524..fca3739 100644
--- a/components/org.apache.stratos.autoscaler/src/test/resources/test-minimum-autoscaler-rule.drl
+++ b/components/org.apache.stratos.autoscaler/src/test/resources/test-minimum-autoscaler-rule.drl
@@ -35,7 +35,6 @@ import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionCont
import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
import org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator;
import org.apache.commons.logging.Log;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy;
import org.apache.stratos.cloud.controller.stub.domain.Partition;
import org.apache.stratos.cloud.controller.stub.domain.MemberContext;
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.autoscaler/src/test/resources/test-terminating-obsoleted-members-rule.drl
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/test/resources/test-terminating-obsoleted-members-rule.drl b/components/org.apache.stratos.autoscaler/src/test/resources/test-terminating-obsoleted-members-rule.drl
index a536ec7c..616cc3c 100644
--- a/components/org.apache.stratos.autoscaler/src/test/resources/test-terminating-obsoleted-members-rule.drl
+++ b/components/org.apache.stratos.autoscaler/src/test/resources/test-terminating-obsoleted-members-rule.drl
@@ -35,7 +35,6 @@ import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionCont
import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
import org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator;
import org.apache.commons.logging.Log;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy;
import org.apache.stratos.cloud.controller.stub.domain.Partition;
import org.apache.stratos.cloud.controller.stub.domain.MemberContext;
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/DeploymentPolicy.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/DeploymentPolicy.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/DeploymentPolicy.java
index 1bc3dfe..275d544 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/DeploymentPolicy.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/DeploymentPolicy.java
@@ -46,6 +46,38 @@ public class DeploymentPolicy implements Serializable{
public void setNetworkPartitionsRef(NetworkPartitionRef[] applicationLevelNetworkPartitions) {
this.applicationLevelNetworkPartitions = applicationLevelNetworkPartitions;
}
+
+ /**
+ * Get network partition reference object by network partition id.
+ * @param networkPartitionId
+ * @return the {@link NetworkPartitionRef}
+ */
+ public NetworkPartitionRef getNetworkPartitionRefByNetworkPartitionId(String networkPartitionId) {
+ if (applicationLevelNetworkPartitions != null) {
+ for (NetworkPartitionRef networkPartitionRef : applicationLevelNetworkPartitions) {
+ if (networkPartitionRef.getId().equals(networkPartitionId)) {
+ return networkPartitionRef;
+ }
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Get partition references by network partition id.
+ * @param networkPartitionId
+ * @return an array of {@link PartitionRef}
+ */
+ public PartitionRef[] getPartitionRefsByNetworkPartitionId(String networkPartitionId) {
+ if (applicationLevelNetworkPartitions != null) {
+ for (NetworkPartitionRef networkPartitionRef : applicationLevelNetworkPartitions) {
+ if (networkPartitionRef.getId().equals(networkPartitionId)) {
+ return networkPartitionRef.getPartitions();
+ }
+ }
+ }
+ return null;
+ }
public String toString() {
return String.format("{ deployment-policy-id : %s, network-partitions : %s", deploymentPolicyID,
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/NetworkPartitionRef.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/NetworkPartitionRef.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/NetworkPartitionRef.java
index 990d34f..92b906a 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/NetworkPartitionRef.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/domain/NetworkPartitionRef.java
@@ -59,6 +59,22 @@ public class NetworkPartitionRef implements Serializable{
this.partitions = partitions;
}
+ /**
+ * Get partition reference by partition id
+ * @param partitionId
+ * @return {@link PartitionRef}
+ */
+ public PartitionRef getPartitionRef(String partitionId) {
+ if (partitions != null && partitions.length != 0) {
+ for (PartitionRef partitionRef : partitions) {
+ if (partitionRef.getId().equals(partitionId)) {
+ return partitionRef;
+ }
+ }
+ }
+ return null;
+ }
+
@Override
public String toString() {
return String.format("{ network-partition-id : %s, partition-algo : %s, partitions : %s }", id, partitionAlgo, Arrays.toString(partitions));
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/AutoscalerServiceClient.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/AutoscalerServiceClient.java b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/AutoscalerServiceClient.java
index 3a23c4d..6670f73 100644
--- a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/AutoscalerServiceClient.java
+++ b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/AutoscalerServiceClient.java
@@ -25,12 +25,9 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.stub.*;
import org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy;
-import org.apache.stratos.autoscaler.stub.deployment.partition.NetworkPartition;
import org.apache.stratos.autoscaler.stub.deployment.policy.ApplicationPolicy;
-import org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy;
import org.apache.stratos.autoscaler.stub.pojo.ApplicationContext;
import org.apache.stratos.autoscaler.stub.pojo.ServiceGroup;
-import org.apache.stratos.common.beans.policy.deployment.ApplicationPolicyBean;
import org.apache.stratos.common.constants.StratosConstants;
import java.rmi.RemoteException;
@@ -92,10 +89,6 @@ public class AutoscalerServiceClient {
return stub.getAutoscalingPolicy(autoscalingPolicyId);
}
- public org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy getDeploymentPolicy(String deploymentPolicyId) throws RemoteException {
- return stub.getDeploymentPolicy(deploymentPolicyId);
- }
-
public void addApplication(ApplicationContext applicationContext) throws AutoscalerServiceApplicationDefinitionExceptionException, RemoteException {
stub.addApplication(applicationContext);
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java
index 2e20ca6..9e05242 100644
--- a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java
+++ b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/client/CloudControllerServiceClient.java
@@ -230,6 +230,13 @@ public class CloudControllerServiceClient {
public DeploymentPolicy[] getDeploymentPolicies() throws RemoteException{
return stub.getDeploymentPolicies();
}
+
+ public void validateDeploymentPolicy(String cartridgeType, Partition[] partitions)
+ throws RemoteException,
+ CloudControllerServiceInvalidPartitionExceptionException,
+ CloudControllerServiceInvalidCartridgeTypeExceptionException {
+ stub.validateDeploymentPolicy(cartridgeType, partitions);
+ }
public void addNetworkPartition(NetworkPartition networkPartition) throws RemoteException,
CloudControllerServiceNetworkPartitionAlreadyExistsExceptionException {
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV40Utils.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV40Utils.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV40Utils.java
index 43cb05f..957a8e0 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV40Utils.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV40Utils.java
@@ -23,7 +23,6 @@ import org.apache.axis2.context.ConfigurationContext;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.stratos.autoscaler.stub.AutoscalerServiceInvalidPolicyExceptionException;
-import org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy;
import org.apache.stratos.cloud.controller.stub.CloudControllerServiceCartridgeAlreadyExistsExceptionException;
import org.apache.stratos.cloud.controller.stub.CloudControllerServiceInvalidCartridgeDefinitionExceptionException;
import org.apache.stratos.cloud.controller.stub.CloudControllerServiceInvalidCartridgeTypeExceptionException;
@@ -109,25 +108,25 @@ public class StratosApiV40Utils {
return stratosApiResponse;
}
- @SuppressWarnings("unused")
- private static DeploymentPolicy[] intersection(
- DeploymentPolicy[] cartridgeDepPolicies,
- DeploymentPolicy[] lbCartridgeDepPolicies) {
-
- List<DeploymentPolicy> commonPolicies =
- new ArrayList<DeploymentPolicy>();
- for (DeploymentPolicy policy1
- : cartridgeDepPolicies) {
- for (DeploymentPolicy policy2
- : lbCartridgeDepPolicies) {
- if(policy1.equals(policy2)) {
- commonPolicies.add(policy1);
- }
- }
-
- }
- return commonPolicies.toArray(new DeploymentPolicy[0]);
- }
+// @SuppressWarnings("unused")
+// private static DeploymentPolicy[] intersection(
+// DeploymentPolicy[] cartridgeDepPolicies,
+// DeploymentPolicy[] lbCartridgeDepPolicies) {
+//
+// List<DeploymentPolicy> commonPolicies =
+// new ArrayList<DeploymentPolicy>();
+// for (DeploymentPolicy policy1
+// : cartridgeDepPolicies) {
+// for (DeploymentPolicy policy2
+// : lbCartridgeDepPolicies) {
+// if(policy1.equals(policy2)) {
+// commonPolicies.add(policy1);
+// }
+// }
+//
+// }
+// return commonPolicies.toArray(new DeploymentPolicy[0]);
+// }
static ApiResponseBean undeployCartridge(String cartridgeType) throws RestAPIException {
@@ -319,13 +318,13 @@ public class StratosApiV40Utils {
return ObjectConverter.convertStubAutoscalePolicyToAutoscalePolicy(autoscalePolicy);
}
- public static DeploymentPolicyBean getDeploymentPolicy(String deploymentPolicyId) throws RestAPIException {
-
- DeploymentPolicy deploymentPolicy = null;
-
-
- return null;
- }
+// public static DeploymentPolicyBean getDeploymentPolicy(String deploymentPolicyId) throws RestAPIException {
+//
+// DeploymentPolicy deploymentPolicy = null;
+//
+//
+// return null;
+// }
static CartridgeBean getAvailableCartridgeInfo(String cartridgeType, Boolean multiTenant, ConfigurationContext configurationContext) throws RestAPIException {
List<CartridgeBean> cartridges = getAvailableCartridges(null, multiTenant, configurationContext);
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
index 7ed63f1..47144d0 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java
@@ -1015,9 +1015,12 @@ public class StratosApiV41Utils {
log.error(message);
throw new RestAPIException(message);
}
-
- autoscalerServiceClient.deployApplication(applicationId,
- ObjectConverter.convertApplicationPolicyBeanToStubAppPolicy(applicationPolicy));
+
+ ApplicationPolicy ccStubApplicationPolicy = ObjectConverter.convertApplicationPolicyBeanToStubAppPolicy(applicationPolicy);
+ // setting the application id since application-policy.json doesn't have this attribute explicitly
+ // reason is deployApplication() api path is containing the application id
+ ccStubApplicationPolicy.setApplicationId(applicationId);
+ autoscalerServiceClient.deployApplication(applicationId, ccStubApplicationPolicy);
if (log.isInfoEnabled()) {
log.info(String.format("Application deployed successfully: [application-id] %s", applicationId));
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
index 06a7d8b..840477b 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
@@ -22,12 +22,8 @@ package org.apache.stratos.rest.endpoint.util.converter;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelNetworkPartition;
-import org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelPartition;
-import org.apache.stratos.autoscaler.stub.deployment.partition.NetworkPartition;
import org.apache.stratos.autoscaler.stub.deployment.policy.ApplicationPolicy;
import org.apache.stratos.autoscaler.stub.deployment.policy.ApplicationPolicyNetworkPartitionReference;
-import org.apache.stratos.autoscaler.stub.deployment.policy.ChildPolicy;
import org.apache.stratos.autoscaler.stub.pojo.*;
import org.apache.stratos.autoscaler.stub.pojo.Dependencies;
import org.apache.stratos.autoscaler.stub.pojo.ServiceGroup;
@@ -46,7 +42,6 @@ import org.apache.stratos.common.beans.kubernetes.PortRangeBean;
import org.apache.stratos.common.beans.partition.*;
import org.apache.stratos.common.beans.policy.autoscale.*;
import org.apache.stratos.common.beans.policy.deployment.ApplicationPolicyBean;
-import org.apache.stratos.common.beans.policy.deployment.ChildPolicyBean;
import org.apache.stratos.common.beans.policy.deployment.DeploymentPolicyBean;
import org.apache.stratos.common.beans.topology.*;
import org.apache.stratos.common.util.CommonUtil;
@@ -375,80 +370,6 @@ public class ObjectConverter {
return deploymentPolicy;
}
- private static ChildPolicyBean
- convertStubChildPolicyToChildPolicy(ChildPolicy stubChildDeploymentPolicy) {
- if(stubChildDeploymentPolicy == null) {
- return null;
- }
- ChildPolicyBean childPolicyBean = new
- ChildPolicyBean();
- childPolicyBean.setAlias(stubChildDeploymentPolicy.getAlias());
- if(stubChildDeploymentPolicy.getChildLevelNetworkPartitions() != null) {
- List<ChildLevelNetworkPartitionBean> networkPartitionList
- = new ArrayList<ChildLevelNetworkPartitionBean>();
- for(org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelNetworkPartition
- stubChildLevelNetworkPartition : stubChildDeploymentPolicy.getChildLevelNetworkPartitions()) {
- networkPartitionList.add(convertStubChildLevelNetworkPartitionToChildLevelNetworkPartition(stubChildLevelNetworkPartition));
- }
- childPolicyBean.setNetworkPartition(networkPartitionList);
- }
- return childPolicyBean;
- }
-
- private static ChildLevelNetworkPartitionBean
- convertStubChildLevelNetworkPartitionToChildLevelNetworkPartition(
- ChildLevelNetworkPartition stubChildLevelNetworkPartition) {
- if(stubChildLevelNetworkPartition == null) {
- return null;
- }
- ChildLevelNetworkPartitionBean childLevelNetworkPartition =
- new ChildLevelNetworkPartitionBean();
- childLevelNetworkPartition.setId(stubChildLevelNetworkPartition.getId());
- childLevelNetworkPartition.setPartitionAlgo(stubChildLevelNetworkPartition.getPartitionAlgo());
- if(stubChildLevelNetworkPartition.getChildLevelPartitions() != null) {
- List<ChildLevelPartitionBean> partitionList =
- new ArrayList<ChildLevelPartitionBean>();
- for(org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelPartition stubChildLevelPartition : stubChildLevelNetworkPartition.getChildLevelPartitions()) {
- partitionList.add(convertStubChildLevelPartitionToChildLevelPartition(stubChildLevelPartition));
- }
- childLevelNetworkPartition.setPartitions(partitionList);
- }
- return childLevelNetworkPartition;
- }
-
- private static ChildLevelPartitionBean
- convertStubChildLevelPartitionToChildLevelPartition(ChildLevelPartition stubChildLevelPartition) {
- if(stubChildLevelPartition == null) {
- return null;
- }
- ChildLevelPartitionBean childLevelPartition =
- new ChildLevelPartitionBean();
- childLevelPartition.setId(stubChildLevelPartition.getPartitionId());
- childLevelPartition.setMax(stubChildLevelPartition.getMax());
- return childLevelPartition;
- }
-
- public static NetworkPartitionBean convertStubNetworkPartitionToNetworkPartition(
- org.apache.stratos.autoscaler.stub.deployment.partition.NetworkPartition stubNetworkPartition) {
- if(stubNetworkPartition == null) {
- return null;
- }
-
- NetworkPartitionBean networkPartition = new NetworkPartitionBean();
- networkPartition.setId(stubNetworkPartition.getId());
- if(stubNetworkPartition.getPartitions() != null) {
- List<PartitionBean> partitionList = new ArrayList<PartitionBean>();
- for(org.apache.stratos.autoscaler.stub.deployment.partition.Partition stubPartition :
- stubNetworkPartition.getPartitions()) {
- if(stubPartition != null) {
- partitionList.add(convertStubPartitionToPartition(stubPartition));
- }
- }
- networkPartition.setPartitions(partitionList);
- }
- return networkPartition;
- }
-
public static NetworkPartitionBean convertCCStubNetworkPartitionToNetworkPartition(
org.apache.stratos.cloud.controller.stub.domain.NetworkPartition stubNetworkPartition) {
if(stubNetworkPartition == null) {
@@ -500,24 +421,6 @@ public class ObjectConverter {
return applicationPolicyBean;
}
- public static org.apache.stratos.autoscaler.stub.deployment.partition.Partition convertToCCPartitionPojo
- (PartitionBean partitionBean) {
-
- org.apache.stratos.autoscaler.stub.deployment.partition.Partition partition = new
- org.apache.stratos.autoscaler.stub.deployment.partition.Partition();
-
- partition.setId(partitionBean.getId());
- partition.setDescription(partitionBean.getDescription());
- partition.setIsPublic(partitionBean.isPublic());
- partition.setProvider(partitionBean.getProvider());
-
- if (partitionBean.getProperty() != null && !partitionBean.getProperty().isEmpty()) {
- partition.setProperties(getASProperties(partitionBean.getProperty()));
- }
-
- return partition;
- }
-
public static Partition convertPartitionToCCPartitionPojo(PartitionBean partitionBean) {
Partition partition = new Partition();
@@ -580,28 +483,6 @@ public class ObjectConverter {
return properties;
}
- private static PartitionBean convertStubPartitionToPartition(org.apache.stratos.autoscaler.stub.deployment.partition.Partition stubPartition) {
- if(stubPartition == null) {
- return null;
- }
- PartitionBean partition = new PartitionBean();
- partition.setId(stubPartition.getId());
- partition.setPublic(stubPartition.getIsPublic());
- partition.setDescription(stubPartition.getDescription());
- partition.setProvider(stubPartition.getProvider());
- partition.setKubernetesClusterId(stubPartition.getKubernetesClusterId());
- if(stubPartition.getProperties() != null) {
- List<org.apache.stratos.common.beans.cartridge.PropertyBean> propertyBeanList = new ArrayList<org.apache.stratos.common.beans.cartridge.PropertyBean>();
- for(org.apache.stratos.autoscaler.stub.Property stubProperty : stubPartition.getProperties().getProperties()) {
- if(stubProperty != null) {
- propertyBeanList.add(convertStubPropertyToPropertyBean(stubProperty));
- }
- }
- partition.setProperty(propertyBeanList);
- }
- return partition;
- }
-
private static PartitionBean convertCCStubPartitionToPartition(Partition stubPartition) {
if(stubPartition == null) {
return null;
@@ -636,33 +517,6 @@ public class ObjectConverter {
return propertyBean;
}
- private static org.apache.stratos.autoscaler.stub.deployment.partition.NetworkPartition[]
- convertNetworkPartitionsToStubNetworkPartitions(List<NetworkPartitionBean> networkPartitionBeans) {
-
- org.apache.stratos.autoscaler.stub.deployment.partition.NetworkPartition[]
- appNWPartitions = new
- org.apache.stratos.autoscaler.stub.deployment.partition.NetworkPartition
- [networkPartitionBeans.size()];
-
- for (int i = 0; i < networkPartitionBeans.size(); i++) {
- appNWPartitions[i] = convertNetworkPartitionToStubNetworkPartition(networkPartitionBeans.get(i));
- }
-
- return appNWPartitions;
- }
-
- public static NetworkPartition convertNetworkPartitionToStubNetworkPartition(NetworkPartitionBean networkPartitionBean) {
-
- org.apache.stratos.autoscaler.stub.deployment.partition.NetworkPartition networkPartition =
- new NetworkPartition();
- networkPartition.setId(networkPartitionBean.getId());
- networkPartition.setKubernetesClusterId(networkPartitionBean.getKubernetesClusterId());
- if (networkPartitionBean.getPartitions() != null && !networkPartitionBean.getPartitions().isEmpty()) {
- networkPartition.setPartitions(convertToCCPartitionPojos(networkPartitionBean.getPartitions()));
- }
- return networkPartition;
- }
-
public static org.apache.stratos.cloud.controller.stub.domain.NetworkPartition convertNetworkPartitionToCCStubNetworkPartition(NetworkPartitionBean networkPartitionBean) {
org.apache.stratos.cloud.controller.stub.domain.NetworkPartition networkPartition = new org.apache.stratos.cloud.controller.stub.domain.NetworkPartition();
@@ -703,22 +557,6 @@ public class ObjectConverter {
return networkPartitionRefBeans;
}
- private static ChildLevelNetworkPartition[] convertToCCChildNetworkPartition(List<ChildLevelNetworkPartitionBean> networkPartitions) {
-
- ChildLevelNetworkPartition[] childLevelNetworkPartitions = new ChildLevelNetworkPartition[networkPartitions.size()];
-
- for (int i = 0; i < networkPartitions.size(); i++) {
- ChildLevelNetworkPartition childLevelNetworkPartition = new ChildLevelNetworkPartition();
- childLevelNetworkPartition.setId(networkPartitions.get(i).getId());
- childLevelNetworkPartition.setPartitionAlgo(networkPartitions.get(i).getPartitionAlgo());
- childLevelNetworkPartition.setChildLevelPartitions(convertToCCChildPartitionPojos(networkPartitions.get(i).getPartitions()));
-
- childLevelNetworkPartitions[i] = childLevelNetworkPartition;
- }
-
- return childLevelNetworkPartitions;
- }
-
public static ClusterBean convertClusterToClusterBean(Cluster cluster, String alias) {
ClusterBean clusterBean = new
ClusterBean();
@@ -905,21 +743,6 @@ public class ObjectConverter {
return partitionRefBeans;
}
- private static ChildLevelPartition[] convertToCCChildPartitionPojos
- (List<ChildLevelPartitionBean> partitionList) {
-
- ChildLevelPartition[] childLevelPartitions = new ChildLevelPartition[partitionList.size()];
- for (int i = 0; i < partitionList.size(); i++) {
- ChildLevelPartition childLevelPartition = new ChildLevelPartition();
- childLevelPartition.setPartitionId(partitionList.get(i).getId());
- childLevelPartition.setMax(partitionList.get(i).getMax());
-
- childLevelPartitions[i] = childLevelPartition;
- }
-
- return childLevelPartitions;
- }
-
public static PartitionBean[] populatePartitionPojos(org.apache.stratos.cloud.controller.stub.domain.Partition[]
partitions) {
@@ -1037,24 +860,6 @@ public class ObjectConverter {
return loadThresholdBean;
}
- public static NetworkPartitionBean[] convertStubNetworkPartitionsToNetworkPartitions(
- org.apache.stratos.autoscaler.stub.deployment.partition.NetworkPartition[] partitionGroups) {
-
- NetworkPartitionBean[] networkPartitionGroupsBeans;
- if (partitionGroups == null) {
- networkPartitionGroupsBeans = new NetworkPartitionBean[0];
- return networkPartitionGroupsBeans;
- }
-
- networkPartitionGroupsBeans = new NetworkPartitionBean[partitionGroups.length];
-
- for (int i = 0; i < partitionGroups.length; i++) {
- networkPartitionGroupsBeans[i] = convertStubNetworkPartitionToNetworkPartition(partitionGroups[i]);
- }
-
- return networkPartitionGroupsBeans;
- }
-
public static NetworkPartitionBean[] convertCCStubNetworkPartitionsToNetworkPartitions(
org.apache.stratos.cloud.controller.stub.domain.NetworkPartition[] partitionGroups) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/products/stratos/modules/distribution/src/main/conf/drools/mincheck.drl
----------------------------------------------------------------------
diff --git a/products/stratos/modules/distribution/src/main/conf/drools/mincheck.drl b/products/stratos/modules/distribution/src/main/conf/drools/mincheck.drl
index 360b522..4cd5bc4 100755
--- a/products/stratos/modules/distribution/src/main/conf/drools/mincheck.drl
+++ b/products/stratos/modules/distribution/src/main/conf/drools/mincheck.drl
@@ -35,7 +35,6 @@ import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionCont
import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
import org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator;
import org.apache.commons.logging.Log;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy;
import org.apache.stratos.cloud.controller.stub.domain.Partition;
import org.apache.stratos.cloud.controller.stub.domain.MemberContext;
import org.apache.stratos.autoscaler.context.cluster.ClusterInstanceContext;
http://git-wip-us.apache.org/repos/asf/stratos/blob/8cf2f9f7/products/stratos/modules/distribution/src/main/conf/drools/obsoletecheck.drl
----------------------------------------------------------------------
diff --git a/products/stratos/modules/distribution/src/main/conf/drools/obsoletecheck.drl b/products/stratos/modules/distribution/src/main/conf/drools/obsoletecheck.drl
index f119d34..27d958a 100755
--- a/products/stratos/modules/distribution/src/main/conf/drools/obsoletecheck.drl
+++ b/products/stratos/modules/distribution/src/main/conf/drools/obsoletecheck.drl
@@ -35,7 +35,6 @@ import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionCont
import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
import org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator;
import org.apache.commons.logging.Log;
-import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy;
import org.apache.stratos.cloud.controller.stub.domain.Partition;
import org.apache.stratos.cloud.controller.stub.domain.MemberContext;