You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by im...@apache.org on 2014/12/17 10:00:52 UTC
[1/5] stratos git commit: Removing root element from JSON response
objects in rest api
Repository: stratos
Updated Branches:
refs/heads/4.1.0-test d22d02572 -> 268db7b63
Removing root element from JSON response objects in rest api
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/9f571fb1
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/9f571fb1
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/9f571fb1
Branch: refs/heads/4.1.0-test
Commit: 9f571fb151edbe94ca6d3fa266d94669ee3bde6f
Parents: d22d025
Author: Imesh Gunaratne <im...@apache.org>
Authored: Wed Dec 17 14:19:50 2014 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Wed Dec 17 14:19:50 2014 +0530
----------------------------------------------------------------------
.../src/main/webapp/api/WEB-INF/cxf-servlet.xml | 1 +
1 file changed, 1 insertion(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/9f571fb1/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 7543f7c..a487594 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
@@ -101,6 +101,7 @@
<bean id="jsonProvider" class="org.apache.cxf.jaxrs.provider.json.JSONProvider">
<property name="supportUnwrapped" value="true"/>
<property name="serializeAsArray" value="true"/>
+ <property name="dropRootElement" value="true" />
<property name="dropCollectionWrapperElement" value="true"/>
<property name="arrayKeys">
<list>
[2/5] stratos git commit: Introducing new rest api method GET
/applications/{applicationId}/deploymentPolicy
Posted by im...@apache.org.
Introducing new rest api method GET /applications/{applicationId}/deploymentPolicy
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/38eed54e
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/38eed54e
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/38eed54e
Branch: refs/heads/4.1.0-test
Commit: 38eed54ea6262dd1f8eac4512e9106c5840d1351
Parents: 9f571fb
Author: Imesh Gunaratne <im...@apache.org>
Authored: Wed Dec 17 14:29:16 2014 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Wed Dec 17 14:29:16 2014 +0530
----------------------------------------------------------------------
.../autoscaler/api/AutoScalerServiceImpl.java | 2 +-
.../autoscaler/pojo/policy/PolicyManager.java | 41 +----
.../rest/endpoint/api/StratosApiV41.java | 14 ++
.../rest/endpoint/api/StratosApiV41Utils.java | 45 ++---
.../endpoint/util/converter/PojoConverter.java | 178 ++++++++++++++++---
5 files changed, 196 insertions(+), 84 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/38eed54e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
index b0e34cb..f5ac2e8 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/api/AutoScalerServiceImpl.java
@@ -203,7 +203,7 @@ public class AutoScalerServiceImpl implements AutoScalerServiceInterface {
ApplicationBuilder.handleApplicationCreated(application, applicationParser.getApplicationClusterContexts());
try {
- String policyId = PolicyManager.getInstance().deployDeploymentPolicy(policy);
+ PolicyManager.getInstance().addDeploymentPolicy(policy);
} catch (InvalidPolicyException e) {
String message = "Could not deploy application: [application-id] " + policy.getApplicationId();
log.error(message, e);
http://git-wip-us.apache.org/repos/asf/stratos/blob/38eed54e/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/PolicyManager.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/PolicyManager.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/PolicyManager.java
index f4ad47f..d4ab989 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/PolicyManager.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/PolicyManager.java
@@ -70,7 +70,7 @@ public class PolicyManager {
this.addASPolicyToInformationModel(policy);
RegistryManager.getInstance().persistAutoscalerPolicy(policy);
if (log.isInfoEnabled()) {
- log.info(String.format("Autoscaling policy is deployed successfully: [id] %s", policy.getId()));
+ log.info(String.format("Autoscaling policy is added successfully: [id] %s", policy.getId()));
}
return true;
}
@@ -88,37 +88,14 @@ public class PolicyManager {
}
// Add the deployment policy to information model and persist.
- public String deployDeploymentPolicy(DeploymentPolicy policy) throws InvalidPolicyException {
- String policyId = addDeploymentPolicyToInformationModel(policy);
+ public void addDeploymentPolicy(DeploymentPolicy policy) throws InvalidPolicyException {
+ addDeploymentPolicyToInformationModel(policy);
RegistryManager.getInstance().persistDeploymentPolicy(policy);
if (log.isInfoEnabled()) {
- log.info(String.format("Deployment policy is deployed successfully: [id] %s", policyId));
+ log.info(String.format("Deployment policy is added successfully: [application-id] %s",
+ policy.getApplicationId()));
}
- return policyId;
- }
-
- public boolean updateDeploymentPolicy(DeploymentPolicy policy) throws InvalidPolicyException {
- if(StringUtils.isEmpty(policy.getApplicationId())){
- throw new AutoScalerException("Deploying policy id cannot be empty");
- }
- try {
- if(log.isInfoEnabled()) {
- log.info(String.format("Updating deployment policy: [id] %s", policy.getApplicationId()));
- }
- fillPartitions(policy);
- } catch (InvalidPartitionException e) {
- log.error(e);
- throw new InvalidPolicyException(String.format("Deployment policy is invalid: [id] %s", policy.getApplicationId()), e);
- }
-
- updateDeploymentPolicyToInformationModel(policy);
- RegistryManager.getInstance().persistDeploymentPolicy(policy);
-
- if (log.isInfoEnabled()) {
- log.info(String.format("Deployment policy is updated successfully: [id] %s", policy.getApplicationId()));
- }
- return true;
}
private void fillPartitions(DeploymentPolicy deploymentPolicy) throws InvalidPartitionException {
@@ -211,11 +188,9 @@ public class PolicyManager {
}
// Add the deployment policy to As in memmory information model. Does not persist.
- public String addDeploymentPolicyToInformationModel(DeploymentPolicy policy) throws InvalidPolicyException {
+ public void addDeploymentPolicyToInformationModel(DeploymentPolicy policy) throws InvalidPolicyException {
if (StringUtils.isEmpty(policy.getApplicationId())) {
- // id = application id + random string
- String id = policy.getApplicationId() + UUID.randomUUID().getLeastSignificantBits();
- policy.setApplicationId(id);
+ throw new RuntimeException("Application id is not defined in deployment policy");
}
if (!deploymentPolicyListMap.containsKey(policy.getApplicationId())) {
if (log.isDebugEnabled()) {
@@ -227,8 +202,6 @@ public class PolicyManager {
log.error(errMsg);
throw new InvalidPolicyException(errMsg);
}
-
- return policy.getApplicationId();
}
public void updateDeploymentPolicyToInformationModel(DeploymentPolicy policy) throws InvalidPolicyException {
http://git-wip-us.apache.org/repos/asf/stratos/blob/38eed54e/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
index 8c12dd8..a336ea1 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41.java
@@ -404,6 +404,20 @@ public class StratosApiV41 extends AbstractApi {
StratosApiV41Utils.deployApplication(applicationId, deploymentPolicy);
return Response.accepted().build();
}
+
+ @GET
+ @Path("/applications/{applicationId}/deploymentPolicy")
+ @Produces("application/json")
+ @Consumes("application/json")
+ @AuthorizationAction("/permission/protected/manage/monitor/tenants")
+ public Response getApplicationDeploymentPolicy(@PathParam("applicationId") String applicationId)
+ throws RestAPIException {
+ DeploymentPolicy deploymentPolicy = StratosApiV41Utils.getDeploymentPolicy(applicationId);
+ if(deploymentPolicy == null) {
+ return Response.status(Response.Status.NOT_FOUND).build();
+ }
+ return Response.ok(deploymentPolicy).build();
+ }
/**
* Undeploy application.
http://git-wip-us.apache.org/repos/asf/stratos/blob/38eed54e/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 db099b8..66c5af4 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
@@ -509,10 +509,8 @@ public class StratosApiV41Utils {
}
private static AutoscalerServiceClient getAutoscalerServiceClient() throws RestAPIException {
-
try {
return AutoscalerServiceClient.getServiceClient();
-
} catch (AxisFault axisFault) {
String errorMsg = "Error while getting AutoscalerServiceClient instance to connect to the "
+ "Autoscaler. Cause: " + axisFault.getMessage();
@@ -607,31 +605,18 @@ public class StratosApiV41Utils {
return PojoConverter.populateAutoscalePojo(autoscalePolicy);
}
- // Util methods for Deployment policies
public static org.apache.stratos.common.beans.autoscaler.policy.deployment.DeploymentPolicy
- getDeploymentPolicy(String deploymentPolicyId) throws RestAPIException {
-
- DeploymentPolicy deploymentPolicy = null;
- AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient();
- if (autoscalerServiceClient != null) {
- try {
- deploymentPolicy = autoscalerServiceClient.getDeploymentPolicy(deploymentPolicyId);
-
- } catch (RemoteException e) {
- String errorMsg = "Error while getting deployment policy with id " +
- deploymentPolicyId + ". Cause: " + e.getMessage();
- log.error(errorMsg, e);
- throw new RestAPIException(errorMsg, e);
- }
- }
+ getDeploymentPolicy(String applicationId) throws RestAPIException {
- if (deploymentPolicy == null) {
- String errorMsg = "Cannot find a matching deployment policy for [id] " + deploymentPolicyId;
- log.error(errorMsg);
- throw new RestAPIException(errorMsg);
+ try {
+ AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient();
+ DeploymentPolicy deploymentPolicy = autoscalerServiceClient.getDeploymentPolicy(applicationId);
+ return PojoConverter.convertStubDeploymentPolicyToDeploymentPolicy(deploymentPolicy);
+ } catch (RemoteException e) {
+ String errorMsg = "Could not read deployment policy: [application-id] " + applicationId;
+ log.error(errorMsg, e);
+ throw new RestAPIException(errorMsg, e);
}
-
- return PojoConverter.populateDeploymentPolicyPojo(deploymentPolicy);
}
public static ApplicationLevelNetworkPartition[] getPartitionGroups(String deploymentPolicyId)
@@ -1060,10 +1045,14 @@ public class StratosApiV41Utils {
try {
List<ApplicationDefinition> applicationDefinitions = new ArrayList<ApplicationDefinition>();
ApplicationContext[] applicationContexts = AutoscalerServiceClient.getServiceClient().getApplications();
- for(ApplicationContext applicationContext : applicationContexts) {
- ApplicationDefinition applicationDefinition =
- PojoConverter.convertApplicationContextToApplicationDefinition(applicationContext);
- applicationDefinitions.add(applicationDefinition);
+ if(applicationContexts != null) {
+ for (ApplicationContext applicationContext : applicationContexts) {
+ if(applicationContext != null) {
+ ApplicationDefinition applicationDefinition =
+ PojoConverter.convertApplicationContextToApplicationDefinition(applicationContext);
+ applicationDefinitions.add(applicationDefinition);
+ }
+ }
}
return applicationDefinitions;
} catch (RemoteException e) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/38eed54e/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java
index f95636b..a13c26e 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java
@@ -33,6 +33,7 @@ import org.apache.stratos.common.beans.GroupBean;
import org.apache.stratos.common.beans.autoscaler.partition.ApplicationLevelNetworkPartition;
import org.apache.stratos.common.beans.autoscaler.partition.Partition;
import org.apache.stratos.common.beans.autoscaler.policy.autoscale.*;
+import org.apache.stratos.common.beans.autoscaler.policy.deployment.ApplicationPolicy;
import org.apache.stratos.common.beans.autoscaler.policy.deployment.DeploymentPolicy;
import org.apache.stratos.common.beans.cartridge.definition.*;
import org.apache.stratos.common.beans.cartridge.definition.PropertyBean;
@@ -417,6 +418,151 @@ public class PojoConverter {
return deploymentPolicy;
}
+ public static DeploymentPolicy convertStubDeploymentPolicyToDeploymentPolicy(
+ org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy stubDeploymentPolicy) {
+
+ DeploymentPolicy deploymentPolicy = new DeploymentPolicy();
+
+ deploymentPolicy.setApplicationId(stubDeploymentPolicy.getApplicationId());
+ deploymentPolicy.setDescription(stubDeploymentPolicy.getDescription());
+ deploymentPolicy.setPublic(stubDeploymentPolicy.getIsPublic());
+ if (stubDeploymentPolicy.getApplicationLevelNetworkPartitions() != null) {
+ org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[]
+ networkPartitions = stubDeploymentPolicy.getApplicationLevelNetworkPartitions();
+ if(networkPartitions != null) {
+ deploymentPolicy.setApplicationPolicy(new ApplicationPolicy());
+ List<ApplicationLevelNetworkPartition> networkPartitionList = new ArrayList<ApplicationLevelNetworkPartition>();
+ for(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition
+ networkPartition : networkPartitions) {
+ if(networkPartition != null) {
+ networkPartitionList.add(convertStubNetworkPartitionToNetworkPartition(networkPartition));
+ }
+ }
+ deploymentPolicy.getApplicationPolicy().setNetworkPartition(networkPartitionList);
+ }
+ }
+
+ if (stubDeploymentPolicy.getChildPolicies() != null) {
+ List<org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy> childPolicyList =
+ new ArrayList<org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy>();
+ for(org.apache.stratos.autoscaler.stub.deployment.policy.ChildPolicy stubChildDeploymentPolicy :
+ stubDeploymentPolicy.getChildPolicies()) {
+ if(stubChildDeploymentPolicy != null) {
+ childPolicyList.add(convertStubChildPolicyToChildPolicy(stubChildDeploymentPolicy));
+ }
+ }
+ deploymentPolicy.setChildPolicies(childPolicyList);
+ }
+ return deploymentPolicy;
+ }
+
+ private static org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy
+ convertStubChildPolicyToChildPolicy(ChildPolicy stubChildDeploymentPolicy) {
+ if(stubChildDeploymentPolicy == null) {
+ return null;
+ }
+ org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy childPolicy = new
+ org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy();
+ childPolicy.setChildId(stubChildDeploymentPolicy.getId());
+ if(stubChildDeploymentPolicy.getChildLevelNetworkPartitions() != null) {
+ List<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition> networkPartitionList
+ = new ArrayList<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition>();
+ for(org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelNetworkPartition
+ stubChildLevelNetworkPartition : stubChildDeploymentPolicy.getChildLevelNetworkPartitions()) {
+ networkPartitionList.add(convertStubChildLevelNetworkPartitionToChildLevelNetworkPartition(stubChildLevelNetworkPartition));
+ }
+ childPolicy.setNetworkPartition(networkPartitionList);
+ }
+ return childPolicy;
+ }
+
+ private static org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition
+ convertStubChildLevelNetworkPartitionToChildLevelNetworkPartition(
+ ChildLevelNetworkPartition stubChildLevelNetworkPartition) {
+ if(stubChildLevelNetworkPartition == null) {
+ return null;
+ }
+ org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition childLevelNetworkPartition =
+ new org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition();
+ childLevelNetworkPartition.setId(stubChildLevelNetworkPartition.getId());
+ childLevelNetworkPartition.setPartitionAlgo(stubChildLevelNetworkPartition.getPartitionAlgo());
+ if(stubChildLevelNetworkPartition.getChildLevelPartitions() != null) {
+ List<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition> partitionList =
+ new ArrayList<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition>();
+ for(org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelPartition stubChildLevelPartition : stubChildLevelNetworkPartition.getChildLevelPartitions()) {
+ partitionList.add(convertStubChildLevelPartitionToChildLevelPartition(stubChildLevelPartition));
+ }
+ childLevelNetworkPartition.setPartitions(partitionList);
+ }
+ return childLevelNetworkPartition;
+ }
+
+ private static org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition
+ convertStubChildLevelPartitionToChildLevelPartition(ChildLevelPartition stubChildLevelPartition) {
+ if(stubChildLevelPartition == null) {
+ return null;
+ }
+ org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition childLevelPartition =
+ new org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition();
+ childLevelPartition.setId(stubChildLevelPartition.getPartitionId());
+ childLevelPartition.setMax(stubChildLevelPartition.getMax());
+ return childLevelPartition;
+ }
+
+ private static ApplicationLevelNetworkPartition convertStubNetworkPartitionToNetworkPartition(
+ org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition stubNetworkPartition) {
+ if(stubNetworkPartition == null) {
+ return null;
+ }
+
+ ApplicationLevelNetworkPartition networkPartition = new ApplicationLevelNetworkPartition();
+ networkPartition.setId(stubNetworkPartition.getId());
+ networkPartition.setActiveByDefault(stubNetworkPartition.getActiveByDefault());
+ if(stubNetworkPartition.getPartitions() != null) {
+ List<Partition> partitionList = new ArrayList<Partition>();
+ for(org.apache.stratos.autoscaler.stub.deployment.partition.Partition stubPartition :
+ stubNetworkPartition.getPartitions()) {
+ if(stubPartition != null) {
+ partitionList.add(convertStubPartitionToPartition(stubPartition));
+ }
+ }
+ networkPartition.setPartitions(partitionList);
+ }
+ return networkPartition;
+ }
+
+ private static Partition convertStubPartitionToPartition(org.apache.stratos.autoscaler.stub.deployment.partition.Partition stubPartition) {
+ if(stubPartition == null) {
+ return null;
+ }
+ Partition partition = new Partition();
+ partition.setId(stubPartition.getId());
+ partition.setPublic(stubPartition.getIsPublic());
+ partition.setDescription(stubPartition.getDescription());
+ partition.setProvider(stubPartition.getProvider());
+ if(stubPartition.getProperties() != null) {
+ List<PropertyBean> propertyBeanList = new ArrayList<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 PropertyBean convertStubPropertyToPropertyBean(org.apache.stratos.autoscaler.stub.Property stubProperty) {
+ if(stubProperty == null) {
+ return null;
+ }
+
+ PropertyBean propertyBean = new PropertyBean();
+ propertyBean.setName(stubProperty.getName());
+ propertyBean.setValue(stubProperty.getValue());
+ return propertyBean;
+ }
+
private static org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[] convertToCCPartitionGroup(List<ApplicationLevelNetworkPartition> networkPartitionBeans) {
org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[]
@@ -751,22 +897,14 @@ public class PojoConverter {
public static DeploymentPolicy populateDeploymentPolicyPojo(org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy
deploymentPolicy) {
- DeploymentPolicy deploymentPolicyBean = new DeploymentPolicy();
if (deploymentPolicy == null) {
- return deploymentPolicyBean;
+ return null;
}
+ DeploymentPolicy deploymentPolicyBean = new DeploymentPolicy();
deploymentPolicyBean.setDescription(deploymentPolicy.getDescription());
deploymentPolicyBean.setPublic(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())));
-// }
-
- /*if (deploymentPolicy.getAllPartitions() != null && deploymentPolicy.getAllPartitions().length > 0) {
- deploymentPolicyBean.partition = Arrays.asList(populatePartitionPojos(deploymentPolicy.getAllPartitions()));
- }*/
-
+ deploymentPolicyBean.setApplicationId(deploymentPolicy.getApplicationId());
return deploymentPolicyBean;
}
@@ -1051,7 +1189,7 @@ public class PojoConverter {
// top level Groups
if (applicationDefinition.getComponents().getGroups() != null) {
componentContext.setGroupContexts(
- convertGroupDefinitionsToGroupContexts(applicationDefinition.getComponents().getGroups()));
+ convertGroupDefinitionsToStubGroupContexts(applicationDefinition.getComponents().getGroups()));
}
// top level dependency information
if (applicationDefinition.getComponents().getDependencies() != null) {
@@ -1174,7 +1312,7 @@ public class PojoConverter {
subscribableInfo.setMinMembers(subscribableInfoContext.getMinMembers());
subscribableInfo.setMaxMembers(subscribableInfoContext.getMaxMembers());
subscribableInfo.setPrivateRepo(subscribableInfoContext.getPrivateRepo());
- subscribableInfo.setProperty(convertPropertiesToPropertyBeansList(subscribableInfoContext.getProperties()));
+ subscribableInfo.setProperty(convertStubPropertiesToPropertyBeanList(subscribableInfoContext.getProperties()));
subscribableInfo.setRepoPassword(subscribableInfoContext.getRepoPassword());
subscribableInfo.setRepoUsername(subscribableInfoContext.getRepoUsername());
subscribableInfo.setRepoUrl(subscribableInfoContext.getRepoUrl());
@@ -1182,7 +1320,8 @@ public class PojoConverter {
}
private static List<org.apache.stratos.manager.composite.application.beans.PropertyBean>
- convertPropertiesToPropertyBeansList(org.apache.stratos.autoscaler.stub.Properties properties) {
+ convertStubPropertiesToPropertyBeanList(org.apache.stratos.autoscaler.stub.Properties properties) {
+
List<org.apache.stratos.manager.composite.application.beans.PropertyBean> propertyBeanList =
new ArrayList<org.apache.stratos.manager.composite.application.beans.PropertyBean>();
if((properties != null) && (properties.getProperties() != null)) {
@@ -1225,16 +1364,15 @@ public class PojoConverter {
infoContext.setDeploymentPolicy(subscribableInfo.getDeploymentPolicy());
infoContext.setMaxMembers(subscribableInfo.getMaxMembers());
infoContext.setMinMembers(subscribableInfo.getMinMembers());
- //infoContext.setPrivateRepo(subscribableInfo.getpr);
infoContext.setRepoPassword(subscribableInfo.getRepoPassword());
infoContext.setRepoUrl(subscribableInfo.getRepoUrl());
infoContext.setRepoUsername(subscribableInfo.getRepoUsername());
- infoContext.setProperties(convertProperties(subscribableInfo.getProperty()));
+ infoContext.setProperties(convertPropertyBeansToStubProperties(subscribableInfo.getProperty()));
return infoContext;
}
- private static org.apache.stratos.autoscaler.stub.Properties convertProperties(
+ private static org.apache.stratos.autoscaler.stub.Properties convertPropertyBeansToStubProperties(
List<org.apache.stratos.manager.composite.application.beans.PropertyBean> property) {
org.apache.stratos.autoscaler.stub.Properties prop = new org.apache.stratos.autoscaler.stub.Properties();
if (property != null) {
@@ -1269,7 +1407,7 @@ public class PojoConverter {
}
private static org.apache.stratos.autoscaler.stub.pojo.GroupContext[]
- convertGroupDefinitionsToGroupContexts(List<GroupDefinition> groupDefinitions) {
+ convertGroupDefinitionsToStubGroupContexts(List<GroupDefinition> groupDefinitions) {
GroupContext[] groupContexts = new GroupContext[groupDefinitions.size()];
int i = 0;
@@ -1283,7 +1421,7 @@ public class PojoConverter {
// Groups
if (groupDefinition.getGroups() != null) {
- groupContext.setGroupContexts(convertGroupDefinitionsToGroupContexts(groupDefinition.getGroups()));
+ groupContext.setGroupContexts(convertGroupDefinitionsToStubGroupContexts(groupDefinition.getGroups()));
}
groupContext.setCartridgeContexts(convertCartridgeDefinitionsToCartridgeContexts(groupDefinition.getCartridges()));
@@ -1350,8 +1488,6 @@ public class PojoConverter {
instanceList.add(instance);
}
}
-
return instanceList;
}
-
}
[3/5] stratos git commit: Renaming PojoConverter to ObjectConverter
Posted by im...@apache.org.
http://git-wip-us.apache.org/repos/asf/stratos/blob/268db7b6/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java
deleted file mode 100644
index a13c26e..0000000
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/PojoConverter.java
+++ /dev/null
@@ -1,1493 +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.rest.endpoint.util.converter;
-
-import org.apache.commons.lang.StringUtils;
-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.policy.ChildPolicy;
-import org.apache.stratos.autoscaler.stub.pojo.*;
-import org.apache.stratos.cloud.controller.stub.domain.*;
-import org.apache.stratos.cloud.controller.stub.domain.ServiceGroup;
-import org.apache.stratos.common.Properties;
-import org.apache.stratos.common.Property;
-import org.apache.stratos.common.beans.ApplicationBean;
-import org.apache.stratos.common.beans.GroupBean;
-import org.apache.stratos.common.beans.autoscaler.partition.ApplicationLevelNetworkPartition;
-import org.apache.stratos.common.beans.autoscaler.partition.Partition;
-import org.apache.stratos.common.beans.autoscaler.policy.autoscale.*;
-import org.apache.stratos.common.beans.autoscaler.policy.deployment.ApplicationPolicy;
-import org.apache.stratos.common.beans.autoscaler.policy.deployment.DeploymentPolicy;
-import org.apache.stratos.common.beans.cartridge.definition.*;
-import org.apache.stratos.common.beans.cartridge.definition.PropertyBean;
-import org.apache.stratos.common.beans.kubernetes.KubernetesGroup;
-import org.apache.stratos.common.beans.kubernetes.KubernetesHost;
-import org.apache.stratos.common.beans.kubernetes.KubernetesMaster;
-import org.apache.stratos.common.beans.kubernetes.PortRange;
-import org.apache.stratos.common.beans.subscription.domain.SubscriptionDomainBean;
-import org.apache.stratos.common.beans.topology.Instance;
-import org.apache.stratos.common.beans.topology.Member;
-import org.apache.stratos.common.util.CommonUtil;
-import org.apache.stratos.manager.composite.application.beans.*;
-import org.apache.stratos.manager.deploy.service.Service;
-import org.apache.stratos.manager.grouping.definitions.DependencyDefinitions;
-import org.apache.stratos.manager.grouping.definitions.ServiceGroupDefinition;
-import org.apache.stratos.manager.subscription.SubscriptionDomain;
-import org.apache.stratos.messaging.domain.applications.Application;
-import org.apache.stratos.messaging.domain.applications.Group;
-import org.apache.stratos.messaging.domain.instance.ApplicationInstance;
-import org.apache.stratos.messaging.domain.instance.ClusterInstance;
-import org.apache.stratos.messaging.domain.instance.GroupInstance;
-import org.apache.stratos.messaging.domain.topology.Cluster;
-
-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) {
-
- CartridgeConfig cartridgeConfig = new CartridgeConfig();
-
- cartridgeConfig.setType(cartridgeDefinitionBean.getType());
- cartridgeConfig.setHostName(cartridgeDefinitionBean.getHost());
- cartridgeConfig.setProvider(cartridgeDefinitionBean.getProvider());
- cartridgeConfig.setCategory(cartridgeDefinitionBean.getCategory());
- cartridgeConfig.setVersion(cartridgeDefinitionBean.getVersion());
- cartridgeConfig.setMultiTenant(cartridgeDefinitionBean.isMultiTenant());
- cartridgeConfig.setIsPublic(cartridgeDefinitionBean.isPublic());
- cartridgeConfig.setDisplayName(cartridgeDefinitionBean.getDisplayName());
- cartridgeConfig.setDescription(cartridgeDefinitionBean.getDescription());
- cartridgeConfig.setDefaultAutoscalingPolicy(cartridgeDefinitionBean.getDefaultAutoscalingPolicy());
- cartridgeConfig.setDefaultDeploymentPolicy(cartridgeDefinitionBean.getDefaultDeploymentPolicy());
- cartridgeConfig.setServiceGroup(cartridgeDefinitionBean.getServiceGroup());
- cartridgeConfig.setDeployerType(cartridgeDefinitionBean.getDeployerType());
-
-
- //deployment information
- if (cartridgeDefinitionBean.getDeployment() != null) {
- cartridgeConfig.setBaseDir(cartridgeDefinitionBean.getDeployment().getBaseDir());
- if (cartridgeDefinitionBean.getDeployment().getDir() != null && !cartridgeDefinitionBean.getDeployment().getDir().isEmpty()) {
- cartridgeConfig.setDeploymentDirs(cartridgeDefinitionBean.getDeployment().getDir().
- toArray(new String[cartridgeDefinitionBean.getDeployment().getDir().size()]));
- }
- }
- //port mapping
- if (cartridgeDefinitionBean.getPortMapping() != null && !cartridgeDefinitionBean.getPortMapping().isEmpty()) {
- cartridgeConfig.setPortMappings(getPortMappingsAsArray(cartridgeDefinitionBean.getPortMapping()));
- }
-
- //persistance mapping
- if (cartridgeDefinitionBean.getPersistence() != null) {
- cartridgeConfig.setPersistence(getPersistence(cartridgeDefinitionBean.getPersistence()));
- }
-
- //IaaS
- if (cartridgeDefinitionBean.getIaasProvider() != null && !cartridgeDefinitionBean.getIaasProvider().isEmpty()) {
- cartridgeConfig.setIaasConfigs(getIaasConfigsAsArray(cartridgeDefinitionBean.getIaasProvider()));
- }
- //Properties
- if (cartridgeDefinitionBean.getProperty() != null && !cartridgeDefinitionBean.getProperty().isEmpty()) {
- cartridgeConfig.setProperties(getCCProperties(cartridgeDefinitionBean.getProperty()));
- }
-
- if (cartridgeDefinitionBean.getExportingProperties() != null) {
- List<String> propertiesList = cartridgeDefinitionBean.getExportingProperties();
- String[] propertiesArray = propertiesList.toArray(new String[propertiesList.size()]);
- cartridgeConfig.setExportingProperties(propertiesArray);
- }
-
- if (cartridgeDefinitionBean.getContainer() != null) {
- cartridgeConfig.setContainer(getContainer(cartridgeDefinitionBean.getContainer()));
- }
-
- return cartridgeConfig;
- }
-
- public static ServiceGroup populateServiceGroupPojo(ServiceGroupDefinition serviceGroupDefinition) {
- ServiceGroup servicegroup = new ServiceGroup();
-
- return servicegroup;
- }
-
- private static Container getContainer(ContainerBean container) {
- Container cn = new Container();
- cn.setDockerFileRepo(container.getDockerfileRepo());
- cn.setImageName(container.getImageName());
- //cn.setProperties(getProperties(container.property));
- return cn;
- }
-
- private static LoadbalancerConfig getLBConfig(LoadBalancerBean loadBalancer) {
- LoadbalancerConfig lbConfig = new LoadbalancerConfig();
- lbConfig.setType(loadBalancer.getType());
- if (loadBalancer.getProperty() != null && !loadBalancer.getProperty().isEmpty()) {
- lbConfig.setProperties(getCCProperties(loadBalancer.getProperty()));
- }
- return lbConfig;
- }
-
- private static PortMapping[] getPortMappingsAsArray(List<PortMappingBean> portMappingBeans) {
-
- //convert to an array
- PortMappingBean[] portMappingBeanArray = new PortMappingBean[portMappingBeans.size()];
- portMappingBeans.toArray(portMappingBeanArray);
- PortMapping[] portMappingArray = new PortMapping[portMappingBeanArray.length];
-
- for (int i = 0; i < portMappingBeanArray.length; i++) {
- PortMapping portMapping = new PortMapping();
- portMapping.setProtocol(portMappingBeanArray[i].getProtocol());
- portMapping.setPort(Integer.toString(portMappingBeanArray[i].getPort()));
- portMapping.setProxyPort(Integer.toString(portMappingBeanArray[i].getProxyPort()));
- portMappingArray[i] = portMapping;
- }
-
- return portMappingArray;
- }
-
- private static IaasConfig[] getIaasConfigsAsArray(List<IaasProviderBean> iaasProviderBeans) {
-
- //convert to an array
- IaasProviderBean[] iaasProviderBeansArray = new IaasProviderBean[iaasProviderBeans.size()];
- iaasProviderBeans.toArray(iaasProviderBeansArray);
- IaasConfig[] iaasConfigsArray = new IaasConfig[iaasProviderBeansArray.length];
-
- for (int i = 0; i < iaasProviderBeansArray.length; i++) {
- IaasConfig iaasConfig = new IaasConfig();
- iaasConfig.setType(iaasProviderBeansArray[i].getType());
- iaasConfig.setImageId(iaasProviderBeansArray[i].getImageId());
- iaasConfig.setMaxInstanceLimit(iaasProviderBeansArray[i].getMaxInstanceLimit());
- iaasConfig.setName(iaasProviderBeansArray[i].getName());
- iaasConfig.setClassName(iaasProviderBeansArray[i].getClassName());
- iaasConfig.setCredential(iaasProviderBeansArray[i].getCredential());
- iaasConfig.setIdentity(iaasProviderBeansArray[i].getIdentity());
- iaasConfig.setProvider(iaasProviderBeansArray[i].getProvider());
-
- if (iaasProviderBeansArray[i].getProperty() != null && !iaasProviderBeansArray[i].getProperty().isEmpty()) {
- //set the Properties instance to IaasConfig instance
- iaasConfig.setProperties(getCCProperties(iaasProviderBeansArray[i].getProperty()));
- }
-
- if (iaasProviderBeansArray[i].getNetworkInterfaces() != null && !iaasProviderBeansArray[i].getNetworkInterfaces().isEmpty()) {
- iaasConfig.setNetworkInterfaces(PojoConverter.getNetworkInterfaces(iaasProviderBeansArray[i].getNetworkInterfaces()));
- }
-
- iaasConfigsArray[i] = iaasConfig;
- }
- return iaasConfigsArray;
- }
-
- public static Persistence getPersistence(PersistenceBean persistenceBean) {
- Persistence persistence = new Persistence();
- persistence.setPersistanceRequired(persistenceBean.isRequired());
- VolumeBean[] volumeBean = new VolumeBean[persistenceBean.getVolume().size()];
- persistenceBean.getVolume().toArray(volumeBean);
- Volume[] volumes = new Volume[persistenceBean.getVolume().size()];
- for (int i = 0; i < volumes.length; i++) {
- Volume volume = new Volume();
- volume.setId(volumeBean[i].getId());
- volume.setVolumeId(volumeBean[i].getVolumeId());
- if (StringUtils.isEmpty(volume.getVolumeId())) {
- volume.setSize(Integer.parseInt(volumeBean[i].getSize()));
- }
-
- volume.setDevice(volumeBean[i].getDevice());
- volume.setRemoveOntermination(volumeBean[i].isRemoveOnTermination());
- volume.setMappingPath(volumeBean[i].getMappingPath());
- volume.setSnapshotId(volumeBean[i].getSnapshotId());
-
- volumes[i] = volume;
- }
- persistence.setVolumes(volumes);
- return persistence;
-
- }
-
- public static Properties getProperties(List<PropertyBean> propertyBeans) {
-
- //convert to an array
- PropertyBean[] propertyBeansArray = new PropertyBean[propertyBeans.size()];
- propertyBeans.toArray(propertyBeansArray);
- Property[] propertyArray = new Property[propertyBeansArray.length];
-
- for (int j = 0; j < propertyBeansArray.length; j++) {
- Property property = new Property();
- property.setName(propertyBeansArray[j].getName());
- property.setValue(propertyBeansArray[j].getValue());
- propertyArray[j] = property;
- }
-
- Properties properties = new Properties();
- properties.setProperties(propertyArray);
- return properties;
- }
-
- public static org.apache.stratos.cloud.controller.stub.Properties getCCProperties(List<PropertyBean> propertyBeans) {
-
- //convert to an array
- PropertyBean[] propertyBeansArray = new PropertyBean[propertyBeans.size()];
- propertyBeans.toArray(propertyBeansArray);
- org.apache.stratos.cloud.controller.stub.Property[] propertyArray = new org.apache.stratos.cloud.controller.stub.Property[propertyBeansArray.length];
-
- for (int j = 0; j < propertyBeansArray.length; j++) {
- org.apache.stratos.cloud.controller.stub.Property property = new org.apache.stratos.cloud.controller.stub.Property();
- property.setName(propertyBeansArray[j].getName());
- property.setValue(propertyBeansArray[j].getValue());
- propertyArray[j] = property;
- }
-
- org.apache.stratos.cloud.controller.stub.Properties properties = new org.apache.stratos.cloud.controller.stub.Properties();
- properties.setProperties(propertyArray);
- return properties;
- }
-
-
- public static org.apache.stratos.autoscaler.stub.Properties getASProperties(List<PropertyBean> propertyBeans) {
- if (propertyBeans == null || propertyBeans.isEmpty()) {
- return null;
- }
-
- //convert to an array
- PropertyBean[] propertyBeansArray = new PropertyBean[propertyBeans.size()];
- propertyBeans.toArray(propertyBeansArray);
- org.apache.stratos.autoscaler.stub.Property[] propertyArray = new org.apache.stratos.autoscaler.stub.Property[propertyBeansArray.length];
-
- for (int j = 0; j < propertyBeansArray.length; j++) {
- org.apache.stratos.autoscaler.stub.Property property = new org.apache.stratos.autoscaler.stub.Property();
- property.setName(propertyBeansArray[j].getName());
- property.setValue(propertyBeansArray[j].getValue());
- propertyArray[j] = property;
- }
-
- org.apache.stratos.autoscaler.stub.Properties properties = new org.apache.stratos.autoscaler.stub.Properties();
- properties.setProperties(propertyArray);
- return properties;
- }
-
- private static NetworkInterfaces getNetworkInterfaces(List<NetworkInterfaceBean> networkInterfaceBeans) {
- NetworkInterface[] networkInterfacesArray = new NetworkInterface[networkInterfaceBeans.size()];
-
- int i = 0;
- for (NetworkInterfaceBean nib : networkInterfaceBeans) {
- NetworkInterface networkInterface = new NetworkInterface();
- networkInterface.setNetworkUuid(nib.getNetworkUuid());
- networkInterface.setFixedIp(nib.getFixedIp());
- networkInterface.setPortUuid(nib.getPortUuid());
- if (nib.getFloatingNetworks() != null && !nib.getFloatingNetworks().isEmpty()) {
- networkInterface.setFloatingNetworks(PojoConverter.getFloatingNetworks(nib.getFloatingNetworks()));
- }
-
- networkInterfacesArray[i++] = networkInterface;
- }
-
- NetworkInterfaces networkInterfaces = new NetworkInterfaces();
- networkInterfaces.setNetworkInterfaces(networkInterfacesArray);
- return networkInterfaces;
- }
-
- private static FloatingNetworks getFloatingNetworks(List<FloatingNetworkBean> floatingNetworkBeans) {
-
- FloatingNetwork[] floatingNetworksArray = new FloatingNetwork[floatingNetworkBeans.size()];
-
- int i =0;
- for (FloatingNetworkBean floatingNetworkBean : floatingNetworkBeans) {
- FloatingNetwork floatingNetwork = new FloatingNetwork();
- floatingNetwork.setName(floatingNetworkBean.getName());
- floatingNetwork.setNetworkUuid(floatingNetworkBean.getNetworkUuid());
- floatingNetwork.setFloatingIP(floatingNetworkBean.getFloatingIP());
- floatingNetworksArray[i++] = floatingNetwork;
- }
-
- FloatingNetworks floatingNetworks = new FloatingNetworks();
- floatingNetworks.setFloatingNetworks(floatingNetworksArray);
- return floatingNetworks;
- }
-
- public static org.apache.stratos.autoscaler.stub.deployment.partition.Partition convertToCCPartitionPojo
- (Partition 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 org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy convertToCCAutoscalerPojo(AutoscalePolicy
- autoscalePolicyBean) {
-
- org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy = new
- org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy();
-
- autoscalePolicy.setId(autoscalePolicyBean.getId());
- autoscalePolicy.setDescription(autoscalePolicyBean.getDescription());
- autoscalePolicy.setIsPublic(autoscalePolicyBean.getIsPublic());
- autoscalePolicy.setDisplayName(autoscalePolicyBean.getDisplayName());
- autoscalePolicy.setInstanceRoundingFactor(autoscalePolicyBean.getInstanceRoundingFactor());
-
- if (autoscalePolicyBean.getLoadThresholds() != null) {
-
- org.apache.stratos.autoscaler.stub.autoscale.policy.LoadThresholds loadThresholds = new
- org.apache.stratos.autoscaler.stub.autoscale.policy.LoadThresholds();
-
- if (autoscalePolicyBean.getLoadThresholds().getLoadAverage() != null) {
-
- //set load average information
- org.apache.stratos.autoscaler.stub.autoscale.policy.LoadAverageThresholds loadAverage = new
- org.apache.stratos.autoscaler.stub.autoscale.policy.LoadAverageThresholds();
- loadAverage.setUpperLimit(autoscalePolicyBean.getLoadThresholds().getLoadAverage().getThreshold());
- loadAverage.setLowerLimit(autoscalePolicyBean.getLoadThresholds().getLoadAverage().getLowerLimit());
- //set load average
- loadThresholds.setLoadAverage(loadAverage);
- }
- if (autoscalePolicyBean.getLoadThresholds().getRequestsInFlight() != null) {
-
- org.apache.stratos.autoscaler.stub.autoscale.policy.RequestsInFlightThresholds requestsInFlight = new
- org.apache.stratos.autoscaler.stub.autoscale.policy.RequestsInFlightThresholds();
- //set request in flight information
- requestsInFlight.setUpperLimit(autoscalePolicyBean.getLoadThresholds().getRequestsInFlight().getThreshold());
- requestsInFlight.setLowerLimit(autoscalePolicyBean.getLoadThresholds().getRequestsInFlight().getLowerLimit());
- //set request in flight
- loadThresholds.setRequestsInFlight(requestsInFlight);
- }
- if (autoscalePolicyBean.getLoadThresholds().getMemoryConsumption() != null) {
-
- org.apache.stratos.autoscaler.stub.autoscale.policy.MemoryConsumptionThresholds memoryConsumption = new
- org.apache.stratos.autoscaler.stub.autoscale.policy.MemoryConsumptionThresholds();
-
- //set memory consumption information
- memoryConsumption.setUpperLimit(autoscalePolicyBean.getLoadThresholds().getMemoryConsumption().getThreshold());
- memoryConsumption.setLowerLimit(autoscalePolicyBean.getLoadThresholds().getMemoryConsumption().getLowerLimit());
- //set memory consumption
- loadThresholds.setMemoryConsumption(memoryConsumption);
- }
-
- autoscalePolicy.setLoadThresholds(loadThresholds);
- }
-
- return autoscalePolicy;
- }
-
- public static org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy convetToASDeploymentPolicyPojo(
- DeploymentPolicy deploymentPolicyBean) {
-
- org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy deploymentPolicy =
- new org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy();
-
- deploymentPolicy.setApplicationId(deploymentPolicyBean.getApplicationId());
- deploymentPolicy.setDescription(deploymentPolicyBean.getDescription());
- deploymentPolicy.setIsPublic(deploymentPolicyBean.isPublic());
- if (deploymentPolicyBean.getApplicationPolicy() != null
- && deploymentPolicyBean.getApplicationPolicy().getNetworkPartition() != null
- && !deploymentPolicyBean.getApplicationPolicy().getNetworkPartition().isEmpty()) {
- deploymentPolicy
- .setApplicationLevelNetworkPartitions(convertToCCPartitionGroup(deploymentPolicyBean.getApplicationPolicy().getNetworkPartition()));
- }
-
- if (deploymentPolicyBean.getChildPolicies() != null && !deploymentPolicyBean.getChildPolicies().isEmpty()) {
- deploymentPolicy.setChildPolicies(convertToCCChildPolicy(deploymentPolicyBean.getChildPolicies()));
- }
-
- return deploymentPolicy;
- }
-
- public static DeploymentPolicy convertStubDeploymentPolicyToDeploymentPolicy(
- org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy stubDeploymentPolicy) {
-
- DeploymentPolicy deploymentPolicy = new DeploymentPolicy();
-
- deploymentPolicy.setApplicationId(stubDeploymentPolicy.getApplicationId());
- deploymentPolicy.setDescription(stubDeploymentPolicy.getDescription());
- deploymentPolicy.setPublic(stubDeploymentPolicy.getIsPublic());
- if (stubDeploymentPolicy.getApplicationLevelNetworkPartitions() != null) {
- org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[]
- networkPartitions = stubDeploymentPolicy.getApplicationLevelNetworkPartitions();
- if(networkPartitions != null) {
- deploymentPolicy.setApplicationPolicy(new ApplicationPolicy());
- List<ApplicationLevelNetworkPartition> networkPartitionList = new ArrayList<ApplicationLevelNetworkPartition>();
- for(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition
- networkPartition : networkPartitions) {
- if(networkPartition != null) {
- networkPartitionList.add(convertStubNetworkPartitionToNetworkPartition(networkPartition));
- }
- }
- deploymentPolicy.getApplicationPolicy().setNetworkPartition(networkPartitionList);
- }
- }
-
- if (stubDeploymentPolicy.getChildPolicies() != null) {
- List<org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy> childPolicyList =
- new ArrayList<org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy>();
- for(org.apache.stratos.autoscaler.stub.deployment.policy.ChildPolicy stubChildDeploymentPolicy :
- stubDeploymentPolicy.getChildPolicies()) {
- if(stubChildDeploymentPolicy != null) {
- childPolicyList.add(convertStubChildPolicyToChildPolicy(stubChildDeploymentPolicy));
- }
- }
- deploymentPolicy.setChildPolicies(childPolicyList);
- }
- return deploymentPolicy;
- }
-
- private static org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy
- convertStubChildPolicyToChildPolicy(ChildPolicy stubChildDeploymentPolicy) {
- if(stubChildDeploymentPolicy == null) {
- return null;
- }
- org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy childPolicy = new
- org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy();
- childPolicy.setChildId(stubChildDeploymentPolicy.getId());
- if(stubChildDeploymentPolicy.getChildLevelNetworkPartitions() != null) {
- List<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition> networkPartitionList
- = new ArrayList<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition>();
- for(org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelNetworkPartition
- stubChildLevelNetworkPartition : stubChildDeploymentPolicy.getChildLevelNetworkPartitions()) {
- networkPartitionList.add(convertStubChildLevelNetworkPartitionToChildLevelNetworkPartition(stubChildLevelNetworkPartition));
- }
- childPolicy.setNetworkPartition(networkPartitionList);
- }
- return childPolicy;
- }
-
- private static org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition
- convertStubChildLevelNetworkPartitionToChildLevelNetworkPartition(
- ChildLevelNetworkPartition stubChildLevelNetworkPartition) {
- if(stubChildLevelNetworkPartition == null) {
- return null;
- }
- org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition childLevelNetworkPartition =
- new org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition();
- childLevelNetworkPartition.setId(stubChildLevelNetworkPartition.getId());
- childLevelNetworkPartition.setPartitionAlgo(stubChildLevelNetworkPartition.getPartitionAlgo());
- if(stubChildLevelNetworkPartition.getChildLevelPartitions() != null) {
- List<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition> partitionList =
- new ArrayList<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition>();
- for(org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelPartition stubChildLevelPartition : stubChildLevelNetworkPartition.getChildLevelPartitions()) {
- partitionList.add(convertStubChildLevelPartitionToChildLevelPartition(stubChildLevelPartition));
- }
- childLevelNetworkPartition.setPartitions(partitionList);
- }
- return childLevelNetworkPartition;
- }
-
- private static org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition
- convertStubChildLevelPartitionToChildLevelPartition(ChildLevelPartition stubChildLevelPartition) {
- if(stubChildLevelPartition == null) {
- return null;
- }
- org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition childLevelPartition =
- new org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition();
- childLevelPartition.setId(stubChildLevelPartition.getPartitionId());
- childLevelPartition.setMax(stubChildLevelPartition.getMax());
- return childLevelPartition;
- }
-
- private static ApplicationLevelNetworkPartition convertStubNetworkPartitionToNetworkPartition(
- org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition stubNetworkPartition) {
- if(stubNetworkPartition == null) {
- return null;
- }
-
- ApplicationLevelNetworkPartition networkPartition = new ApplicationLevelNetworkPartition();
- networkPartition.setId(stubNetworkPartition.getId());
- networkPartition.setActiveByDefault(stubNetworkPartition.getActiveByDefault());
- if(stubNetworkPartition.getPartitions() != null) {
- List<Partition> partitionList = new ArrayList<Partition>();
- for(org.apache.stratos.autoscaler.stub.deployment.partition.Partition stubPartition :
- stubNetworkPartition.getPartitions()) {
- if(stubPartition != null) {
- partitionList.add(convertStubPartitionToPartition(stubPartition));
- }
- }
- networkPartition.setPartitions(partitionList);
- }
- return networkPartition;
- }
-
- private static Partition convertStubPartitionToPartition(org.apache.stratos.autoscaler.stub.deployment.partition.Partition stubPartition) {
- if(stubPartition == null) {
- return null;
- }
- Partition partition = new Partition();
- partition.setId(stubPartition.getId());
- partition.setPublic(stubPartition.getIsPublic());
- partition.setDescription(stubPartition.getDescription());
- partition.setProvider(stubPartition.getProvider());
- if(stubPartition.getProperties() != null) {
- List<PropertyBean> propertyBeanList = new ArrayList<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 PropertyBean convertStubPropertyToPropertyBean(org.apache.stratos.autoscaler.stub.Property stubProperty) {
- if(stubProperty == null) {
- return null;
- }
-
- PropertyBean propertyBean = new PropertyBean();
- propertyBean.setName(stubProperty.getName());
- propertyBean.setValue(stubProperty.getValue());
- return propertyBean;
- }
-
- private static org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[] convertToCCPartitionGroup(List<ApplicationLevelNetworkPartition> networkPartitionBeans) {
-
- 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++) {
- org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition appNWPartition = new
- org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition();
- appNWPartition.setId(networkPartitionBeans.get(i).getId());
- appNWPartition.setActiveByDefault(networkPartitionBeans.get(i).isActiveByDefault());
- if (networkPartitionBeans.get(i).getPartitions() != null && !networkPartitionBeans.get(i).getPartitions().isEmpty()) {
- appNWPartition.setPartitions(convertToCCPartitionPojos(networkPartitionBeans.get(i).getPartitions()));
- }
-
- appNWPartitions[i] = appNWPartition;
- }
-
- return appNWPartitions;
- }
-
- private static ChildPolicy[] convertToCCChildPolicy(List<org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy> childPolicies) {
-
- ChildPolicy[] childPolicies1 = new ChildPolicy[childPolicies.size()];
-
- for (int i = 0; i < childPolicies.size(); i++) {
- ChildPolicy childPolicy = new ChildPolicy();
- childPolicy.setId(childPolicies.get(i).getChildId());
- childPolicy.setChildLevelNetworkPartitions(convertToCCChildNetworkPartition(childPolicies.get(i).getNetworkPartition()));
-
-
- childPolicies1[i] = childPolicy;
- }
-
- return childPolicies1;
- }
-
- private static ChildLevelNetworkPartition[] convertToCCChildNetworkPartition(List<org.apache.stratos.common.beans.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).getId());
- childLevelNetworkPartition.setPartitionAlgo(networkPartitions.get(i).getPartitionAlgo());
- childLevelNetworkPartition.setChildLevelPartitions(convertToCCChildPartitionPojos(networkPartitions.get(i).getPartitions()));
-
- childLevelNetworkPartitions[i] = childLevelNetworkPartition;
- }
-
- return childLevelNetworkPartitions;
- }
-
- public static org.apache.stratos.common.beans.topology.Cluster populateClusterPojos(Cluster cluster, String alias) {
- org.apache.stratos.common.beans.topology.Cluster cluster1 = new
- org.apache.stratos.common.beans.topology.Cluster();
- cluster1.setAlias(alias);
- cluster1.setServiceName(cluster.getServiceName());
- cluster1.setClusterId(cluster.getClusterId());
- cluster1.setLbCluster(cluster.isLbCluster());
- cluster1.setTenantRange(cluster.getTenantRange());
- cluster1.setProperty(getPropertyBeans(cluster.getProperties()));
- cluster1.setMember(new ArrayList<Member>());
- cluster1.setHostNames(new ArrayList<String>());
- Collection<ClusterInstance> clusterInstances = cluster.getClusterInstances();
- List<org.apache.stratos.common.beans.topology.Instance> instancesList =
- new ArrayList<org.apache.stratos.common.beans.topology.Instance>();
- if (clusterInstances != null) {
- for (ClusterInstance clusterInstance : clusterInstances) {
- org.apache.stratos.common.beans.topology.Instance instance =
- new org.apache.stratos.common.beans.topology.Instance();
- instance.setInstanceId(clusterInstance.getInstanceId());
- instance.setStatus(clusterInstance.getStatus().toString());
- instancesList.add(instance);
- }
- cluster1.setInstances(instancesList);
- }
-
- for (org.apache.stratos.messaging.domain.topology.Member tmp : cluster.getMembers()) {
- Member member = new Member();
- member.setClusterId(tmp.getClusterId());
- member.setLbClusterId(tmp.getLbClusterId());
- member.setNetworkPartitionId(tmp.getNetworkPartitionId());
- member.setPartitionId(tmp.getPartitionId());
- member.setMemberId(tmp.getMemberId());
- if (tmp.getMemberIp() == null) {
- member.setMemberIp("NULL");
- } else {
- member.setMemberIp(tmp.getMemberIp());
- }
- if (tmp.getMemberPublicIp() == null) {
- member.setMemberPublicIp("NULL");
- } else {
- member.setMemberPublicIp(tmp.getMemberPublicIp());
- }
- member.setServiceName(tmp.getServiceName());
- member.setStatus(tmp.getStatus().toString());
- member.setProperty(getPropertyBeans(tmp.getProperties()));
- cluster1.getMember().add(member);
- }
-
- for (String tmp1 : cluster.getHostNames()) {
- cluster1.getHostNames().add(tmp1);
- }
-
- return cluster1;
- }
-
- private static org.apache.stratos.autoscaler.stub.deployment.partition.Partition[] convertToCCPartitionPojos
- (List<Partition> partitionList) {
-
- 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));
- }
-
- return partitions;
- }
-
- private static ChildLevelPartition[] convertToCCChildPartitionPojos
- (List<org.apache.stratos.common.beans.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).getId());
- childLevelPartition.setMax(partitionList.get(i).getMax());
-
- childLevelPartitions[i] = childLevelPartition;
- }
-
- return childLevelPartitions;
- }
-
- public static Partition[] populatePartitionPojos(org.apache.stratos.cloud.controller.stub.domain.Partition[]
- partitions) {
-
- Partition[] partitionBeans;
- if (partitions == null) {
- partitionBeans = new Partition[0];
- return partitionBeans;
- }
-
- partitionBeans = new Partition[partitions.length];
- for (int i = 0; i < partitions.length; i++) {
- partitionBeans[i] = populatePartitionPojo(partitions[i]);
- }
- return partitionBeans;
- }
-
- public static Partition populatePartitionPojo(org.apache.stratos.cloud.controller.stub.domain.Partition
- partition) {
-
- Partition partitionBeans = new Partition();
- if (partition == null) {
- return partitionBeans;
- }
-
- partitionBeans.setId(partition.getId());
- partitionBeans.setDescription(partition.getDescription());
- partitionBeans.setPublic(partition.getIsPublic());
- partitionBeans.setProvider(partition.getProvider());
- /*partitionBeans.partitionMin = partition.getPartitionMin();
- partitionBeans.partitionMax = partition.getPartitionMax();*/
- //properties
- if (partition.getProperties() != null) {
- List<PropertyBean> propertyBeans = getPropertyBeans(partition.getProperties());
- partitionBeans.setProperty(propertyBeans);
- }
-
- return partitionBeans;
- }
-
- public static List<SubscriptionDomainBean> populateSubscriptionDomainPojos(List<SubscriptionDomain> subscriptionDomains) {
-
- List<SubscriptionDomainBean> subscriptionDomainBeans = new ArrayList<SubscriptionDomainBean>();
-
- if (subscriptionDomains == null) {
- return subscriptionDomainBeans;
- }
-
- for (SubscriptionDomain subscriptionDomain : subscriptionDomains) {
- subscriptionDomainBeans.add(populateSubscriptionDomainPojo(subscriptionDomain));
- }
-
- return subscriptionDomainBeans;
- }
-
- public static SubscriptionDomainBean populateSubscriptionDomainPojo(SubscriptionDomain subscriptionDomain) {
-
- SubscriptionDomainBean subscriptionDomainBean = new SubscriptionDomainBean();
-
- if (subscriptionDomain == null) {
- return subscriptionDomainBean;
- }
- subscriptionDomainBean.setDomainName(subscriptionDomain.getDomainName());
- subscriptionDomainBean.setApplicationContext(subscriptionDomain.getApplicationContext());
-
- return subscriptionDomainBean;
- }
-
- private static List<PropertyBean> getPropertyBeans(Properties properties) {
-
- List<PropertyBean> propertyBeans = null;
- if (properties.getProperties() != null && properties.getProperties().length != 0) {
- Property[] propertyArr = properties.getProperties();
- propertyBeans = new ArrayList<PropertyBean>();
- for (int i = 0; i < propertyArr.length; i++) {
- PropertyBean propertyBean = new PropertyBean();
- propertyBean.setName(propertyArr[i].getName());
- propertyBean.setValue(propertyArr[i].getValue());
- propertyBeans.add(propertyBean);
- }
- }
- return propertyBeans;
- }
-
- private static List<PropertyBean> getPropertyBeans(org.apache.stratos.cloud.controller.stub.Properties properties) {
-
- List<PropertyBean> propertyBeans = null;
- if (properties.getProperties() != null && properties.getProperties().length != 0) {
- org.apache.stratos.cloud.controller.stub.Property[] propertyArr = properties.getProperties();
- propertyBeans = new ArrayList<PropertyBean>();
- for (int i = 0; i < propertyArr.length; i++) {
- PropertyBean propertyBean = new PropertyBean();
- propertyBean.setName(propertyArr[i].getName());
- propertyBean.setValue(propertyArr[i].getValue());
- propertyBeans.add(propertyBean);
- }
- }
- return propertyBeans;
- }
-
- private static List<PropertyBean> getPropertyBeans(java.util.Properties properties) {
-
- List<PropertyBean> propertyBeans = null;
- if (properties != null && !properties.isEmpty()) {
- Enumeration<?> e = properties.propertyNames();
- propertyBeans = new ArrayList<PropertyBean>();
-
- while (e.hasMoreElements()) {
- String key = (String) e.nextElement();
- String value = properties.getProperty(key);
- PropertyBean propertyBean = new PropertyBean();
- propertyBean.setName(key);
- propertyBean.setValue(value);
- propertyBeans.add(propertyBean);
- }
- }
- return propertyBeans;
- }
-
- public static AutoscalePolicy[] populateAutoscalePojos(org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy[]
- autoscalePolicies) {
-
- AutoscalePolicy[] autoscalePolicyBeans;
- if (autoscalePolicies == null) {
- autoscalePolicyBeans = new AutoscalePolicy[0];
- return autoscalePolicyBeans;
- }
-
- autoscalePolicyBeans = new AutoscalePolicy[autoscalePolicies.length];
- for (int i = 0; i < autoscalePolicies.length; i++) {
- autoscalePolicyBeans[i] = populateAutoscalePojo(autoscalePolicies[i]);
- }
- return autoscalePolicyBeans;
- }
-
- public static AutoscalePolicy populateAutoscalePojo(org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy
- autoscalePolicy) {
- if (autoscalePolicy == null) {
- return null;
- }
-
- AutoscalePolicy autoscalePolicyBean = new AutoscalePolicy();
- autoscalePolicyBean.setId(autoscalePolicy.getId());
- autoscalePolicyBean.setDescription(autoscalePolicy.getDescription());
- autoscalePolicyBean.setIsPublic(autoscalePolicy.getIsPublic());
- autoscalePolicyBean.setDisplayName(autoscalePolicy.getDisplayName());
- autoscalePolicyBean.setDescription(autoscalePolicy.getDescription());
- autoscalePolicyBean.setInstanceRoundingFactor(autoscalePolicy.getInstanceRoundingFactor());
- if (autoscalePolicy.getLoadThresholds() != null) {
- autoscalePolicyBean.setLoadThresholds(populateLoadThresholds(autoscalePolicy.getLoadThresholds()));
- }
-
- return autoscalePolicyBean;
- }
-
- private static LoadThresholds populateLoadThresholds(org.apache.stratos.autoscaler.stub.autoscale.policy.LoadThresholds
- loadThresholds) {
-
- LoadThresholds loadThresholdBean = new LoadThresholds();
- if (loadThresholds.getLoadAverage() != null) {
- LoadAverageThresholds loadAverage = new LoadAverageThresholds();
- loadAverage.setThreshold(loadThresholds.getLoadAverage().getUpperLimit());
- loadAverage.setLowerLimit(loadThresholds.getLoadAverage().getLowerLimit());
- loadThresholdBean.setLoadAverage(loadAverage);
- }
- if (loadThresholds.getMemoryConsumption() != null) {
- MemoryConsumptionThresholds memoryConsumption = new MemoryConsumptionThresholds();
- memoryConsumption.setThreshold(loadThresholds.getMemoryConsumption().getUpperLimit());
- memoryConsumption.setLowerLimit(loadThresholds.getMemoryConsumption().getLowerLimit());
- loadThresholdBean.setMemoryConsumption(memoryConsumption);
- }
- if (loadThresholds.getRequestsInFlight() != null) {
- RequestsInFlightThresholds requestsInFlight = new RequestsInFlightThresholds();
- requestsInFlight.setThreshold(loadThresholds.getRequestsInFlight().getUpperLimit());
- requestsInFlight.setLowerLimit(loadThresholds.getRequestsInFlight().getLowerLimit());
- loadThresholdBean.setRequestsInFlight(requestsInFlight);
- }
-
- return loadThresholdBean;
- }
-
- public static DeploymentPolicy[] populateDeploymentPolicyPojos(org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy[]
- deploymentPolicies) {
- DeploymentPolicy[] deploymentPolicyBeans;
- if (deploymentPolicies == null) {
- return null;
- }
-
- deploymentPolicyBeans = new DeploymentPolicy[deploymentPolicies.length];
- for (int i = 0; i < deploymentPolicies.length; i++) {
- deploymentPolicyBeans[i] = populateDeploymentPolicyPojo(deploymentPolicies[i]);
- }
-
- return deploymentPolicyBeans;
- }
-
- public static DeploymentPolicy populateDeploymentPolicyPojo(org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy
- deploymentPolicy) {
-
- if (deploymentPolicy == null) {
- return null;
- }
-
- DeploymentPolicy deploymentPolicyBean = new DeploymentPolicy();
- deploymentPolicyBean.setDescription(deploymentPolicy.getDescription());
- deploymentPolicyBean.setPublic(deploymentPolicy.getIsPublic());
- deploymentPolicyBean.setApplicationId(deploymentPolicy.getApplicationId());
- return deploymentPolicyBean;
- }
-
- public static ApplicationLevelNetworkPartition populatePartitionGroupPojo(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition
- partitionGroup) {
-
- ApplicationLevelNetworkPartition networkPartitionBean = new ApplicationLevelNetworkPartition();
- if (partitionGroup == null) {
- return networkPartitionBean;
- }
-
- networkPartitionBean.setId(partitionGroup.getId());
- //FIXME update with new deployment policy pattern
-// networkPartitionBean.partitionAlgo = partitionGroup.getPartitionAlgo();
-// if (partitionGroup.getPartitions() != null && partitionGroup.getPartitions().length > 0) {
-// partitionGroupBean.partition = getPartitionList(partitionGroup.getPartitions());
-// }
-
- return networkPartitionBean;
- }
-
- public static ApplicationLevelNetworkPartition[] populatePartitionGroupPojos(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[] partitionGroups) {
-
- ApplicationLevelNetworkPartition[] networkPartitionGroupsBeans;
- if (partitionGroups == null) {
- networkPartitionGroupsBeans = new ApplicationLevelNetworkPartition[0];
- return networkPartitionGroupsBeans;
- }
-
- networkPartitionGroupsBeans = new ApplicationLevelNetworkPartition[partitionGroups.length];
-
- for (int i = 0; i < partitionGroups.length; i++) {
- networkPartitionGroupsBeans[i] = populatePartitionGroupPojo(partitionGroups[i]);
- }
-
- return networkPartitionGroupsBeans;
- }
-
- private static List<Partition> getPartitionList(org.apache.stratos.cloud.controller.stub.domain.Partition[]
- partitions) {
-
- List<Partition> partitionList = new ArrayList<Partition>();
- for (int i = 0; i < partitions.length; i++) {
- Partition partition = new Partition();
- partition.setId(partitions[i].getId());
- partition.setProvider(partitions[i].getProvider());
- /*partition.partitionMin = partitions[i].getPartitionMin();
- partition.partitionMax = partitions[i].getPartitionMax();*/
- if (partitions[i].getProperties() != null) {
- partition.setProperty(getPropertyBeans(partitions[i].getProperties()));
- }
- partitionList.add(partition);
- }
-
- return partitionList;
- }
-
- public static ServiceDefinitionBean convertToServiceDefinitionBean(Service service) {
-
- ServiceDefinitionBean serviceDefinitionBean = new ServiceDefinitionBean();
- serviceDefinitionBean.setCartridgeType(service.getType());
- serviceDefinitionBean.setTenantRange(service.getTenantRange());
- serviceDefinitionBean.setClusterDomain(service.getClusterId());
- serviceDefinitionBean.setIsPublic(service.getIsPublic());
- serviceDefinitionBean.setAutoscalingPolicyName(service.getAutoscalingPolicyName());
- serviceDefinitionBean.setDeploymentPolicyName(service.getDeploymentPolicyName());
-
- return serviceDefinitionBean;
- }
-
- public static List<ServiceDefinitionBean> convertToServiceDefinitionBeans(Collection<Service> services) {
-
- List<ServiceDefinitionBean> serviceDefinitionBeans = new ArrayList<ServiceDefinitionBean>();
-
- for (Service service : services) {
- serviceDefinitionBeans.add(convertToServiceDefinitionBean(service));
- }
- return serviceDefinitionBeans;
- }
-
- public static org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup convertToCCKubernetesGroupPojo(KubernetesGroup kubernetesGroupBean) {
-
- org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup kubernetesGroup = new
- org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup();
-
- kubernetesGroup.setGroupId(kubernetesGroupBean.getGroupId());
- kubernetesGroup.setDescription(kubernetesGroupBean.getDescription());
- kubernetesGroup.setKubernetesMaster(convertToCCKubernetesMasterPojo(kubernetesGroupBean.getKubernetesMaster()));
- kubernetesGroup.setPortRange(convertToASPortRange(kubernetesGroupBean.getPortRange()));
- kubernetesGroup.setKubernetesHosts(convertToASKubernetesHostsPojo(kubernetesGroupBean.getKubernetesHosts()));
- kubernetesGroup.setProperties((getCCProperties(kubernetesGroupBean.getProperty())));
-
- return kubernetesGroup;
- }
-
- private static org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[] convertToASKubernetesHostsPojo(List<KubernetesHost> kubernetesHosts) {
- if (kubernetesHosts == null || kubernetesHosts.isEmpty()) {
- return null;
- }
- int kubernetesHostCount = kubernetesHosts.size();
- org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[]
- kubernetesHostsArr = new org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[kubernetesHostCount];
- for (int i = 0; i < kubernetesHostCount; i++) {
- KubernetesHost kubernetesHostBean = kubernetesHosts.get(i);
- kubernetesHostsArr[i] = convertToCCKubernetesHostPojo(kubernetesHostBean);
- }
- return kubernetesHostsArr;
- }
-
-
- private static org.apache.stratos.cloud.controller.stub.kubernetes.PortRange convertToASPortRange(PortRange portRangeBean) {
- if (portRangeBean == null) {
- return null;
- }
- org.apache.stratos.cloud.controller.stub.kubernetes.PortRange
- portRange = new org.apache.stratos.cloud.controller.stub.kubernetes.PortRange();
- portRange.setLower(portRangeBean.getLower());
- portRange.setUpper(portRangeBean.getUpper());
- return portRange;
- }
-
- public static org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost convertToCCKubernetesHostPojo(KubernetesHost kubernetesHostBean) {
- if (kubernetesHostBean == null) {
- return null;
- }
-
- org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost
- kubernetesHost = new org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost();
- kubernetesHost.setHostId(kubernetesHostBean.getHostId());
- kubernetesHost.setHostIpAddress(kubernetesHostBean.getHostIpAddress());
- kubernetesHost.setHostname(kubernetesHostBean.getHostname());
- kubernetesHost.setProperties(getCCProperties(kubernetesHostBean.getProperty()));
-
- return kubernetesHost;
- }
-
- public static org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster convertToCCKubernetesMasterPojo(KubernetesMaster kubernetesMasterBean) {
- if (kubernetesMasterBean == null) {
- return null;
- }
-
- org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster
- kubernetesMaster = new org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster();
- kubernetesMaster.setHostId(kubernetesMasterBean.getHostId());
- kubernetesMaster.setHostIpAddress(kubernetesMasterBean.getHostIpAddress());
- kubernetesMaster.setHostname(kubernetesMasterBean.getHostname());
- kubernetesMaster.setEndpoint(kubernetesMasterBean.getEndpoint());
- kubernetesMaster.setProperties(getCCProperties(kubernetesMasterBean.getProperty()));
-
- return kubernetesMaster;
- }
-
- public static KubernetesGroup[] populateKubernetesGroupsPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup[] kubernetesGroups) {
-
- if (kubernetesGroups == null) {
- return null;
- }
- KubernetesGroup[] kubernetesGroupsBean = new KubernetesGroup[kubernetesGroups.length];
- for (int i = 0; i < kubernetesGroups.length; i++) {
- kubernetesGroupsBean[i] = populateKubernetesGroupPojo(kubernetesGroups[i]);
- }
- return kubernetesGroupsBean;
- }
-
- public static KubernetesGroup populateKubernetesGroupPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup kubernetesGroup) {
- if (kubernetesGroup == null) {
- return null;
- }
- KubernetesGroup kubernetesGroupBean = new KubernetesGroup();
- kubernetesGroupBean.setGroupId(kubernetesGroup.getGroupId());
- kubernetesGroupBean.setDescription(kubernetesGroup.getDescription());
- kubernetesGroupBean.setPortRange(populatePortRangePojo(kubernetesGroup.getPortRange()));
- kubernetesGroupBean.setKubernetesHosts(populateKubernetesHostsPojo(kubernetesGroup.getKubernetesHosts()));
- kubernetesGroupBean.setKubernetesMaster(populateKubernetesMasterPojo(kubernetesGroup.getKubernetesMaster()));
- kubernetesGroupBean.setProperty(populateCCProperties(kubernetesGroup.getProperties()));
- return kubernetesGroupBean;
- }
-
- public static KubernetesMaster populateKubernetesMasterPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster kubernetesMaster) {
- if (kubernetesMaster == null) {
- return null;
- }
- KubernetesMaster kubernetesMasterBean = new KubernetesMaster();
- kubernetesMasterBean.setHostId(kubernetesMaster.getHostId());
- kubernetesMasterBean.setHostname(kubernetesMaster.getHostname());
- kubernetesMasterBean.setHostIpAddress(kubernetesMaster.getHostIpAddress());
- kubernetesMasterBean.setProperty(populateCCProperties(kubernetesMaster.getProperties()));
- kubernetesMasterBean.setEndpoint(kubernetesMaster.getEndpoint());
- return kubernetesMasterBean;
- }
-
- public static List<KubernetesHost> populateKubernetesHostsPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[] kubernetesHosts) {
- if (kubernetesHosts == null) {
- return null;
- }
- List<KubernetesHost> kubernetesHostList = new ArrayList<KubernetesHost>();
- for (int i = 0; i < kubernetesHosts.length; i++) {
- kubernetesHostList.add(populateKubernetesHostPojo(kubernetesHosts[i]));
- }
- return kubernetesHostList;
- }
-
- private static KubernetesHost populateKubernetesHostPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost kubernetesHost) {
- if (kubernetesHost == null) {
- return null;
- }
- KubernetesHost kubernetesHostBean = new KubernetesHost();
- kubernetesHostBean.setHostId(kubernetesHost.getHostId());
- kubernetesHostBean.setHostname(kubernetesHost.getHostname());
- kubernetesHostBean.setHostIpAddress(kubernetesHost.getHostIpAddress());
- kubernetesHostBean.setProperty(populateCCProperties(kubernetesHost.getProperties()));
- return kubernetesHostBean;
- }
-
- private static List<PropertyBean> populateASProperties(org.apache.stratos.autoscaler.stub.Properties properties) {
- if (properties == null || properties.getProperties() == null) {
- return null;
- }
- List<PropertyBean> propertyBeanList = new ArrayList<PropertyBean>();
- for (int i = 0; i < properties.getProperties().length; i++) {
- propertyBeanList.add(populateASProperty(properties.getProperties()[i]));
- }
- return propertyBeanList;
- }
-
- private static List<PropertyBean> populateCCProperties(org.apache.stratos.cloud.controller.stub.Properties properties) {
- if (properties == null || properties.getProperties() == null) {
- return null;
- }
- List<PropertyBean> propertyBeanList = new ArrayList<PropertyBean>();
- for (int i = 0; i < properties.getProperties().length; i++) {
- propertyBeanList.add(populateCCProperty(properties.getProperties()[i]));
- }
- return propertyBeanList;
- }
-
- private static PropertyBean populateASProperty(org.apache.stratos.autoscaler.stub.Property propertyE) {
- if (propertyE == null) {
- return null;
- }
- PropertyBean propertyBean = new PropertyBean();
- propertyBean.setName(propertyE.getName());
- propertyBean.setValue(propertyE.getValue());
- return propertyBean;
- }
-
- private static PropertyBean populateCCProperty(org.apache.stratos.cloud.controller.stub.Property propertyE) {
- if (propertyE == null) {
- return null;
- }
- PropertyBean propertyBean = new PropertyBean();
- propertyBean.setName(propertyE.getName());
- propertyBean.setValue(propertyE.getValue());
- return propertyBean;
- }
-
- private static PortRange populatePortRangePojo(org.apache.stratos.cloud.controller.stub.kubernetes.PortRange portRange) {
- if (portRange == null) {
- return null;
- }
- PortRange portRangeBean = new PortRange();
- portRangeBean.setUpper(portRange.getUpper());
- portRangeBean.setLower(portRange.getLower());
- return portRangeBean;
- }
-
- public static ApplicationContext convertApplicationDefinitionToApplicationContext(ApplicationDefinition applicationDefinition) {
-
- org.apache.stratos.autoscaler.stub.pojo.ApplicationContext applicationContext =
- new org.apache.stratos.autoscaler.stub.pojo.ApplicationContext();
- applicationContext.setApplicationId(applicationDefinition.getApplicationId());
- applicationContext.setName(applicationDefinition.getName());
- applicationContext.setDescription(applicationDefinition.getDescription());
- applicationContext.setAlias(applicationDefinition.getAlias());
- applicationContext.setStatus(applicationDefinition.getStatus());
-
- // convert and set components
- if (applicationDefinition.getComponents() != null) {
- org.apache.stratos.autoscaler.stub.pojo.ComponentContext componentContext =
- new org.apache.stratos.autoscaler.stub.pojo.ComponentContext();
-
- // top level Groups
- if (applicationDefinition.getComponents().getGroups() != null) {
- componentContext.setGroupContexts(
- convertGroupDefinitionsToStubGroupContexts(applicationDefinition.getComponents().getGroups()));
- }
- // top level dependency information
- if (applicationDefinition.getComponents().getDependencies() != null) {
- componentContext.setDependencyContext(
- convertDependencyDefinitionsToDependencyContexts(applicationDefinition.getComponents().getDependencies()));
- }
- // top level cartridge context information
- if (applicationDefinition.getComponents().getCartridges() != null) {
- componentContext.setCartridgeContexts(
- convertCartridgeDefinitionsToCartridgeContexts(applicationDefinition.getComponents().getCartridges()));
- }
- applicationContext.setComponents(componentContext);
- }
- return applicationContext;
- }
-
- public static ApplicationDefinition convertApplicationContextToApplicationDefinition(
- ApplicationContext applicationContext) {
- if(applicationContext == null) {
- return null;
- }
-
- ApplicationDefinition applicationDefinition = new ApplicationDefinition();
- applicationDefinition.setApplicationId(applicationContext.getApplicationId());
- applicationDefinition.setName(applicationContext.getName());
- applicationDefinition.setDescription(applicationContext.getDescription());
- applicationDefinition.setStatus(applicationContext.getStatus());
- applicationDefinition.setAlias(applicationContext.getAlias());
-
- // convert and set components
- if (applicationContext.getComponents() != null) {
- applicationDefinition.setComponents(new ComponentDefinition());
- // top level Groups
- if (applicationContext.getComponents().getGroupContexts() != null) {
- applicationDefinition.getComponents().setGroups(
- convertGroupContextsToGroupDefinitions(applicationContext.getComponents().getGroupContexts()));
- }
- // top level dependency information
- if (applicationContext.getComponents().getDependencyContext() != null) {
- applicationDefinition.getComponents().setDependencies(
- convertDependencyContextsToDependencyDefinitions(applicationContext.getComponents().getDependencyContext()));
- }
- // top level cartridge context information
- if (applicationContext.getComponents().getCartridgeContexts() != null) {
- applicationDefinition.getComponents().setCartridges(
- convertCartridgeContextsToCartridgeDefinitions(applicationContext.getComponents().getCartridgeContexts()));
- }
- }
- return applicationDefinition;
- }
-
- private static List<GroupDefinition> convertGroupContextsToGroupDefinitions(GroupContext[] groupContexts) {
- List<GroupDefinition> groupDefinitions = new ArrayList<GroupDefinition>();
- if(groupContexts != null) {
- for (GroupContext groupContext : groupContexts) {
- if(groupContext != null) {
- GroupDefinition groupDefinition = new GroupDefinition();
- groupDefinition.setAlias(groupContext.getAlias());
- groupDefinition.setGroupMaxInstances(groupContext.getGroupMaxInstances());
- groupDefinition.setGroupMinInstances(groupContext.getGroupMinInstances());
- groupDefinition.setGroupScalingEnabled(groupContext.getGroupScalingEnabled());
- groupDefinition.setName(groupContext.getName());
- groupDefinition.setGroups(convertGroupContextsToGroupDefinitions(groupContext.getGroupContexts()));
- groupDefinition.setCartridges(convertCartridgeContextsToCartridgeDefinitions(
- groupContext.getCartridgeContexts()));
- groupDefinitions.add(groupDefinition);
- }
- }
- }
- return groupDefinitions;
- }
-
- private static DependencyDefinitions convertDependencyContextsToDependencyDefinitions(DependencyContext dependencyContext) {
- DependencyDefinitions dependencyDefinitions = new DependencyDefinitions();
- dependencyDefinitions.setTerminationBehaviour(dependencyContext.getTerminationBehaviour());
-
- if(dependencyContext.getStartupOrdersContexts() != null) {
- List<String> startupOrders = new ArrayList<String>();
- for(String item : dependencyContext.getStartupOrdersContexts()) {
- startupOrders.add(item);
- }
- dependencyDefinitions.setStartupOrders(startupOrders);
- }
- if (dependencyContext.getScalingDependents() != null) {
- List<String> scalingDependents = new ArrayList<String>();
- for(String item : dependencyContext.getScalingDependents()) {
- scalingDependents.add(item);
- }
- dependencyDefinitions.setScalingDependants(scalingDependents);
- }
- return dependencyDefinitions;
- }
-
- private static List<CartridgeDefinition> convertCartridgeContextsToCartridgeDefinitions(CartridgeContext[] cartridgeContexts) {
- List<CartridgeDefinition> cartridgeDefinitions = new ArrayList<CartridgeDefinition>();
- if(cartridgeContexts != null) {
- for (CartridgeContext cartridgeContext : cartridgeContexts) {
- if(cartridgeContext != null) {
- CartridgeDefinition cartridgeDefinition = new CartridgeDefinition();
- cartridgeDefinition.setType(cartridgeContext.getType());
- cartridgeDefinition.setCartridgeMin(cartridgeContext.getCartridgeMin());
- cartridgeDefinition.setCartridgeMax(cartridgeContext.getCartridgeMax());
- cartridgeDefinition.setSubscribableInfo(convertSubscribableInfoContextToSubscribableInfo(cartridgeContext.getSubscribableInfoContext()));
- cartridgeDefinitions.add(cartridgeDefinition);
- }
- }
- }
- return cartridgeDefinitions;
- }
-
- private static SubscribableInfo convertSubscribableInfoContextToSubscribableInfo(
- SubscribableInfoContext subscribableInfoContext) {
- SubscribableInfo subscribableInfo = new SubscribableInfo();
- subscribableInfo.setAlias(subscribableInfoContext.getAlias());
- subscribableInfo.setAutoscalingPolicy(subscribableInfoContext.getAutoscalingPolicy());
- if(!CommonUtil.isEmptyArray(subscribableInfoContext.getDependencyAliases())) {
- subscribableInfo.setDependencyAliases(subscribableInfoContext.getDependencyAliases());
- }
- subscribableInfo.setDeploymentPolicy(subscribableInfoContext.getDeploymentPolicy());
- subscribableInfo.setMinMembers(subscribableInfoContext.getMinMembers());
- subscribableInfo.setMaxMembers(subscribableInfoContext.getMaxMembers());
- subscribableInfo.setPrivateRepo(subscribableInfoContext.getPrivateRepo());
- subscribableInfo.setProperty(convertStubPropertiesToPropertyBeanList(subscribableInfoContext.getProperties()));
- subscribableInfo.setRepoPassword(subscribableInfoContext.getRepoPassword());
- subscribableInfo.setRepoUsername(subscribableInfoContext.getRepoUsername());
- subscribableInfo.setRepoUrl(subscribableInfoContext.getRepoUrl());
- return subscribableInfo;
- }
-
- private static List<org.apache.stratos.manager.composite.application.beans.PropertyBean>
- convertStubPropertiesToPropertyBeanList(org.apache.stratos.autoscaler.stub.Properties properties) {
-
- List<org.apache.stratos.manager.composite.application.beans.PropertyBean> propertyBeanList =
- new ArrayList<org.apache.stratos.manager.composite.application.beans.PropertyBean>();
- if((properties != null) && (properties.getProperties() != null)) {
- for (org.apache.stratos.autoscaler.stub.Property property : properties.getProperties()) {
- if(property != null) {
- org.apache.stratos.manager.composite.application.beans.PropertyBean propertyBean =
- new org.apache.stratos.manager.composite.application.beans.PropertyBean();
- propertyBean.setName(property.getName());
- propertyBean.setValue(property.getValue());
- propertyBeanList.add(propertyBean);
- }
- }
- }
- return propertyBeanList;
- }
-
- private static CartridgeContext[] convertCartridgeDefinitionsToCartridgeContexts(
- List<CartridgeDefinition> cartridges) {
-
- CartridgeContext[] cartridgeContextArray = new CartridgeContext[cartridges.size()];
- int i = 0;
- for (CartridgeDefinition cartridgeDefinition : cartridges) {
- CartridgeContext context = new CartridgeContext();
- context.setCartridgeMax(cartridgeDefinition.getCartridgeMax());
- context.setCartridgeMin(cartridgeDefinition.getCartridgeMin());
- context.setType(cartridgeDefinition.getType());
- context.setSubscribableInfoContext(convertSubscribableInfo(cartridgeDefinition.getSubscribableInfo()));
- cartridgeContextArray[i++] = context;
- }
-
- return cartridgeContextArray;
- }
-
- private static SubscribableInfoContext convertSubscribableInfo(
- SubscribableInfo subscribableInfo) {
- SubscribableInfoContext infoContext = new SubscribableInfoContext();
- infoContext.setAlias(subscribableInfo.getAlias());
- infoContext.setAutoscalingPolicy(subscribableInfo.getAutoscalingPolicy());
- infoContext.setDependencyAliases(subscribableInfo.getDependencyAliases());
- infoContext.setDeploymentPolicy(subscribableInfo.getDeploymentPolicy());
- infoContext.setMaxMembers(subscribableInfo.getMaxMembers());
- infoContext.setMinMembers(subscribableInfo.getMinMembers());
- infoContext.setRepoPassword(subscribableInfo.getRepoPassword());
- infoContext.setRepoUrl(subscribableInfo.getRepoUrl());
- infoContext.setRepoUsername(subscribableInfo.getRepoUsername());
- infoContext.setProperties(convertPropertyBeansToStubProperties(subscribableInfo.getProperty()));
-
- return infoContext;
- }
-
- private static org.apache.stratos.autoscaler.stub.Properties convertPropertyBeansToStubProperties(
- List<org.apache.stratos.manager.composite.application.beans.PropertyBean> property) {
- org.apache.stratos.autoscaler.stub.Properties prop = new org.apache.stratos.autoscaler.stub.Properties();
- if (property != null) {
- for (org.apache.stratos.manager.composite.application.beans.PropertyBean propertyBean : property) {
- org.apache.stratos.autoscaler.stub.Property p = new org.apache.stratos.autoscaler.stub.Property();
- p.setName(propertyBean.getName());
- p.setValue(propertyBean.getValue());
- prop.addProperties(p);
- }
- }
- return prop;
- }
-
-
- private static DependencyContext convertDependencyDefinitionsToDependencyContexts(DependencyDefinitions dependencyDefinitions) {
- DependencyContext dependencyContext = new DependencyContext();
- dependencyContext.setTerminationBehaviour(dependencyDefinitions.getTerminationBehaviour());
-
- if (dependencyDefinitions != null){
- if(dependencyDefinitions.getStartupOrders() != null) {
- String[] startupOrders = new String[dependencyDefinitions.getStartupOrders().size()];
- startupOrders = dependencyDefinitions.getStartupOrders().toArray(startupOrders);
- dependencyContext.setStartupOrdersContexts(startupOrders);
- }
- if (dependencyDefinitions.getScalingDependants() != null) {
- String[] scalingDependents = new String[dependencyDefinitions.getScalingDependants().size()];
- scalingDependents = dependencyDefinitions.getScalingDependants().toArray(scalingDependents);
- dependencyContext.setScalingDependents(scalingDependents);
- }
- }
- return dependencyContext;
- }
-
- private static org.apache.stratos.autoscaler.stub.pojo.GroupContext[]
- convertGroupDefinitionsToStubGroupContexts(List<GroupDefinition> groupDefinitions) {
-
- GroupContext[] groupContexts = new GroupContext[groupDefinitions.size()];
- int i = 0;
- for (GroupDefinition groupDefinition : groupDefinitions) {
- GroupContext groupContext = new GroupContext();
- groupContext.setName(groupDefinition.getName());
- groupContext.setAlias(groupDefinition.getAlias());
- groupContext.setGroupMaxInstances(groupDefinition.getGroupMaxInstances());
- groupContext.setGroupMinInstances(groupDefinition.getGroupMinInstances());
- groupContext.setGroupScalingEnabled(groupDefinition.isGroupScalingEnabled);
-
- // Groups
- if (groupDefinition.getGroups() != null) {
- groupContext.setGroupContexts(convertGroupDefinitionsToStubGroupContexts(groupDefinition.getGroups()));
- }
-
- groupContext.setCartridgeContexts(convertCartridgeDefinitionsToCartridgeContexts(groupDefinition.getCartridges()));
- groupContexts[i++] = groupContext;
- }
-
- return groupContexts;
- }
-
-
- public static ApplicationBean applicationToBean(Application application) {
- if (application == null) {
- return null;
- }
-
- ApplicationBean applicationBean = new ApplicationBean();
- applicationBean.setId(application.getUniqueIdentifier());
- applicationBean.setName(application.getName());
- applicationBean.setDescription(application.getDescription());
- applicationBean.setTenantDomain(application.getTenantDomain());
- applicationBean.setTenantAdminUsername(application.getTenantAdminUserName());
- applicationBean.setInstances(setApplicationInstances(application));
- return applicationBean;
- }
-
- private static List<Instance> setApplicationInstances(
- Application application) {
- List<Instance> applicationInstanceList = new ArrayList<Instance>();
- Collection<ApplicationInstance> applicationInstancesInTopology =
- application.getInstanceIdToInstanceContextMap().values();
-
- if(applicationInstancesInTopology != null) {
- for (ApplicationInstance applicationInstance : applicationInstancesInTopology) {
- Instance instance = new Instance();
- instance.setInstanceId(applicationInstance.getInstanceId());
- instance.setStatus(applicationInstance.getStatus().toString());
- applicationInstanceList.add(instance);
- }
- }
-
- return applicationInstanceList;
- }
-
- public static GroupBean toGroupBean(Group group) {
- if (group == null) {
- return null;
- }
-
- GroupBean groupBean = new GroupBean();
- groupBean.setInstances(setGroupInstances(group));
- groupBean.setAlias(group.getUniqueIdentifier());
- groupBean.setAutoScalingPolicy(group.getAutoscalingPolicy());
- return groupBean;
- }
-
- private static List<Instance> setGroupInstances(Group group) {
- List<Instance> instanceList = new ArrayList<Instance>();
- Collection<GroupInstance> instancesInTopology = group.getInstanceIdToInstanceContextMap().values();
- if(instancesInTopology != null) {
- for (GroupInstance groupInstance : instancesInTopology) {
- Instance instance = new Instance();
- instance.setStatus(groupInstance.getStatus().toString());
- instance.setInstanceId(groupInstance.getInstanceId());
- instanceList.add(instance);
- }
- }
- return instanceList;
- }
-}
[5/5] stratos git commit: Renaming PojoConverter to ObjectConverter
Posted by im...@apache.org.
Renaming PojoConverter to ObjectConverter
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/268db7b6
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/268db7b6
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/268db7b6
Branch: refs/heads/4.1.0-test
Commit: 268db7b6341690701ca13dc250ddb171aff94f0f
Parents: 38eed54
Author: Imesh Gunaratne <im...@apache.org>
Authored: Wed Dec 17 14:30:37 2014 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Wed Dec 17 14:30:37 2014 +0530
----------------------------------------------------------------------
.../rest/endpoint/api/StratosApiV40Utils.java | 40 +-
.../rest/endpoint/api/StratosApiV41Utils.java | 58 +-
.../stratos/rest/endpoint/mock/MockContext.java | 6 +-
.../util/converter/ObjectConverter.java | 1493 ++++++++++++++++++
.../endpoint/util/converter/PojoConverter.java | 1493 ------------------
5 files changed, 1545 insertions(+), 1545 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/268db7b6/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 d129da0..a837514 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
@@ -56,7 +56,7 @@ import org.apache.stratos.common.beans.cartridge.definition.CartridgeDefinitionB
import org.apache.stratos.common.beans.cartridge.definition.ServiceDefinitionBean;
import org.apache.stratos.common.beans.repositoryNotificationInfoBean.Payload;
import org.apache.stratos.common.beans.subscription.domain.SubscriptionDomainBean;
-import org.apache.stratos.rest.endpoint.util.converter.PojoConverter;
+import org.apache.stratos.rest.endpoint.util.converter.ObjectConverter;
import org.apache.stratos.rest.endpoint.exception.RestAPIException;
import javax.ws.rs.core.Response;
@@ -91,7 +91,7 @@ public class StratosApiV40Utils {
if (cloudControllerServiceClient != null) {
- CartridgeConfig cartridgeConfig = PojoConverter.populateCartridgeConfigPojo(cartridgeDefinitionBean);
+ CartridgeConfig cartridgeConfig = ObjectConverter.populateCartridgeConfigPojo(cartridgeDefinitionBean);
if(cartridgeConfig == null) {
throw new RestAPIException("Populated CartridgeConfig instance is null, cartridge deployment aborted");
@@ -202,7 +202,7 @@ public class StratosApiV40Utils {
AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient();
if (autoscalerServiceClient != null) {
- org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy = PojoConverter.
+ org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy = ObjectConverter.
convertToCCAutoscalerPojo(autoscalePolicyBean);
try {
@@ -253,7 +253,7 @@ public class StratosApiV40Utils {
// }
}
- return PojoConverter.populatePartitionPojos(partitions);
+ return ObjectConverter.populatePartitionPojos(partitions);
}
public static Partition[] getPartitionsOfDeploymentPolicy(String deploymentPolicyId)
@@ -274,7 +274,7 @@ public class StratosApiV40Utils {
// }
// }
- return PojoConverter.populatePartitionPojos(partitions);
+ return ObjectConverter.populatePartitionPojos(partitions);
}
public static Partition[]
@@ -295,7 +295,7 @@ public class StratosApiV40Utils {
// }
// }
- return PojoConverter.populatePartitionPojos(partitions);
+ return ObjectConverter.populatePartitionPojos(partitions);
}
public static Partition getPartition (String partitionId) throws RestAPIException {
@@ -313,7 +313,7 @@ public class StratosApiV40Utils {
// }
// }
- return PojoConverter.populatePartitionPojo(partition);
+ return ObjectConverter.populatePartitionPojo(partition);
}
private static AutoscalerServiceClient getAutoscalerServiceClient () throws RestAPIException {
@@ -343,7 +343,7 @@ public class StratosApiV40Utils {
throw new RestAPIException(errorMsg, e);
}
}
- return PojoConverter.populateAutoscalePojos(autoscalePolicies);
+ return ObjectConverter.populateAutoscalePojos(autoscalePolicies);
}
public static AutoscalePolicy getAutoScalePolicy (String autoscalePolicyId) throws RestAPIException {
@@ -362,7 +362,7 @@ public class StratosApiV40Utils {
}
}
- return PojoConverter.populateAutoscalePojo(autoscalePolicy);
+ return ObjectConverter.populateAutoscalePojo(autoscalePolicy);
}
public static org.apache.stratos.common.beans.autoscaler.policy.deployment.DeploymentPolicy
@@ -388,7 +388,7 @@ public class StratosApiV40Utils {
throw new RestAPIException(errorMsg);
}
- return PojoConverter.populateDeploymentPolicyPojo(deploymentPolicy);
+ return ObjectConverter.populateDeploymentPolicyPojo(deploymentPolicy);
}
public static ApplicationLevelNetworkPartition[] getPartitionGroups (String deploymentPolicyId)
@@ -408,7 +408,7 @@ public class StratosApiV40Utils {
}
}
- return PojoConverter.populatePartitionGroupPojos(applicationLevelNetworkPartitions);
+ return ObjectConverter.populatePartitionGroupPojos(applicationLevelNetworkPartitions);
}
static Cartridge getAvailableCartridgeInfo(String cartridgeType, Boolean multiTenant, ConfigurationContext configurationContext) throws RestAPIException {
@@ -572,7 +572,7 @@ public class StratosApiV40Utils {
}
if (services != null && !services.isEmpty()) {
- return PojoConverter.convertToServiceDefinitionBeans(services);
+ return ObjectConverter.convertToServiceDefinitionBeans(services);
}
return null;
@@ -592,7 +592,7 @@ public class StratosApiV40Utils {
}
if (service != null) {
- return PojoConverter.convertToServiceDefinitionBean(service);
+ return ObjectConverter.convertToServiceDefinitionBean(service);
}
return new ServiceDefinitionBean();
@@ -901,7 +901,7 @@ public class StratosApiV40Utils {
if(cluster == null) {
throw new RestAPIException("No matching cluster found for [cartridge type]: "+cartridgeType+ " [alias] "+subscriptionAlias);
} else{
- return PojoConverter.populateClusterPojos(cluster, null);
+ return ObjectConverter.populateClusterPojos(cluster, null);
}
}
@@ -912,7 +912,7 @@ public class StratosApiV40Utils {
ArrayList<org.apache.stratos.common.beans.topology.Cluster> clusters =
new ArrayList<org.apache.stratos.common.beans.topology.Cluster>();
for(Cluster cluster : clusterSet) {
- clusters.add(PojoConverter.populateClusterPojos(cluster, null));
+ clusters.add(ObjectConverter.populateClusterPojos(cluster, null));
}
org.apache.stratos.common.beans.topology.Cluster[] arrCluster =
new org.apache.stratos.common.beans.topology.Cluster[clusters.size()];
@@ -929,7 +929,7 @@ public class StratosApiV40Utils {
List<org.apache.stratos.common.beans.topology.Cluster> clusters =
new ArrayList<org.apache.stratos.common.beans.topology.Cluster>();
for(Cluster cluster : clusterSet) {
- clusters.add(PojoConverter.populateClusterPojos(cluster, null));
+ clusters.add(ObjectConverter.populateClusterPojos(cluster, null));
}
org.apache.stratos.common.beans.topology.Cluster[] arrCluster =
new org.apache.stratos.common.beans.topology.Cluster[clusters.size()];
@@ -945,7 +945,7 @@ public class StratosApiV40Utils {
.getClusters(cartridgeType);
List<org.apache.stratos.common.beans.topology.Cluster> clusters = new ArrayList<org.apache.stratos.common.beans.topology.Cluster>();
for (Cluster cluster : clusterSet) {
- clusters.add(PojoConverter.populateClusterPojos(cluster, null));
+ clusters.add(ObjectConverter.populateClusterPojos(cluster, null));
}
org.apache.stratos.common.beans.topology.Cluster[] arrCluster = new org.apache.stratos.common.beans.topology.Cluster[clusters
.size()];
@@ -1117,7 +1117,7 @@ public class StratosApiV40Utils {
String subscriptionAlias, String domain) throws RestAPIException {
try {
int tenantId = ApplicationManagementUtil.getTenantId(configurationContext);
- SubscriptionDomainBean subscriptionDomain = PojoConverter.populateSubscriptionDomainPojo(cartridgeSubsciptionManager.getSubscriptionDomain(tenantId,
+ SubscriptionDomainBean subscriptionDomain = ObjectConverter.populateSubscriptionDomainPojo(cartridgeSubsciptionManager.getSubscriptionDomain(tenantId,
subscriptionAlias, domain));
if (subscriptionDomain.getDomainName() != null) {
@@ -1136,7 +1136,7 @@ public class StratosApiV40Utils {
String subscriptionAlias) throws RestAPIException {
try {
int tenantId = ApplicationManagementUtil.getTenantId(configurationContext);
- return PojoConverter.populateSubscriptionDomainPojos(cartridgeSubsciptionManager.getSubscriptionDomains(tenantId, subscriptionAlias));
+ return ObjectConverter.populateSubscriptionDomainPojos(cartridgeSubsciptionManager.getSubscriptionDomains(tenantId, subscriptionAlias));
} catch (Exception e) {
log.error(e.getMessage(), e);
throw new RestAPIException(e.getMessage(), e);
@@ -1148,7 +1148,7 @@ public class StratosApiV40Utils {
try {
int tenantId = ApplicationManagementUtil
.getTenantId(configurationContext);
- SubscriptionDomainBean subscriptionDomain = PojoConverter.populateSubscriptionDomainPojo(cartridgeSubsciptionManager.getSubscriptionDomain(tenantId,
+ SubscriptionDomainBean subscriptionDomain = ObjectConverter.populateSubscriptionDomainPojo(cartridgeSubsciptionManager.getSubscriptionDomain(tenantId,
subscriptionAlias, domain));
if (subscriptionDomain == null) {
http://git-wip-us.apache.org/repos/asf/stratos/blob/268db7b6/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 66c5af4..09aaa60 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
@@ -68,7 +68,7 @@ import org.apache.stratos.common.beans.kubernetes.KubernetesGroup;
import org.apache.stratos.common.beans.kubernetes.KubernetesHost;
import org.apache.stratos.common.beans.kubernetes.KubernetesMaster;
import org.apache.stratos.common.beans.repositoryNotificationInfoBean.Payload;
-import org.apache.stratos.rest.endpoint.util.converter.PojoConverter;
+import org.apache.stratos.rest.endpoint.util.converter.ObjectConverter;
import org.apache.stratos.rest.endpoint.exception.RestAPIException;
import java.rmi.RemoteException;
@@ -95,7 +95,7 @@ public class StratosApiV41Utils {
log.info("Starting to deploy a cartridge: [type] " + cartridgeDefinitionBean.getType());
- CartridgeConfig cartridgeConfig = PojoConverter.populateCartridgeConfigPojo(cartridgeDefinitionBean);
+ CartridgeConfig cartridgeConfig = ObjectConverter.populateCartridgeConfigPojo(cartridgeDefinitionBean);
if (cartridgeConfig == null) {
throw new RestAPIException("Could not read cartridge definition, cartridge deployment failed");
}
@@ -528,7 +528,7 @@ public class StratosApiV41Utils {
AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient();
if (autoscalerServiceClient != null) {
- org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy = PojoConverter.
+ org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy = ObjectConverter.
convertToCCAutoscalerPojo(autoscalePolicyBean);
try {
@@ -553,7 +553,7 @@ public class StratosApiV41Utils {
AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient();
if (autoscalerServiceClient != null) {
- org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy = PojoConverter.
+ org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy = ObjectConverter.
convertToCCAutoscalerPojo(autoscalePolicyBean);
try {
@@ -583,7 +583,7 @@ public class StratosApiV41Utils {
throw new RestAPIException(errorMsg, e);
}
}
- return PojoConverter.populateAutoscalePojos(autoscalePolicies);
+ return ObjectConverter.populateAutoscalePojos(autoscalePolicies);
}
public static AutoscalePolicy getAutoScalePolicy(String autoscalePolicyId) throws RestAPIException {
@@ -602,7 +602,7 @@ public class StratosApiV41Utils {
}
}
- return PojoConverter.populateAutoscalePojo(autoscalePolicy);
+ return ObjectConverter.populateAutoscalePojo(autoscalePolicy);
}
public static org.apache.stratos.common.beans.autoscaler.policy.deployment.DeploymentPolicy
@@ -611,7 +611,7 @@ public class StratosApiV41Utils {
try {
AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient();
DeploymentPolicy deploymentPolicy = autoscalerServiceClient.getDeploymentPolicy(applicationId);
- return PojoConverter.convertStubDeploymentPolicyToDeploymentPolicy(deploymentPolicy);
+ return ObjectConverter.convertStubDeploymentPolicyToDeploymentPolicy(deploymentPolicy);
} catch (RemoteException e) {
String errorMsg = "Could not read deployment policy: [application-id] " + applicationId;
log.error(errorMsg, e);
@@ -636,7 +636,7 @@ public class StratosApiV41Utils {
}
}
- return PojoConverter.populatePartitionGroupPojos(partitionGroups);
+ return ObjectConverter.populatePartitionGroupPojos(partitionGroups);
}
// Util methods for services and subscriptions
@@ -795,7 +795,7 @@ public class StratosApiV41Utils {
ArrayList<org.apache.stratos.common.beans.topology.Cluster> clusters =
new ArrayList<org.apache.stratos.common.beans.topology.Cluster>();
for (Cluster cluster : clusterSet) {
- clusters.add(PojoConverter.populateClusterPojos(cluster, null));
+ clusters.add(ObjectConverter.populateClusterPojos(cluster, null));
}
org.apache.stratos.common.beans.topology.Cluster[] arrCluster =
new org.apache.stratos.common.beans.topology.Cluster[clusters.size()];
@@ -812,7 +812,7 @@ public class StratosApiV41Utils {
List<org.apache.stratos.common.beans.topology.Cluster> clusters =
new ArrayList<org.apache.stratos.common.beans.topology.Cluster>();
for (Cluster cluster : clusterSet) {
- clusters.add(PojoConverter.populateClusterPojos(cluster, null));
+ clusters.add(ObjectConverter.populateClusterPojos(cluster, null));
}
org.apache.stratos.common.beans.topology.Cluster[] arrCluster =
new org.apache.stratos.common.beans.topology.Cluster[clusters.size()];
@@ -927,7 +927,7 @@ public class StratosApiV41Utils {
throw new RestAPIException("Could not read application", e);
}
- ApplicationContext applicationContext = PojoConverter.convertApplicationDefinitionToApplicationContext(appDefinition);
+ ApplicationContext applicationContext = ObjectConverter.convertApplicationDefinitionToApplicationContext(appDefinition);
applicationContext.setTenantId(ApplicationManagementUtil.getTenantId(ctxt));
applicationContext.setTenantDomain(tenantDomain);
applicationContext.setTeantAdminUsername(userName);
@@ -990,7 +990,7 @@ public class StratosApiV41Utils {
}
org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy stubDeploymentPolicy =
- PojoConverter.convetToASDeploymentPolicyPojo(deploymentPolicy);
+ ObjectConverter.convetToASDeploymentPolicyPojo(deploymentPolicy);
autoscalerServiceClient.deployApplication(applicationId, stubDeploymentPolicy);
if (log.isInfoEnabled()) {
@@ -1032,7 +1032,7 @@ public class StratosApiV41Utils {
public static ApplicationDefinition getApplication(String applicationId) throws RestAPIException {
try {
- return PojoConverter.convertApplicationContextToApplicationDefinition(
+ return ObjectConverter.convertApplicationContextToApplicationDefinition(
AutoscalerServiceClient.getServiceClient().getApplication(applicationId));
} catch (RemoteException e) {
String message = "Could not read application: [application-id] " + applicationId;
@@ -1049,7 +1049,7 @@ public class StratosApiV41Utils {
for (ApplicationContext applicationContext : applicationContexts) {
if(applicationContext != null) {
ApplicationDefinition applicationDefinition =
- PojoConverter.convertApplicationContextToApplicationDefinition(applicationContext);
+ ObjectConverter.convertApplicationContextToApplicationDefinition(applicationContext);
applicationDefinitions.add(applicationDefinition);
}
}
@@ -1085,7 +1085,7 @@ public class StratosApiV41Utils {
ApplicationManager.acquireReadLockForApplications();
ApplicationBean applicationBean;
for (Application application : ApplicationManager.getApplications().getApplications().values()) {
- applicationBean = PojoConverter.applicationToBean(application);
+ applicationBean = ObjectConverter.applicationToBean(application);
addClustersToApplicationBean(applicationBean, application);
addGroupsToApplicationBean(applicationBean, application);
applicationBeanList.add(applicationBean);
@@ -1105,7 +1105,7 @@ public class StratosApiV41Utils {
if (application == null) {
return null;
}
- applicationBean = PojoConverter.applicationToBean(application);
+ applicationBean = ObjectConverter.applicationToBean(application);
addClustersToApplicationBean(applicationBean, application);
addGroupsToApplicationBean(applicationBean, application);
} finally {
@@ -1117,7 +1117,7 @@ public class StratosApiV41Utils {
private static void addGroupsToApplicationBean(ApplicationBean applicationBean, Application application) {
Collection<Group> groups = application.getGroups();
for (Group group : groups) {
- GroupBean groupBean = PojoConverter.toGroupBean(group);
+ GroupBean groupBean = ObjectConverter.toGroupBean(group);
setSubGroups(group, groupBean);
applicationBean.addGroup(groupBean);
}
@@ -1131,7 +1131,7 @@ public class StratosApiV41Utils {
String serviceType = clusterDataHolder.getServiceType();
TopologyManager.acquireReadLockForCluster(serviceType, clusterId);
Cluster topLevelCluster = TopologyManager.getTopology().getService(serviceType).getCluster(clusterId);
- applicationBean.getClusters().add(PojoConverter.populateClusterPojos(topLevelCluster, entry.getKey()));
+ applicationBean.getClusters().add(ObjectConverter.populateClusterPojos(topLevelCluster, entry.getKey()));
}
}
@@ -1139,7 +1139,7 @@ public class StratosApiV41Utils {
Collection<Group> subgroups = group.getGroups();
addClustersToGroupBean(group, groupBean);
for (Group subGroup : subgroups) {
- GroupBean subGroupBean = PojoConverter.toGroupBean(subGroup);
+ GroupBean subGroupBean = ObjectConverter.toGroupBean(subGroup);
setSubGroups(subGroup, subGroupBean);
groupBean.addGroup(subGroupBean);
@@ -1151,7 +1151,7 @@ public class StratosApiV41Utils {
for (Map.Entry<String, ClusterDataHolder> x : clustersDatamap.entrySet()) {
ClusterDataHolder clusterHolder = x.getValue();
Cluster topLevelCluster = TopologyManager.getTopology().getService(clusterHolder.getServiceType()).getCluster(clusterHolder.getClusterId());
- groupBean.addCluster(PojoConverter.populateClusterPojos(topLevelCluster, null));
+ groupBean.addCluster(ObjectConverter.populateClusterPojos(topLevelCluster, null));
}
}
@@ -1162,7 +1162,7 @@ public class StratosApiV41Utils {
CloudControllerServiceClient cloudControllerServiceClient = getCloudControllerServiceClient();
if (cloudControllerServiceClient != null) {
org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup kubernetesGroup =
- PojoConverter.convertToCCKubernetesGroupPojo(kubernetesGroupBean);
+ ObjectConverter.convertToCCKubernetesGroupPojo(kubernetesGroupBean);
try {
return cloudControllerServiceClient.deployKubernetesGroup(kubernetesGroup);
@@ -1184,7 +1184,7 @@ public class StratosApiV41Utils {
CloudControllerServiceClient cloudControllerServiceClient = getCloudControllerServiceClient();
if (cloudControllerServiceClient != null) {
org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost kubernetesHost =
- PojoConverter.convertToCCKubernetesHostPojo(kubernetesHostBean);
+ ObjectConverter.convertToCCKubernetesHostPojo(kubernetesHostBean);
try {
return cloudControllerServiceClient.deployKubernetesHost(kubernetesGroupId, kubernetesHost);
@@ -1209,7 +1209,7 @@ public class StratosApiV41Utils {
CloudControllerServiceClient cloudControllerServiceClient = getCloudControllerServiceClient();
if (cloudControllerServiceClient != null) {
org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster kubernetesMaster =
- PojoConverter.convertToCCKubernetesMasterPojo(kubernetesMasterBean);
+ ObjectConverter.convertToCCKubernetesMasterPojo(kubernetesMasterBean);
try {
return cloudControllerServiceClient.updateKubernetesMaster(kubernetesMaster);
@@ -1236,7 +1236,7 @@ public class StratosApiV41Utils {
try {
org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup[]
kubernetesGroups = cloudControllerServiceClient.getAvailableKubernetesGroups();
- return PojoConverter.populateKubernetesGroupsPojo(kubernetesGroups);
+ return ObjectConverter.populateKubernetesGroupsPojo(kubernetesGroups);
} catch (RemoteException e) {
log.error(e.getMessage(), e);
@@ -1253,7 +1253,7 @@ public class StratosApiV41Utils {
try {
org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup
kubernetesGroup = cloudControllerServiceClient.getKubernetesGroup(kubernetesGroupId);
- return PojoConverter.populateKubernetesGroupPojo(kubernetesGroup);
+ return ObjectConverter.populateKubernetesGroupPojo(kubernetesGroup);
} catch (RemoteException e) {
log.error(e.getMessage(), e);
@@ -1313,7 +1313,7 @@ public class StratosApiV41Utils {
org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[]
kubernetesHosts = cloudControllerServiceClient.getKubernetesHosts(kubernetesGroupId);
- List<KubernetesHost> arrayList = PojoConverter.populateKubernetesHostsPojo(kubernetesHosts);
+ List<KubernetesHost> arrayList = ObjectConverter.populateKubernetesHostsPojo(kubernetesHosts);
KubernetesHost[] array = new KubernetesHost[arrayList.size()];
array = arrayList.toArray(array);
return array;
@@ -1335,7 +1335,7 @@ public class StratosApiV41Utils {
try {
org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster
kubernetesMaster = cloudControllerServiceClient.getKubernetesMaster(kubernetesGroupId);
- return PojoConverter.populateKubernetesMasterPojo(kubernetesMaster);
+ return ObjectConverter.populateKubernetesMasterPojo(kubernetesMaster);
} catch (RemoteException e) {
log.error(e.getMessage(), e);
@@ -1353,7 +1353,7 @@ public class StratosApiV41Utils {
CloudControllerServiceClient cloudControllerServiceClient = getCloudControllerServiceClient();
if (cloudControllerServiceClient != null) {
org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost kubernetesHost =
- PojoConverter.convertToCCKubernetesHostPojo(kubernetesHostBean);
+ ObjectConverter.convertToCCKubernetesHostPojo(kubernetesHostBean);
try {
return cloudControllerServiceClient.updateKubernetesHost(kubernetesHost);
} catch (RemoteException e) {
@@ -1382,7 +1382,7 @@ public class StratosApiV41Utils {
throw new RestAPIException("No matching cluster found for [alias] " + alias);
}
if (property != null) {
- autoscalerServiceClient.updateClusterMonitor(cluster.getClusterId(), PojoConverter.getProperties(property));
+ autoscalerServiceClient.updateClusterMonitor(cluster.getClusterId(), ObjectConverter.getProperties(property));
}
} catch (AutoScalerServiceInvalidArgumentExceptionException e) {
String message = e.getFaultMessage().getInvalidArgumentException().getMessage();
http://git-wip-us.apache.org/repos/asf/stratos/blob/268db7b6/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 cbf4bb7..dfa6aa2 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
@@ -34,7 +34,7 @@ import org.apache.stratos.common.beans.cartridge.definition.CartridgeDefinitionB
import org.apache.stratos.common.beans.cartridge.definition.ServiceDefinitionBean;
import org.apache.stratos.common.beans.subscription.domain.SubscriptionDomainBean;
import org.apache.stratos.common.beans.topology.Cluster;
-import org.apache.stratos.rest.endpoint.util.converter.PojoConverter;
+import org.apache.stratos.rest.endpoint.util.converter.ObjectConverter;
import org.apache.stratos.rest.endpoint.exception.RestAPIException;
import org.wso2.carbon.context.CarbonContext;
import java.util.*;
@@ -878,7 +878,7 @@ public class MockContext {
List<String> tenantAliases = tenantIdToAliasesMap.get(tenantId);
if(tenantAliases != null && tenantAliases.contains(alias)) {
- return PojoConverter.populateSubscriptionDomainPojos(subscriptionAliasToDomainMap.get(alias));
+ return ObjectConverter.populateSubscriptionDomainPojos(subscriptionAliasToDomainMap.get(alias));
}
return new ArrayList<SubscriptionDomainBean>();
}
@@ -890,7 +890,7 @@ public class MockContext {
for (SubscriptionDomain subscriptionDomain : subscriptionAliasToDomainMap.get(subscriptionAlias)) {
if(subscriptionDomain.getDomainName().equals(domainName)) {
- return PojoConverter.populateSubscriptionDomainPojo(subscriptionDomain);
+ return ObjectConverter.populateSubscriptionDomainPojo(subscriptionDomain);
}
}
}
[4/5] stratos git commit: Renaming PojoConverter to ObjectConverter
Posted by im...@apache.org.
http://git-wip-us.apache.org/repos/asf/stratos/blob/268db7b6/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
new file mode 100644
index 0000000..9b0b5d5
--- /dev/null
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
@@ -0,0 +1,1493 @@
+/*
+ * 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.rest.endpoint.util.converter;
+
+import org.apache.commons.lang.StringUtils;
+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.policy.ChildPolicy;
+import org.apache.stratos.autoscaler.stub.pojo.*;
+import org.apache.stratos.cloud.controller.stub.domain.*;
+import org.apache.stratos.cloud.controller.stub.domain.ServiceGroup;
+import org.apache.stratos.common.Properties;
+import org.apache.stratos.common.Property;
+import org.apache.stratos.common.beans.ApplicationBean;
+import org.apache.stratos.common.beans.GroupBean;
+import org.apache.stratos.common.beans.autoscaler.partition.ApplicationLevelNetworkPartition;
+import org.apache.stratos.common.beans.autoscaler.partition.Partition;
+import org.apache.stratos.common.beans.autoscaler.policy.autoscale.*;
+import org.apache.stratos.common.beans.autoscaler.policy.deployment.ApplicationPolicy;
+import org.apache.stratos.common.beans.autoscaler.policy.deployment.DeploymentPolicy;
+import org.apache.stratos.common.beans.cartridge.definition.*;
+import org.apache.stratos.common.beans.cartridge.definition.PropertyBean;
+import org.apache.stratos.common.beans.kubernetes.KubernetesGroup;
+import org.apache.stratos.common.beans.kubernetes.KubernetesHost;
+import org.apache.stratos.common.beans.kubernetes.KubernetesMaster;
+import org.apache.stratos.common.beans.kubernetes.PortRange;
+import org.apache.stratos.common.beans.subscription.domain.SubscriptionDomainBean;
+import org.apache.stratos.common.beans.topology.Instance;
+import org.apache.stratos.common.beans.topology.Member;
+import org.apache.stratos.common.util.CommonUtil;
+import org.apache.stratos.manager.composite.application.beans.*;
+import org.apache.stratos.manager.deploy.service.Service;
+import org.apache.stratos.manager.grouping.definitions.DependencyDefinitions;
+import org.apache.stratos.manager.grouping.definitions.ServiceGroupDefinition;
+import org.apache.stratos.manager.subscription.SubscriptionDomain;
+import org.apache.stratos.messaging.domain.applications.Application;
+import org.apache.stratos.messaging.domain.applications.Group;
+import org.apache.stratos.messaging.domain.instance.ApplicationInstance;
+import org.apache.stratos.messaging.domain.instance.ClusterInstance;
+import org.apache.stratos.messaging.domain.instance.GroupInstance;
+import org.apache.stratos.messaging.domain.topology.Cluster;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.List;
+
+public class ObjectConverter {
+
+ public static CartridgeConfig populateCartridgeConfigPojo(CartridgeDefinitionBean cartridgeDefinitionBean) {
+
+ CartridgeConfig cartridgeConfig = new CartridgeConfig();
+
+ cartridgeConfig.setType(cartridgeDefinitionBean.getType());
+ cartridgeConfig.setHostName(cartridgeDefinitionBean.getHost());
+ cartridgeConfig.setProvider(cartridgeDefinitionBean.getProvider());
+ cartridgeConfig.setCategory(cartridgeDefinitionBean.getCategory());
+ cartridgeConfig.setVersion(cartridgeDefinitionBean.getVersion());
+ cartridgeConfig.setMultiTenant(cartridgeDefinitionBean.isMultiTenant());
+ cartridgeConfig.setIsPublic(cartridgeDefinitionBean.isPublic());
+ cartridgeConfig.setDisplayName(cartridgeDefinitionBean.getDisplayName());
+ cartridgeConfig.setDescription(cartridgeDefinitionBean.getDescription());
+ cartridgeConfig.setDefaultAutoscalingPolicy(cartridgeDefinitionBean.getDefaultAutoscalingPolicy());
+ cartridgeConfig.setDefaultDeploymentPolicy(cartridgeDefinitionBean.getDefaultDeploymentPolicy());
+ cartridgeConfig.setServiceGroup(cartridgeDefinitionBean.getServiceGroup());
+ cartridgeConfig.setDeployerType(cartridgeDefinitionBean.getDeployerType());
+
+
+ //deployment information
+ if (cartridgeDefinitionBean.getDeployment() != null) {
+ cartridgeConfig.setBaseDir(cartridgeDefinitionBean.getDeployment().getBaseDir());
+ if (cartridgeDefinitionBean.getDeployment().getDir() != null && !cartridgeDefinitionBean.getDeployment().getDir().isEmpty()) {
+ cartridgeConfig.setDeploymentDirs(cartridgeDefinitionBean.getDeployment().getDir().
+ toArray(new String[cartridgeDefinitionBean.getDeployment().getDir().size()]));
+ }
+ }
+ //port mapping
+ if (cartridgeDefinitionBean.getPortMapping() != null && !cartridgeDefinitionBean.getPortMapping().isEmpty()) {
+ cartridgeConfig.setPortMappings(getPortMappingsAsArray(cartridgeDefinitionBean.getPortMapping()));
+ }
+
+ //persistance mapping
+ if (cartridgeDefinitionBean.getPersistence() != null) {
+ cartridgeConfig.setPersistence(getPersistence(cartridgeDefinitionBean.getPersistence()));
+ }
+
+ //IaaS
+ if (cartridgeDefinitionBean.getIaasProvider() != null && !cartridgeDefinitionBean.getIaasProvider().isEmpty()) {
+ cartridgeConfig.setIaasConfigs(getIaasConfigsAsArray(cartridgeDefinitionBean.getIaasProvider()));
+ }
+ //Properties
+ if (cartridgeDefinitionBean.getProperty() != null && !cartridgeDefinitionBean.getProperty().isEmpty()) {
+ cartridgeConfig.setProperties(getCCProperties(cartridgeDefinitionBean.getProperty()));
+ }
+
+ if (cartridgeDefinitionBean.getExportingProperties() != null) {
+ List<String> propertiesList = cartridgeDefinitionBean.getExportingProperties();
+ String[] propertiesArray = propertiesList.toArray(new String[propertiesList.size()]);
+ cartridgeConfig.setExportingProperties(propertiesArray);
+ }
+
+ if (cartridgeDefinitionBean.getContainer() != null) {
+ cartridgeConfig.setContainer(getContainer(cartridgeDefinitionBean.getContainer()));
+ }
+
+ return cartridgeConfig;
+ }
+
+ public static ServiceGroup populateServiceGroupPojo(ServiceGroupDefinition serviceGroupDefinition) {
+ ServiceGroup servicegroup = new ServiceGroup();
+
+ return servicegroup;
+ }
+
+ private static Container getContainer(ContainerBean container) {
+ Container cn = new Container();
+ cn.setDockerFileRepo(container.getDockerfileRepo());
+ cn.setImageName(container.getImageName());
+ //cn.setProperties(getProperties(container.property));
+ return cn;
+ }
+
+ private static LoadbalancerConfig getLBConfig(LoadBalancerBean loadBalancer) {
+ LoadbalancerConfig lbConfig = new LoadbalancerConfig();
+ lbConfig.setType(loadBalancer.getType());
+ if (loadBalancer.getProperty() != null && !loadBalancer.getProperty().isEmpty()) {
+ lbConfig.setProperties(getCCProperties(loadBalancer.getProperty()));
+ }
+ return lbConfig;
+ }
+
+ private static PortMapping[] getPortMappingsAsArray(List<PortMappingBean> portMappingBeans) {
+
+ //convert to an array
+ PortMappingBean[] portMappingBeanArray = new PortMappingBean[portMappingBeans.size()];
+ portMappingBeans.toArray(portMappingBeanArray);
+ PortMapping[] portMappingArray = new PortMapping[portMappingBeanArray.length];
+
+ for (int i = 0; i < portMappingBeanArray.length; i++) {
+ PortMapping portMapping = new PortMapping();
+ portMapping.setProtocol(portMappingBeanArray[i].getProtocol());
+ portMapping.setPort(Integer.toString(portMappingBeanArray[i].getPort()));
+ portMapping.setProxyPort(Integer.toString(portMappingBeanArray[i].getProxyPort()));
+ portMappingArray[i] = portMapping;
+ }
+
+ return portMappingArray;
+ }
+
+ private static IaasConfig[] getIaasConfigsAsArray(List<IaasProviderBean> iaasProviderBeans) {
+
+ //convert to an array
+ IaasProviderBean[] iaasProviderBeansArray = new IaasProviderBean[iaasProviderBeans.size()];
+ iaasProviderBeans.toArray(iaasProviderBeansArray);
+ IaasConfig[] iaasConfigsArray = new IaasConfig[iaasProviderBeansArray.length];
+
+ for (int i = 0; i < iaasProviderBeansArray.length; i++) {
+ IaasConfig iaasConfig = new IaasConfig();
+ iaasConfig.setType(iaasProviderBeansArray[i].getType());
+ iaasConfig.setImageId(iaasProviderBeansArray[i].getImageId());
+ iaasConfig.setMaxInstanceLimit(iaasProviderBeansArray[i].getMaxInstanceLimit());
+ iaasConfig.setName(iaasProviderBeansArray[i].getName());
+ iaasConfig.setClassName(iaasProviderBeansArray[i].getClassName());
+ iaasConfig.setCredential(iaasProviderBeansArray[i].getCredential());
+ iaasConfig.setIdentity(iaasProviderBeansArray[i].getIdentity());
+ iaasConfig.setProvider(iaasProviderBeansArray[i].getProvider());
+
+ if (iaasProviderBeansArray[i].getProperty() != null && !iaasProviderBeansArray[i].getProperty().isEmpty()) {
+ //set the Properties instance to IaasConfig instance
+ iaasConfig.setProperties(getCCProperties(iaasProviderBeansArray[i].getProperty()));
+ }
+
+ if (iaasProviderBeansArray[i].getNetworkInterfaces() != null && !iaasProviderBeansArray[i].getNetworkInterfaces().isEmpty()) {
+ iaasConfig.setNetworkInterfaces(ObjectConverter.getNetworkInterfaces(iaasProviderBeansArray[i].getNetworkInterfaces()));
+ }
+
+ iaasConfigsArray[i] = iaasConfig;
+ }
+ return iaasConfigsArray;
+ }
+
+ public static Persistence getPersistence(PersistenceBean persistenceBean) {
+ Persistence persistence = new Persistence();
+ persistence.setPersistanceRequired(persistenceBean.isRequired());
+ VolumeBean[] volumeBean = new VolumeBean[persistenceBean.getVolume().size()];
+ persistenceBean.getVolume().toArray(volumeBean);
+ Volume[] volumes = new Volume[persistenceBean.getVolume().size()];
+ for (int i = 0; i < volumes.length; i++) {
+ Volume volume = new Volume();
+ volume.setId(volumeBean[i].getId());
+ volume.setVolumeId(volumeBean[i].getVolumeId());
+ if (StringUtils.isEmpty(volume.getVolumeId())) {
+ volume.setSize(Integer.parseInt(volumeBean[i].getSize()));
+ }
+
+ volume.setDevice(volumeBean[i].getDevice());
+ volume.setRemoveOntermination(volumeBean[i].isRemoveOnTermination());
+ volume.setMappingPath(volumeBean[i].getMappingPath());
+ volume.setSnapshotId(volumeBean[i].getSnapshotId());
+
+ volumes[i] = volume;
+ }
+ persistence.setVolumes(volumes);
+ return persistence;
+
+ }
+
+ public static Properties getProperties(List<PropertyBean> propertyBeans) {
+
+ //convert to an array
+ PropertyBean[] propertyBeansArray = new PropertyBean[propertyBeans.size()];
+ propertyBeans.toArray(propertyBeansArray);
+ Property[] propertyArray = new Property[propertyBeansArray.length];
+
+ for (int j = 0; j < propertyBeansArray.length; j++) {
+ Property property = new Property();
+ property.setName(propertyBeansArray[j].getName());
+ property.setValue(propertyBeansArray[j].getValue());
+ propertyArray[j] = property;
+ }
+
+ Properties properties = new Properties();
+ properties.setProperties(propertyArray);
+ return properties;
+ }
+
+ public static org.apache.stratos.cloud.controller.stub.Properties getCCProperties(List<PropertyBean> propertyBeans) {
+
+ //convert to an array
+ PropertyBean[] propertyBeansArray = new PropertyBean[propertyBeans.size()];
+ propertyBeans.toArray(propertyBeansArray);
+ org.apache.stratos.cloud.controller.stub.Property[] propertyArray = new org.apache.stratos.cloud.controller.stub.Property[propertyBeansArray.length];
+
+ for (int j = 0; j < propertyBeansArray.length; j++) {
+ org.apache.stratos.cloud.controller.stub.Property property = new org.apache.stratos.cloud.controller.stub.Property();
+ property.setName(propertyBeansArray[j].getName());
+ property.setValue(propertyBeansArray[j].getValue());
+ propertyArray[j] = property;
+ }
+
+ org.apache.stratos.cloud.controller.stub.Properties properties = new org.apache.stratos.cloud.controller.stub.Properties();
+ properties.setProperties(propertyArray);
+ return properties;
+ }
+
+
+ public static org.apache.stratos.autoscaler.stub.Properties getASProperties(List<PropertyBean> propertyBeans) {
+ if (propertyBeans == null || propertyBeans.isEmpty()) {
+ return null;
+ }
+
+ //convert to an array
+ PropertyBean[] propertyBeansArray = new PropertyBean[propertyBeans.size()];
+ propertyBeans.toArray(propertyBeansArray);
+ org.apache.stratos.autoscaler.stub.Property[] propertyArray = new org.apache.stratos.autoscaler.stub.Property[propertyBeansArray.length];
+
+ for (int j = 0; j < propertyBeansArray.length; j++) {
+ org.apache.stratos.autoscaler.stub.Property property = new org.apache.stratos.autoscaler.stub.Property();
+ property.setName(propertyBeansArray[j].getName());
+ property.setValue(propertyBeansArray[j].getValue());
+ propertyArray[j] = property;
+ }
+
+ org.apache.stratos.autoscaler.stub.Properties properties = new org.apache.stratos.autoscaler.stub.Properties();
+ properties.setProperties(propertyArray);
+ return properties;
+ }
+
+ private static NetworkInterfaces getNetworkInterfaces(List<NetworkInterfaceBean> networkInterfaceBeans) {
+ NetworkInterface[] networkInterfacesArray = new NetworkInterface[networkInterfaceBeans.size()];
+
+ int i = 0;
+ for (NetworkInterfaceBean nib : networkInterfaceBeans) {
+ NetworkInterface networkInterface = new NetworkInterface();
+ networkInterface.setNetworkUuid(nib.getNetworkUuid());
+ networkInterface.setFixedIp(nib.getFixedIp());
+ networkInterface.setPortUuid(nib.getPortUuid());
+ if (nib.getFloatingNetworks() != null && !nib.getFloatingNetworks().isEmpty()) {
+ networkInterface.setFloatingNetworks(ObjectConverter.getFloatingNetworks(nib.getFloatingNetworks()));
+ }
+
+ networkInterfacesArray[i++] = networkInterface;
+ }
+
+ NetworkInterfaces networkInterfaces = new NetworkInterfaces();
+ networkInterfaces.setNetworkInterfaces(networkInterfacesArray);
+ return networkInterfaces;
+ }
+
+ private static FloatingNetworks getFloatingNetworks(List<FloatingNetworkBean> floatingNetworkBeans) {
+
+ FloatingNetwork[] floatingNetworksArray = new FloatingNetwork[floatingNetworkBeans.size()];
+
+ int i =0;
+ for (FloatingNetworkBean floatingNetworkBean : floatingNetworkBeans) {
+ FloatingNetwork floatingNetwork = new FloatingNetwork();
+ floatingNetwork.setName(floatingNetworkBean.getName());
+ floatingNetwork.setNetworkUuid(floatingNetworkBean.getNetworkUuid());
+ floatingNetwork.setFloatingIP(floatingNetworkBean.getFloatingIP());
+ floatingNetworksArray[i++] = floatingNetwork;
+ }
+
+ FloatingNetworks floatingNetworks = new FloatingNetworks();
+ floatingNetworks.setFloatingNetworks(floatingNetworksArray);
+ return floatingNetworks;
+ }
+
+ public static org.apache.stratos.autoscaler.stub.deployment.partition.Partition convertToCCPartitionPojo
+ (Partition 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 org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy convertToCCAutoscalerPojo(AutoscalePolicy
+ autoscalePolicyBean) {
+
+ org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy autoscalePolicy = new
+ org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy();
+
+ autoscalePolicy.setId(autoscalePolicyBean.getId());
+ autoscalePolicy.setDescription(autoscalePolicyBean.getDescription());
+ autoscalePolicy.setIsPublic(autoscalePolicyBean.getIsPublic());
+ autoscalePolicy.setDisplayName(autoscalePolicyBean.getDisplayName());
+ autoscalePolicy.setInstanceRoundingFactor(autoscalePolicyBean.getInstanceRoundingFactor());
+
+ if (autoscalePolicyBean.getLoadThresholds() != null) {
+
+ org.apache.stratos.autoscaler.stub.autoscale.policy.LoadThresholds loadThresholds = new
+ org.apache.stratos.autoscaler.stub.autoscale.policy.LoadThresholds();
+
+ if (autoscalePolicyBean.getLoadThresholds().getLoadAverage() != null) {
+
+ //set load average information
+ org.apache.stratos.autoscaler.stub.autoscale.policy.LoadAverageThresholds loadAverage = new
+ org.apache.stratos.autoscaler.stub.autoscale.policy.LoadAverageThresholds();
+ loadAverage.setUpperLimit(autoscalePolicyBean.getLoadThresholds().getLoadAverage().getThreshold());
+ loadAverage.setLowerLimit(autoscalePolicyBean.getLoadThresholds().getLoadAverage().getLowerLimit());
+ //set load average
+ loadThresholds.setLoadAverage(loadAverage);
+ }
+ if (autoscalePolicyBean.getLoadThresholds().getRequestsInFlight() != null) {
+
+ org.apache.stratos.autoscaler.stub.autoscale.policy.RequestsInFlightThresholds requestsInFlight = new
+ org.apache.stratos.autoscaler.stub.autoscale.policy.RequestsInFlightThresholds();
+ //set request in flight information
+ requestsInFlight.setUpperLimit(autoscalePolicyBean.getLoadThresholds().getRequestsInFlight().getThreshold());
+ requestsInFlight.setLowerLimit(autoscalePolicyBean.getLoadThresholds().getRequestsInFlight().getLowerLimit());
+ //set request in flight
+ loadThresholds.setRequestsInFlight(requestsInFlight);
+ }
+ if (autoscalePolicyBean.getLoadThresholds().getMemoryConsumption() != null) {
+
+ org.apache.stratos.autoscaler.stub.autoscale.policy.MemoryConsumptionThresholds memoryConsumption = new
+ org.apache.stratos.autoscaler.stub.autoscale.policy.MemoryConsumptionThresholds();
+
+ //set memory consumption information
+ memoryConsumption.setUpperLimit(autoscalePolicyBean.getLoadThresholds().getMemoryConsumption().getThreshold());
+ memoryConsumption.setLowerLimit(autoscalePolicyBean.getLoadThresholds().getMemoryConsumption().getLowerLimit());
+ //set memory consumption
+ loadThresholds.setMemoryConsumption(memoryConsumption);
+ }
+
+ autoscalePolicy.setLoadThresholds(loadThresholds);
+ }
+
+ return autoscalePolicy;
+ }
+
+ public static org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy convetToASDeploymentPolicyPojo(
+ DeploymentPolicy deploymentPolicyBean) {
+
+ org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy deploymentPolicy =
+ new org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy();
+
+ deploymentPolicy.setApplicationId(deploymentPolicyBean.getApplicationId());
+ deploymentPolicy.setDescription(deploymentPolicyBean.getDescription());
+ deploymentPolicy.setIsPublic(deploymentPolicyBean.isPublic());
+ if (deploymentPolicyBean.getApplicationPolicy() != null
+ && deploymentPolicyBean.getApplicationPolicy().getNetworkPartition() != null
+ && !deploymentPolicyBean.getApplicationPolicy().getNetworkPartition().isEmpty()) {
+ deploymentPolicy
+ .setApplicationLevelNetworkPartitions(convertToCCPartitionGroup(deploymentPolicyBean.getApplicationPolicy().getNetworkPartition()));
+ }
+
+ if (deploymentPolicyBean.getChildPolicies() != null && !deploymentPolicyBean.getChildPolicies().isEmpty()) {
+ deploymentPolicy.setChildPolicies(convertToCCChildPolicy(deploymentPolicyBean.getChildPolicies()));
+ }
+
+ return deploymentPolicy;
+ }
+
+ public static DeploymentPolicy convertStubDeploymentPolicyToDeploymentPolicy(
+ org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy stubDeploymentPolicy) {
+
+ DeploymentPolicy deploymentPolicy = new DeploymentPolicy();
+
+ deploymentPolicy.setApplicationId(stubDeploymentPolicy.getApplicationId());
+ deploymentPolicy.setDescription(stubDeploymentPolicy.getDescription());
+ deploymentPolicy.setPublic(stubDeploymentPolicy.getIsPublic());
+ if (stubDeploymentPolicy.getApplicationLevelNetworkPartitions() != null) {
+ org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[]
+ networkPartitions = stubDeploymentPolicy.getApplicationLevelNetworkPartitions();
+ if(networkPartitions != null) {
+ deploymentPolicy.setApplicationPolicy(new ApplicationPolicy());
+ List<ApplicationLevelNetworkPartition> networkPartitionList = new ArrayList<ApplicationLevelNetworkPartition>();
+ for(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition
+ networkPartition : networkPartitions) {
+ if(networkPartition != null) {
+ networkPartitionList.add(convertStubNetworkPartitionToNetworkPartition(networkPartition));
+ }
+ }
+ deploymentPolicy.getApplicationPolicy().setNetworkPartition(networkPartitionList);
+ }
+ }
+
+ if (stubDeploymentPolicy.getChildPolicies() != null) {
+ List<org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy> childPolicyList =
+ new ArrayList<org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy>();
+ for(org.apache.stratos.autoscaler.stub.deployment.policy.ChildPolicy stubChildDeploymentPolicy :
+ stubDeploymentPolicy.getChildPolicies()) {
+ if(stubChildDeploymentPolicy != null) {
+ childPolicyList.add(convertStubChildPolicyToChildPolicy(stubChildDeploymentPolicy));
+ }
+ }
+ deploymentPolicy.setChildPolicies(childPolicyList);
+ }
+ return deploymentPolicy;
+ }
+
+ private static org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy
+ convertStubChildPolicyToChildPolicy(ChildPolicy stubChildDeploymentPolicy) {
+ if(stubChildDeploymentPolicy == null) {
+ return null;
+ }
+ org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy childPolicy = new
+ org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy();
+ childPolicy.setChildId(stubChildDeploymentPolicy.getId());
+ if(stubChildDeploymentPolicy.getChildLevelNetworkPartitions() != null) {
+ List<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition> networkPartitionList
+ = new ArrayList<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition>();
+ for(org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelNetworkPartition
+ stubChildLevelNetworkPartition : stubChildDeploymentPolicy.getChildLevelNetworkPartitions()) {
+ networkPartitionList.add(convertStubChildLevelNetworkPartitionToChildLevelNetworkPartition(stubChildLevelNetworkPartition));
+ }
+ childPolicy.setNetworkPartition(networkPartitionList);
+ }
+ return childPolicy;
+ }
+
+ private static org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition
+ convertStubChildLevelNetworkPartitionToChildLevelNetworkPartition(
+ ChildLevelNetworkPartition stubChildLevelNetworkPartition) {
+ if(stubChildLevelNetworkPartition == null) {
+ return null;
+ }
+ org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition childLevelNetworkPartition =
+ new org.apache.stratos.common.beans.autoscaler.partition.ChildLevelNetworkPartition();
+ childLevelNetworkPartition.setId(stubChildLevelNetworkPartition.getId());
+ childLevelNetworkPartition.setPartitionAlgo(stubChildLevelNetworkPartition.getPartitionAlgo());
+ if(stubChildLevelNetworkPartition.getChildLevelPartitions() != null) {
+ List<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition> partitionList =
+ new ArrayList<org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition>();
+ for(org.apache.stratos.autoscaler.stub.deployment.partition.ChildLevelPartition stubChildLevelPartition : stubChildLevelNetworkPartition.getChildLevelPartitions()) {
+ partitionList.add(convertStubChildLevelPartitionToChildLevelPartition(stubChildLevelPartition));
+ }
+ childLevelNetworkPartition.setPartitions(partitionList);
+ }
+ return childLevelNetworkPartition;
+ }
+
+ private static org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition
+ convertStubChildLevelPartitionToChildLevelPartition(ChildLevelPartition stubChildLevelPartition) {
+ if(stubChildLevelPartition == null) {
+ return null;
+ }
+ org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition childLevelPartition =
+ new org.apache.stratos.common.beans.autoscaler.partition.ChildLevelPartition();
+ childLevelPartition.setId(stubChildLevelPartition.getPartitionId());
+ childLevelPartition.setMax(stubChildLevelPartition.getMax());
+ return childLevelPartition;
+ }
+
+ private static ApplicationLevelNetworkPartition convertStubNetworkPartitionToNetworkPartition(
+ org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition stubNetworkPartition) {
+ if(stubNetworkPartition == null) {
+ return null;
+ }
+
+ ApplicationLevelNetworkPartition networkPartition = new ApplicationLevelNetworkPartition();
+ networkPartition.setId(stubNetworkPartition.getId());
+ networkPartition.setActiveByDefault(stubNetworkPartition.getActiveByDefault());
+ if(stubNetworkPartition.getPartitions() != null) {
+ List<Partition> partitionList = new ArrayList<Partition>();
+ for(org.apache.stratos.autoscaler.stub.deployment.partition.Partition stubPartition :
+ stubNetworkPartition.getPartitions()) {
+ if(stubPartition != null) {
+ partitionList.add(convertStubPartitionToPartition(stubPartition));
+ }
+ }
+ networkPartition.setPartitions(partitionList);
+ }
+ return networkPartition;
+ }
+
+ private static Partition convertStubPartitionToPartition(org.apache.stratos.autoscaler.stub.deployment.partition.Partition stubPartition) {
+ if(stubPartition == null) {
+ return null;
+ }
+ Partition partition = new Partition();
+ partition.setId(stubPartition.getId());
+ partition.setPublic(stubPartition.getIsPublic());
+ partition.setDescription(stubPartition.getDescription());
+ partition.setProvider(stubPartition.getProvider());
+ if(stubPartition.getProperties() != null) {
+ List<PropertyBean> propertyBeanList = new ArrayList<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 PropertyBean convertStubPropertyToPropertyBean(org.apache.stratos.autoscaler.stub.Property stubProperty) {
+ if(stubProperty == null) {
+ return null;
+ }
+
+ PropertyBean propertyBean = new PropertyBean();
+ propertyBean.setName(stubProperty.getName());
+ propertyBean.setValue(stubProperty.getValue());
+ return propertyBean;
+ }
+
+ private static org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[] convertToCCPartitionGroup(List<ApplicationLevelNetworkPartition> networkPartitionBeans) {
+
+ 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++) {
+ org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition appNWPartition = new
+ org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition();
+ appNWPartition.setId(networkPartitionBeans.get(i).getId());
+ appNWPartition.setActiveByDefault(networkPartitionBeans.get(i).isActiveByDefault());
+ if (networkPartitionBeans.get(i).getPartitions() != null && !networkPartitionBeans.get(i).getPartitions().isEmpty()) {
+ appNWPartition.setPartitions(convertToCCPartitionPojos(networkPartitionBeans.get(i).getPartitions()));
+ }
+
+ appNWPartitions[i] = appNWPartition;
+ }
+
+ return appNWPartitions;
+ }
+
+ private static ChildPolicy[] convertToCCChildPolicy(List<org.apache.stratos.common.beans.autoscaler.policy.deployment.ChildPolicy> childPolicies) {
+
+ ChildPolicy[] childPolicies1 = new ChildPolicy[childPolicies.size()];
+
+ for (int i = 0; i < childPolicies.size(); i++) {
+ ChildPolicy childPolicy = new ChildPolicy();
+ childPolicy.setId(childPolicies.get(i).getChildId());
+ childPolicy.setChildLevelNetworkPartitions(convertToCCChildNetworkPartition(childPolicies.get(i).getNetworkPartition()));
+
+
+ childPolicies1[i] = childPolicy;
+ }
+
+ return childPolicies1;
+ }
+
+ private static ChildLevelNetworkPartition[] convertToCCChildNetworkPartition(List<org.apache.stratos.common.beans.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).getId());
+ childLevelNetworkPartition.setPartitionAlgo(networkPartitions.get(i).getPartitionAlgo());
+ childLevelNetworkPartition.setChildLevelPartitions(convertToCCChildPartitionPojos(networkPartitions.get(i).getPartitions()));
+
+ childLevelNetworkPartitions[i] = childLevelNetworkPartition;
+ }
+
+ return childLevelNetworkPartitions;
+ }
+
+ public static org.apache.stratos.common.beans.topology.Cluster populateClusterPojos(Cluster cluster, String alias) {
+ org.apache.stratos.common.beans.topology.Cluster cluster1 = new
+ org.apache.stratos.common.beans.topology.Cluster();
+ cluster1.setAlias(alias);
+ cluster1.setServiceName(cluster.getServiceName());
+ cluster1.setClusterId(cluster.getClusterId());
+ cluster1.setLbCluster(cluster.isLbCluster());
+ cluster1.setTenantRange(cluster.getTenantRange());
+ cluster1.setProperty(getPropertyBeans(cluster.getProperties()));
+ cluster1.setMember(new ArrayList<Member>());
+ cluster1.setHostNames(new ArrayList<String>());
+ Collection<ClusterInstance> clusterInstances = cluster.getClusterInstances();
+ List<org.apache.stratos.common.beans.topology.Instance> instancesList =
+ new ArrayList<org.apache.stratos.common.beans.topology.Instance>();
+ if (clusterInstances != null) {
+ for (ClusterInstance clusterInstance : clusterInstances) {
+ org.apache.stratos.common.beans.topology.Instance instance =
+ new org.apache.stratos.common.beans.topology.Instance();
+ instance.setInstanceId(clusterInstance.getInstanceId());
+ instance.setStatus(clusterInstance.getStatus().toString());
+ instancesList.add(instance);
+ }
+ cluster1.setInstances(instancesList);
+ }
+
+ for (org.apache.stratos.messaging.domain.topology.Member tmp : cluster.getMembers()) {
+ Member member = new Member();
+ member.setClusterId(tmp.getClusterId());
+ member.setLbClusterId(tmp.getLbClusterId());
+ member.setNetworkPartitionId(tmp.getNetworkPartitionId());
+ member.setPartitionId(tmp.getPartitionId());
+ member.setMemberId(tmp.getMemberId());
+ if (tmp.getMemberIp() == null) {
+ member.setMemberIp("NULL");
+ } else {
+ member.setMemberIp(tmp.getMemberIp());
+ }
+ if (tmp.getMemberPublicIp() == null) {
+ member.setMemberPublicIp("NULL");
+ } else {
+ member.setMemberPublicIp(tmp.getMemberPublicIp());
+ }
+ member.setServiceName(tmp.getServiceName());
+ member.setStatus(tmp.getStatus().toString());
+ member.setProperty(getPropertyBeans(tmp.getProperties()));
+ cluster1.getMember().add(member);
+ }
+
+ for (String tmp1 : cluster.getHostNames()) {
+ cluster1.getHostNames().add(tmp1);
+ }
+
+ return cluster1;
+ }
+
+ private static org.apache.stratos.autoscaler.stub.deployment.partition.Partition[] convertToCCPartitionPojos
+ (List<Partition> partitionList) {
+
+ 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));
+ }
+
+ return partitions;
+ }
+
+ private static ChildLevelPartition[] convertToCCChildPartitionPojos
+ (List<org.apache.stratos.common.beans.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).getId());
+ childLevelPartition.setMax(partitionList.get(i).getMax());
+
+ childLevelPartitions[i] = childLevelPartition;
+ }
+
+ return childLevelPartitions;
+ }
+
+ public static Partition[] populatePartitionPojos(org.apache.stratos.cloud.controller.stub.domain.Partition[]
+ partitions) {
+
+ Partition[] partitionBeans;
+ if (partitions == null) {
+ partitionBeans = new Partition[0];
+ return partitionBeans;
+ }
+
+ partitionBeans = new Partition[partitions.length];
+ for (int i = 0; i < partitions.length; i++) {
+ partitionBeans[i] = populatePartitionPojo(partitions[i]);
+ }
+ return partitionBeans;
+ }
+
+ public static Partition populatePartitionPojo(org.apache.stratos.cloud.controller.stub.domain.Partition
+ partition) {
+
+ Partition partitionBeans = new Partition();
+ if (partition == null) {
+ return partitionBeans;
+ }
+
+ partitionBeans.setId(partition.getId());
+ partitionBeans.setDescription(partition.getDescription());
+ partitionBeans.setPublic(partition.getIsPublic());
+ partitionBeans.setProvider(partition.getProvider());
+ /*partitionBeans.partitionMin = partition.getPartitionMin();
+ partitionBeans.partitionMax = partition.getPartitionMax();*/
+ //properties
+ if (partition.getProperties() != null) {
+ List<PropertyBean> propertyBeans = getPropertyBeans(partition.getProperties());
+ partitionBeans.setProperty(propertyBeans);
+ }
+
+ return partitionBeans;
+ }
+
+ public static List<SubscriptionDomainBean> populateSubscriptionDomainPojos(List<SubscriptionDomain> subscriptionDomains) {
+
+ List<SubscriptionDomainBean> subscriptionDomainBeans = new ArrayList<SubscriptionDomainBean>();
+
+ if (subscriptionDomains == null) {
+ return subscriptionDomainBeans;
+ }
+
+ for (SubscriptionDomain subscriptionDomain : subscriptionDomains) {
+ subscriptionDomainBeans.add(populateSubscriptionDomainPojo(subscriptionDomain));
+ }
+
+ return subscriptionDomainBeans;
+ }
+
+ public static SubscriptionDomainBean populateSubscriptionDomainPojo(SubscriptionDomain subscriptionDomain) {
+
+ SubscriptionDomainBean subscriptionDomainBean = new SubscriptionDomainBean();
+
+ if (subscriptionDomain == null) {
+ return subscriptionDomainBean;
+ }
+ subscriptionDomainBean.setDomainName(subscriptionDomain.getDomainName());
+ subscriptionDomainBean.setApplicationContext(subscriptionDomain.getApplicationContext());
+
+ return subscriptionDomainBean;
+ }
+
+ private static List<PropertyBean> getPropertyBeans(Properties properties) {
+
+ List<PropertyBean> propertyBeans = null;
+ if (properties.getProperties() != null && properties.getProperties().length != 0) {
+ Property[] propertyArr = properties.getProperties();
+ propertyBeans = new ArrayList<PropertyBean>();
+ for (int i = 0; i < propertyArr.length; i++) {
+ PropertyBean propertyBean = new PropertyBean();
+ propertyBean.setName(propertyArr[i].getName());
+ propertyBean.setValue(propertyArr[i].getValue());
+ propertyBeans.add(propertyBean);
+ }
+ }
+ return propertyBeans;
+ }
+
+ private static List<PropertyBean> getPropertyBeans(org.apache.stratos.cloud.controller.stub.Properties properties) {
+
+ List<PropertyBean> propertyBeans = null;
+ if (properties.getProperties() != null && properties.getProperties().length != 0) {
+ org.apache.stratos.cloud.controller.stub.Property[] propertyArr = properties.getProperties();
+ propertyBeans = new ArrayList<PropertyBean>();
+ for (int i = 0; i < propertyArr.length; i++) {
+ PropertyBean propertyBean = new PropertyBean();
+ propertyBean.setName(propertyArr[i].getName());
+ propertyBean.setValue(propertyArr[i].getValue());
+ propertyBeans.add(propertyBean);
+ }
+ }
+ return propertyBeans;
+ }
+
+ private static List<PropertyBean> getPropertyBeans(java.util.Properties properties) {
+
+ List<PropertyBean> propertyBeans = null;
+ if (properties != null && !properties.isEmpty()) {
+ Enumeration<?> e = properties.propertyNames();
+ propertyBeans = new ArrayList<PropertyBean>();
+
+ while (e.hasMoreElements()) {
+ String key = (String) e.nextElement();
+ String value = properties.getProperty(key);
+ PropertyBean propertyBean = new PropertyBean();
+ propertyBean.setName(key);
+ propertyBean.setValue(value);
+ propertyBeans.add(propertyBean);
+ }
+ }
+ return propertyBeans;
+ }
+
+ public static AutoscalePolicy[] populateAutoscalePojos(org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy[]
+ autoscalePolicies) {
+
+ AutoscalePolicy[] autoscalePolicyBeans;
+ if (autoscalePolicies == null) {
+ autoscalePolicyBeans = new AutoscalePolicy[0];
+ return autoscalePolicyBeans;
+ }
+
+ autoscalePolicyBeans = new AutoscalePolicy[autoscalePolicies.length];
+ for (int i = 0; i < autoscalePolicies.length; i++) {
+ autoscalePolicyBeans[i] = populateAutoscalePojo(autoscalePolicies[i]);
+ }
+ return autoscalePolicyBeans;
+ }
+
+ public static AutoscalePolicy populateAutoscalePojo(org.apache.stratos.autoscaler.stub.autoscale.policy.AutoscalePolicy
+ autoscalePolicy) {
+ if (autoscalePolicy == null) {
+ return null;
+ }
+
+ AutoscalePolicy autoscalePolicyBean = new AutoscalePolicy();
+ autoscalePolicyBean.setId(autoscalePolicy.getId());
+ autoscalePolicyBean.setDescription(autoscalePolicy.getDescription());
+ autoscalePolicyBean.setIsPublic(autoscalePolicy.getIsPublic());
+ autoscalePolicyBean.setDisplayName(autoscalePolicy.getDisplayName());
+ autoscalePolicyBean.setDescription(autoscalePolicy.getDescription());
+ autoscalePolicyBean.setInstanceRoundingFactor(autoscalePolicy.getInstanceRoundingFactor());
+ if (autoscalePolicy.getLoadThresholds() != null) {
+ autoscalePolicyBean.setLoadThresholds(populateLoadThresholds(autoscalePolicy.getLoadThresholds()));
+ }
+
+ return autoscalePolicyBean;
+ }
+
+ private static LoadThresholds populateLoadThresholds(org.apache.stratos.autoscaler.stub.autoscale.policy.LoadThresholds
+ loadThresholds) {
+
+ LoadThresholds loadThresholdBean = new LoadThresholds();
+ if (loadThresholds.getLoadAverage() != null) {
+ LoadAverageThresholds loadAverage = new LoadAverageThresholds();
+ loadAverage.setThreshold(loadThresholds.getLoadAverage().getUpperLimit());
+ loadAverage.setLowerLimit(loadThresholds.getLoadAverage().getLowerLimit());
+ loadThresholdBean.setLoadAverage(loadAverage);
+ }
+ if (loadThresholds.getMemoryConsumption() != null) {
+ MemoryConsumptionThresholds memoryConsumption = new MemoryConsumptionThresholds();
+ memoryConsumption.setThreshold(loadThresholds.getMemoryConsumption().getUpperLimit());
+ memoryConsumption.setLowerLimit(loadThresholds.getMemoryConsumption().getLowerLimit());
+ loadThresholdBean.setMemoryConsumption(memoryConsumption);
+ }
+ if (loadThresholds.getRequestsInFlight() != null) {
+ RequestsInFlightThresholds requestsInFlight = new RequestsInFlightThresholds();
+ requestsInFlight.setThreshold(loadThresholds.getRequestsInFlight().getUpperLimit());
+ requestsInFlight.setLowerLimit(loadThresholds.getRequestsInFlight().getLowerLimit());
+ loadThresholdBean.setRequestsInFlight(requestsInFlight);
+ }
+
+ return loadThresholdBean;
+ }
+
+ public static DeploymentPolicy[] populateDeploymentPolicyPojos(org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy[]
+ deploymentPolicies) {
+ DeploymentPolicy[] deploymentPolicyBeans;
+ if (deploymentPolicies == null) {
+ return null;
+ }
+
+ deploymentPolicyBeans = new DeploymentPolicy[deploymentPolicies.length];
+ for (int i = 0; i < deploymentPolicies.length; i++) {
+ deploymentPolicyBeans[i] = populateDeploymentPolicyPojo(deploymentPolicies[i]);
+ }
+
+ return deploymentPolicyBeans;
+ }
+
+ public static DeploymentPolicy populateDeploymentPolicyPojo(org.apache.stratos.autoscaler.stub.deployment.policy.DeploymentPolicy
+ deploymentPolicy) {
+
+ if (deploymentPolicy == null) {
+ return null;
+ }
+
+ DeploymentPolicy deploymentPolicyBean = new DeploymentPolicy();
+ deploymentPolicyBean.setDescription(deploymentPolicy.getDescription());
+ deploymentPolicyBean.setPublic(deploymentPolicy.getIsPublic());
+ deploymentPolicyBean.setApplicationId(deploymentPolicy.getApplicationId());
+ return deploymentPolicyBean;
+ }
+
+ public static ApplicationLevelNetworkPartition populatePartitionGroupPojo(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition
+ partitionGroup) {
+
+ ApplicationLevelNetworkPartition networkPartitionBean = new ApplicationLevelNetworkPartition();
+ if (partitionGroup == null) {
+ return networkPartitionBean;
+ }
+
+ networkPartitionBean.setId(partitionGroup.getId());
+ //FIXME update with new deployment policy pattern
+// networkPartitionBean.partitionAlgo = partitionGroup.getPartitionAlgo();
+// if (partitionGroup.getPartitions() != null && partitionGroup.getPartitions().length > 0) {
+// partitionGroupBean.partition = getPartitionList(partitionGroup.getPartitions());
+// }
+
+ return networkPartitionBean;
+ }
+
+ public static ApplicationLevelNetworkPartition[] populatePartitionGroupPojos(org.apache.stratos.autoscaler.stub.deployment.partition.ApplicationLevelNetworkPartition[] partitionGroups) {
+
+ ApplicationLevelNetworkPartition[] networkPartitionGroupsBeans;
+ if (partitionGroups == null) {
+ networkPartitionGroupsBeans = new ApplicationLevelNetworkPartition[0];
+ return networkPartitionGroupsBeans;
+ }
+
+ networkPartitionGroupsBeans = new ApplicationLevelNetworkPartition[partitionGroups.length];
+
+ for (int i = 0; i < partitionGroups.length; i++) {
+ networkPartitionGroupsBeans[i] = populatePartitionGroupPojo(partitionGroups[i]);
+ }
+
+ return networkPartitionGroupsBeans;
+ }
+
+ private static List<Partition> getPartitionList(org.apache.stratos.cloud.controller.stub.domain.Partition[]
+ partitions) {
+
+ List<Partition> partitionList = new ArrayList<Partition>();
+ for (int i = 0; i < partitions.length; i++) {
+ Partition partition = new Partition();
+ partition.setId(partitions[i].getId());
+ partition.setProvider(partitions[i].getProvider());
+ /*partition.partitionMin = partitions[i].getPartitionMin();
+ partition.partitionMax = partitions[i].getPartitionMax();*/
+ if (partitions[i].getProperties() != null) {
+ partition.setProperty(getPropertyBeans(partitions[i].getProperties()));
+ }
+ partitionList.add(partition);
+ }
+
+ return partitionList;
+ }
+
+ public static ServiceDefinitionBean convertToServiceDefinitionBean(Service service) {
+
+ ServiceDefinitionBean serviceDefinitionBean = new ServiceDefinitionBean();
+ serviceDefinitionBean.setCartridgeType(service.getType());
+ serviceDefinitionBean.setTenantRange(service.getTenantRange());
+ serviceDefinitionBean.setClusterDomain(service.getClusterId());
+ serviceDefinitionBean.setIsPublic(service.getIsPublic());
+ serviceDefinitionBean.setAutoscalingPolicyName(service.getAutoscalingPolicyName());
+ serviceDefinitionBean.setDeploymentPolicyName(service.getDeploymentPolicyName());
+
+ return serviceDefinitionBean;
+ }
+
+ public static List<ServiceDefinitionBean> convertToServiceDefinitionBeans(Collection<Service> services) {
+
+ List<ServiceDefinitionBean> serviceDefinitionBeans = new ArrayList<ServiceDefinitionBean>();
+
+ for (Service service : services) {
+ serviceDefinitionBeans.add(convertToServiceDefinitionBean(service));
+ }
+ return serviceDefinitionBeans;
+ }
+
+ public static org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup convertToCCKubernetesGroupPojo(KubernetesGroup kubernetesGroupBean) {
+
+ org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup kubernetesGroup = new
+ org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup();
+
+ kubernetesGroup.setGroupId(kubernetesGroupBean.getGroupId());
+ kubernetesGroup.setDescription(kubernetesGroupBean.getDescription());
+ kubernetesGroup.setKubernetesMaster(convertToCCKubernetesMasterPojo(kubernetesGroupBean.getKubernetesMaster()));
+ kubernetesGroup.setPortRange(convertToASPortRange(kubernetesGroupBean.getPortRange()));
+ kubernetesGroup.setKubernetesHosts(convertToASKubernetesHostsPojo(kubernetesGroupBean.getKubernetesHosts()));
+ kubernetesGroup.setProperties((getCCProperties(kubernetesGroupBean.getProperty())));
+
+ return kubernetesGroup;
+ }
+
+ private static org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[] convertToASKubernetesHostsPojo(List<KubernetesHost> kubernetesHosts) {
+ if (kubernetesHosts == null || kubernetesHosts.isEmpty()) {
+ return null;
+ }
+ int kubernetesHostCount = kubernetesHosts.size();
+ org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[]
+ kubernetesHostsArr = new org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[kubernetesHostCount];
+ for (int i = 0; i < kubernetesHostCount; i++) {
+ KubernetesHost kubernetesHostBean = kubernetesHosts.get(i);
+ kubernetesHostsArr[i] = convertToCCKubernetesHostPojo(kubernetesHostBean);
+ }
+ return kubernetesHostsArr;
+ }
+
+
+ private static org.apache.stratos.cloud.controller.stub.kubernetes.PortRange convertToASPortRange(PortRange portRangeBean) {
+ if (portRangeBean == null) {
+ return null;
+ }
+ org.apache.stratos.cloud.controller.stub.kubernetes.PortRange
+ portRange = new org.apache.stratos.cloud.controller.stub.kubernetes.PortRange();
+ portRange.setLower(portRangeBean.getLower());
+ portRange.setUpper(portRangeBean.getUpper());
+ return portRange;
+ }
+
+ public static org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost convertToCCKubernetesHostPojo(KubernetesHost kubernetesHostBean) {
+ if (kubernetesHostBean == null) {
+ return null;
+ }
+
+ org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost
+ kubernetesHost = new org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost();
+ kubernetesHost.setHostId(kubernetesHostBean.getHostId());
+ kubernetesHost.setHostIpAddress(kubernetesHostBean.getHostIpAddress());
+ kubernetesHost.setHostname(kubernetesHostBean.getHostname());
+ kubernetesHost.setProperties(getCCProperties(kubernetesHostBean.getProperty()));
+
+ return kubernetesHost;
+ }
+
+ public static org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster convertToCCKubernetesMasterPojo(KubernetesMaster kubernetesMasterBean) {
+ if (kubernetesMasterBean == null) {
+ return null;
+ }
+
+ org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster
+ kubernetesMaster = new org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster();
+ kubernetesMaster.setHostId(kubernetesMasterBean.getHostId());
+ kubernetesMaster.setHostIpAddress(kubernetesMasterBean.getHostIpAddress());
+ kubernetesMaster.setHostname(kubernetesMasterBean.getHostname());
+ kubernetesMaster.setEndpoint(kubernetesMasterBean.getEndpoint());
+ kubernetesMaster.setProperties(getCCProperties(kubernetesMasterBean.getProperty()));
+
+ return kubernetesMaster;
+ }
+
+ public static KubernetesGroup[] populateKubernetesGroupsPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup[] kubernetesGroups) {
+
+ if (kubernetesGroups == null) {
+ return null;
+ }
+ KubernetesGroup[] kubernetesGroupsBean = new KubernetesGroup[kubernetesGroups.length];
+ for (int i = 0; i < kubernetesGroups.length; i++) {
+ kubernetesGroupsBean[i] = populateKubernetesGroupPojo(kubernetesGroups[i]);
+ }
+ return kubernetesGroupsBean;
+ }
+
+ public static KubernetesGroup populateKubernetesGroupPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesGroup kubernetesGroup) {
+ if (kubernetesGroup == null) {
+ return null;
+ }
+ KubernetesGroup kubernetesGroupBean = new KubernetesGroup();
+ kubernetesGroupBean.setGroupId(kubernetesGroup.getGroupId());
+ kubernetesGroupBean.setDescription(kubernetesGroup.getDescription());
+ kubernetesGroupBean.setPortRange(populatePortRangePojo(kubernetesGroup.getPortRange()));
+ kubernetesGroupBean.setKubernetesHosts(populateKubernetesHostsPojo(kubernetesGroup.getKubernetesHosts()));
+ kubernetesGroupBean.setKubernetesMaster(populateKubernetesMasterPojo(kubernetesGroup.getKubernetesMaster()));
+ kubernetesGroupBean.setProperty(populateCCProperties(kubernetesGroup.getProperties()));
+ return kubernetesGroupBean;
+ }
+
+ public static KubernetesMaster populateKubernetesMasterPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesMaster kubernetesMaster) {
+ if (kubernetesMaster == null) {
+ return null;
+ }
+ KubernetesMaster kubernetesMasterBean = new KubernetesMaster();
+ kubernetesMasterBean.setHostId(kubernetesMaster.getHostId());
+ kubernetesMasterBean.setHostname(kubernetesMaster.getHostname());
+ kubernetesMasterBean.setHostIpAddress(kubernetesMaster.getHostIpAddress());
+ kubernetesMasterBean.setProperty(populateCCProperties(kubernetesMaster.getProperties()));
+ kubernetesMasterBean.setEndpoint(kubernetesMaster.getEndpoint());
+ return kubernetesMasterBean;
+ }
+
+ public static List<KubernetesHost> populateKubernetesHostsPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost[] kubernetesHosts) {
+ if (kubernetesHosts == null) {
+ return null;
+ }
+ List<KubernetesHost> kubernetesHostList = new ArrayList<KubernetesHost>();
+ for (int i = 0; i < kubernetesHosts.length; i++) {
+ kubernetesHostList.add(populateKubernetesHostPojo(kubernetesHosts[i]));
+ }
+ return kubernetesHostList;
+ }
+
+ private static KubernetesHost populateKubernetesHostPojo(org.apache.stratos.cloud.controller.stub.kubernetes.KubernetesHost kubernetesHost) {
+ if (kubernetesHost == null) {
+ return null;
+ }
+ KubernetesHost kubernetesHostBean = new KubernetesHost();
+ kubernetesHostBean.setHostId(kubernetesHost.getHostId());
+ kubernetesHostBean.setHostname(kubernetesHost.getHostname());
+ kubernetesHostBean.setHostIpAddress(kubernetesHost.getHostIpAddress());
+ kubernetesHostBean.setProperty(populateCCProperties(kubernetesHost.getProperties()));
+ return kubernetesHostBean;
+ }
+
+ private static List<PropertyBean> populateASProperties(org.apache.stratos.autoscaler.stub.Properties properties) {
+ if (properties == null || properties.getProperties() == null) {
+ return null;
+ }
+ List<PropertyBean> propertyBeanList = new ArrayList<PropertyBean>();
+ for (int i = 0; i < properties.getProperties().length; i++) {
+ propertyBeanList.add(populateASProperty(properties.getProperties()[i]));
+ }
+ return propertyBeanList;
+ }
+
+ private static List<PropertyBean> populateCCProperties(org.apache.stratos.cloud.controller.stub.Properties properties) {
+ if (properties == null || properties.getProperties() == null) {
+ return null;
+ }
+ List<PropertyBean> propertyBeanList = new ArrayList<PropertyBean>();
+ for (int i = 0; i < properties.getProperties().length; i++) {
+ propertyBeanList.add(populateCCProperty(properties.getProperties()[i]));
+ }
+ return propertyBeanList;
+ }
+
+ private static PropertyBean populateASProperty(org.apache.stratos.autoscaler.stub.Property propertyE) {
+ if (propertyE == null) {
+ return null;
+ }
+ PropertyBean propertyBean = new PropertyBean();
+ propertyBean.setName(propertyE.getName());
+ propertyBean.setValue(propertyE.getValue());
+ return propertyBean;
+ }
+
+ private static PropertyBean populateCCProperty(org.apache.stratos.cloud.controller.stub.Property propertyE) {
+ if (propertyE == null) {
+ return null;
+ }
+ PropertyBean propertyBean = new PropertyBean();
+ propertyBean.setName(propertyE.getName());
+ propertyBean.setValue(propertyE.getValue());
+ return propertyBean;
+ }
+
+ private static PortRange populatePortRangePojo(org.apache.stratos.cloud.controller.stub.kubernetes.PortRange portRange) {
+ if (portRange == null) {
+ return null;
+ }
+ PortRange portRangeBean = new PortRange();
+ portRangeBean.setUpper(portRange.getUpper());
+ portRangeBean.setLower(portRange.getLower());
+ return portRangeBean;
+ }
+
+ public static ApplicationContext convertApplicationDefinitionToApplicationContext(ApplicationDefinition applicationDefinition) {
+
+ org.apache.stratos.autoscaler.stub.pojo.ApplicationContext applicationContext =
+ new org.apache.stratos.autoscaler.stub.pojo.ApplicationContext();
+ applicationContext.setApplicationId(applicationDefinition.getApplicationId());
+ applicationContext.setName(applicationDefinition.getName());
+ applicationContext.setDescription(applicationDefinition.getDescription());
+ applicationContext.setAlias(applicationDefinition.getAlias());
+ applicationContext.setStatus(applicationDefinition.getStatus());
+
+ // convert and set components
+ if (applicationDefinition.getComponents() != null) {
+ org.apache.stratos.autoscaler.stub.pojo.ComponentContext componentContext =
+ new org.apache.stratos.autoscaler.stub.pojo.ComponentContext();
+
+ // top level Groups
+ if (applicationDefinition.getComponents().getGroups() != null) {
+ componentContext.setGroupContexts(
+ convertGroupDefinitionsToStubGroupContexts(applicationDefinition.getComponents().getGroups()));
+ }
+ // top level dependency information
+ if (applicationDefinition.getComponents().getDependencies() != null) {
+ componentContext.setDependencyContext(
+ convertDependencyDefinitionsToDependencyContexts(applicationDefinition.getComponents().getDependencies()));
+ }
+ // top level cartridge context information
+ if (applicationDefinition.getComponents().getCartridges() != null) {
+ componentContext.setCartridgeContexts(
+ convertCartridgeDefinitionsToCartridgeContexts(applicationDefinition.getComponents().getCartridges()));
+ }
+ applicationContext.setComponents(componentContext);
+ }
+ return applicationContext;
+ }
+
+ public static ApplicationDefinition convertApplicationContextToApplicationDefinition(
+ ApplicationContext applicationContext) {
+ if(applicationContext == null) {
+ return null;
+ }
+
+ ApplicationDefinition applicationDefinition = new ApplicationDefinition();
+ applicationDefinition.setApplicationId(applicationContext.getApplicationId());
+ applicationDefinition.setName(applicationContext.getName());
+ applicationDefinition.setDescription(applicationContext.getDescription());
+ applicationDefinition.setStatus(applicationContext.getStatus());
+ applicationDefinition.setAlias(applicationContext.getAlias());
+
+ // convert and set components
+ if (applicationContext.getComponents() != null) {
+ applicationDefinition.setComponents(new ComponentDefinition());
+ // top level Groups
+ if (applicationContext.getComponents().getGroupContexts() != null) {
+ applicationDefinition.getComponents().setGroups(
+ convertGroupContextsToGroupDefinitions(applicationContext.getComponents().getGroupContexts()));
+ }
+ // top level dependency information
+ if (applicationContext.getComponents().getDependencyContext() != null) {
+ applicationDefinition.getComponents().setDependencies(
+ convertDependencyContextsToDependencyDefinitions(applicationContext.getComponents().getDependencyContext()));
+ }
+ // top level cartridge context information
+ if (applicationContext.getComponents().getCartridgeContexts() != null) {
+ applicationDefinition.getComponents().setCartridges(
+ convertCartridgeContextsToCartridgeDefinitions(applicationContext.getComponents().getCartridgeContexts()));
+ }
+ }
+ return applicationDefinition;
+ }
+
+ private static List<GroupDefinition> convertGroupContextsToGroupDefinitions(GroupContext[] groupContexts) {
+ List<GroupDefinition> groupDefinitions = new ArrayList<GroupDefinition>();
+ if(groupContexts != null) {
+ for (GroupContext groupContext : groupContexts) {
+ if(groupContext != null) {
+ GroupDefinition groupDefinition = new GroupDefinition();
+ groupDefinition.setAlias(groupContext.getAlias());
+ groupDefinition.setGroupMaxInstances(groupContext.getGroupMaxInstances());
+ groupDefinition.setGroupMinInstances(groupContext.getGroupMinInstances());
+ groupDefinition.setGroupScalingEnabled(groupContext.getGroupScalingEnabled());
+ groupDefinition.setName(groupContext.getName());
+ groupDefinition.setGroups(convertGroupContextsToGroupDefinitions(groupContext.getGroupContexts()));
+ groupDefinition.setCartridges(convertCartridgeContextsToCartridgeDefinitions(
+ groupContext.getCartridgeContexts()));
+ groupDefinitions.add(groupDefinition);
+ }
+ }
+ }
+ return groupDefinitions;
+ }
+
+ private static DependencyDefinitions convertDependencyContextsToDependencyDefinitions(DependencyContext dependencyContext) {
+ DependencyDefinitions dependencyDefinitions = new DependencyDefinitions();
+ dependencyDefinitions.setTerminationBehaviour(dependencyContext.getTerminationBehaviour());
+
+ if(dependencyContext.getStartupOrdersContexts() != null) {
+ List<String> startupOrders = new ArrayList<String>();
+ for(String item : dependencyContext.getStartupOrdersContexts()) {
+ startupOrders.add(item);
+ }
+ dependencyDefinitions.setStartupOrders(startupOrders);
+ }
+ if (dependencyContext.getScalingDependents() != null) {
+ List<String> scalingDependents = new ArrayList<String>();
+ for(String item : dependencyContext.getScalingDependents()) {
+ scalingDependents.add(item);
+ }
+ dependencyDefinitions.setScalingDependants(scalingDependents);
+ }
+ return dependencyDefinitions;
+ }
+
+ private static List<CartridgeDefinition> convertCartridgeContextsToCartridgeDefinitions(CartridgeContext[] cartridgeContexts) {
+ List<CartridgeDefinition> cartridgeDefinitions = new ArrayList<CartridgeDefinition>();
+ if(cartridgeContexts != null) {
+ for (CartridgeContext cartridgeContext : cartridgeContexts) {
+ if(cartridgeContext != null) {
+ CartridgeDefinition cartridgeDefinition = new CartridgeDefinition();
+ cartridgeDefinition.setType(cartridgeContext.getType());
+ cartridgeDefinition.setCartridgeMin(cartridgeContext.getCartridgeMin());
+ cartridgeDefinition.setCartridgeMax(cartridgeContext.getCartridgeMax());
+ cartridgeDefinition.setSubscribableInfo(convertSubscribableInfoContextToSubscribableInfo(cartridgeContext.getSubscribableInfoContext()));
+ cartridgeDefinitions.add(cartridgeDefinition);
+ }
+ }
+ }
+ return cartridgeDefinitions;
+ }
+
+ private static SubscribableInfo convertSubscribableInfoContextToSubscribableInfo(
+ SubscribableInfoContext subscribableInfoContext) {
+ SubscribableInfo subscribableInfo = new SubscribableInfo();
+ subscribableInfo.setAlias(subscribableInfoContext.getAlias());
+ subscribableInfo.setAutoscalingPolicy(subscribableInfoContext.getAutoscalingPolicy());
+ if(!CommonUtil.isEmptyArray(subscribableInfoContext.getDependencyAliases())) {
+ subscribableInfo.setDependencyAliases(subscribableInfoContext.getDependencyAliases());
+ }
+ subscribableInfo.setDeploymentPolicy(subscribableInfoContext.getDeploymentPolicy());
+ subscribableInfo.setMinMembers(subscribableInfoContext.getMinMembers());
+ subscribableInfo.setMaxMembers(subscribableInfoContext.getMaxMembers());
+ subscribableInfo.setPrivateRepo(subscribableInfoContext.getPrivateRepo());
+ subscribableInfo.setProperty(convertStubPropertiesToPropertyBeanList(subscribableInfoContext.getProperties()));
+ subscribableInfo.setRepoPassword(subscribableInfoContext.getRepoPassword());
+ subscribableInfo.setRepoUsername(subscribableInfoContext.getRepoUsername());
+ subscribableInfo.setRepoUrl(subscribableInfoContext.getRepoUrl());
+ return subscribableInfo;
+ }
+
+ private static List<org.apache.stratos.manager.composite.application.beans.PropertyBean>
+ convertStubPropertiesToPropertyBeanList(org.apache.stratos.autoscaler.stub.Properties properties) {
+
+ List<org.apache.stratos.manager.composite.application.beans.PropertyBean> propertyBeanList =
+ new ArrayList<org.apache.stratos.manager.composite.application.beans.PropertyBean>();
+ if((properties != null) && (properties.getProperties() != null)) {
+ for (org.apache.stratos.autoscaler.stub.Property property : properties.getProperties()) {
+ if(property != null) {
+ org.apache.stratos.manager.composite.application.beans.PropertyBean propertyBean =
+ new org.apache.stratos.manager.composite.application.beans.PropertyBean();
+ propertyBean.setName(property.getName());
+ propertyBean.setValue(property.getValue());
+ propertyBeanList.add(propertyBean);
+ }
+ }
+ }
+ return propertyBeanList;
+ }
+
+ private static CartridgeContext[] convertCartridgeDefinitionsToCartridgeContexts(
+ List<CartridgeDefinition> cartridges) {
+
+ CartridgeContext[] cartridgeContextArray = new CartridgeContext[cartridges.size()];
+ int i = 0;
+ for (CartridgeDefinition cartridgeDefinition : cartridges) {
+ CartridgeContext context = new CartridgeContext();
+ context.setCartridgeMax(cartridgeDefinition.getCartridgeMax());
+ context.setCartridgeMin(cartridgeDefinition.getCartridgeMin());
+ context.setType(cartridgeDefinition.getType());
+ context.setSubscribableInfoContext(convertSubscribableInfo(cartridgeDefinition.getSubscribableInfo()));
+ cartridgeContextArray[i++] = context;
+ }
+
+ return cartridgeContextArray;
+ }
+
+ private static SubscribableInfoContext convertSubscribableInfo(
+ SubscribableInfo subscribableInfo) {
+ SubscribableInfoContext infoContext = new SubscribableInfoContext();
+ infoContext.setAlias(subscribableInfo.getAlias());
+ infoContext.setAutoscalingPolicy(subscribableInfo.getAutoscalingPolicy());
+ infoContext.setDependencyAliases(subscribableInfo.getDependencyAliases());
+ infoContext.setDeploymentPolicy(subscribableInfo.getDeploymentPolicy());
+ infoContext.setMaxMembers(subscribableInfo.getMaxMembers());
+ infoContext.setMinMembers(subscribableInfo.getMinMembers());
+ infoContext.setRepoPassword(subscribableInfo.getRepoPassword());
+ infoContext.setRepoUrl(subscribableInfo.getRepoUrl());
+ infoContext.setRepoUsername(subscribableInfo.getRepoUsername());
+ infoContext.setProperties(convertPropertyBeansToStubProperties(subscribableInfo.getProperty()));
+
+ return infoContext;
+ }
+
+ private static org.apache.stratos.autoscaler.stub.Properties convertPropertyBeansToStubProperties(
+ List<org.apache.stratos.manager.composite.application.beans.PropertyBean> property) {
+ org.apache.stratos.autoscaler.stub.Properties prop = new org.apache.stratos.autoscaler.stub.Properties();
+ if (property != null) {
+ for (org.apache.stratos.manager.composite.application.beans.PropertyBean propertyBean : property) {
+ org.apache.stratos.autoscaler.stub.Property p = new org.apache.stratos.autoscaler.stub.Property();
+ p.setName(propertyBean.getName());
+ p.setValue(propertyBean.getValue());
+ prop.addProperties(p);
+ }
+ }
+ return prop;
+ }
+
+
+ private static DependencyContext convertDependencyDefinitionsToDependencyContexts(DependencyDefinitions dependencyDefinitions) {
+ DependencyContext dependencyContext = new DependencyContext();
+ dependencyContext.setTerminationBehaviour(dependencyDefinitions.getTerminationBehaviour());
+
+ if (dependencyDefinitions != null){
+ if(dependencyDefinitions.getStartupOrders() != null) {
+ String[] startupOrders = new String[dependencyDefinitions.getStartupOrders().size()];
+ startupOrders = dependencyDefinitions.getStartupOrders().toArray(startupOrders);
+ dependencyContext.setStartupOrdersContexts(startupOrders);
+ }
+ if (dependencyDefinitions.getScalingDependants() != null) {
+ String[] scalingDependents = new String[dependencyDefinitions.getScalingDependants().size()];
+ scalingDependents = dependencyDefinitions.getScalingDependants().toArray(scalingDependents);
+ dependencyContext.setScalingDependents(scalingDependents);
+ }
+ }
+ return dependencyContext;
+ }
+
+ private static org.apache.stratos.autoscaler.stub.pojo.GroupContext[]
+ convertGroupDefinitionsToStubGroupContexts(List<GroupDefinition> groupDefinitions) {
+
+ GroupContext[] groupContexts = new GroupContext[groupDefinitions.size()];
+ int i = 0;
+ for (GroupDefinition groupDefinition : groupDefinitions) {
+ GroupContext groupContext = new GroupContext();
+ groupContext.setName(groupDefinition.getName());
+ groupContext.setAlias(groupDefinition.getAlias());
+ groupContext.setGroupMaxInstances(groupDefinition.getGroupMaxInstances());
+ groupContext.setGroupMinInstances(groupDefinition.getGroupMinInstances());
+ groupContext.setGroupScalingEnabled(groupDefinition.isGroupScalingEnabled);
+
+ // Groups
+ if (groupDefinition.getGroups() != null) {
+ groupContext.setGroupContexts(convertGroupDefinitionsToStubGroupContexts(groupDefinition.getGroups()));
+ }
+
+ groupContext.setCartridgeContexts(convertCartridgeDefinitionsToCartridgeContexts(groupDefinition.getCartridges()));
+ groupContexts[i++] = groupContext;
+ }
+
+ return groupContexts;
+ }
+
+
+ public static ApplicationBean applicationToBean(Application application) {
+ if (application == null) {
+ return null;
+ }
+
+ ApplicationBean applicationBean = new ApplicationBean();
+ applicationBean.setId(application.getUniqueIdentifier());
+ applicationBean.setName(application.getName());
+ applicationBean.setDescription(application.getDescription());
+ applicationBean.setTenantDomain(application.getTenantDomain());
+ applicationBean.setTenantAdminUsername(application.getTenantAdminUserName());
+ applicationBean.setInstances(setApplicationInstances(application));
+ return applicationBean;
+ }
+
+ private static List<Instance> setApplicationInstances(
+ Application application) {
+ List<Instance> applicationInstanceList = new ArrayList<Instance>();
+ Collection<ApplicationInstance> applicationInstancesInTopology =
+ application.getInstanceIdToInstanceContextMap().values();
+
+ if(applicationInstancesInTopology != null) {
+ for (ApplicationInstance applicationInstance : applicationInstancesInTopology) {
+ Instance instance = new Instance();
+ instance.setInstanceId(applicationInstance.getInstanceId());
+ instance.setStatus(applicationInstance.getStatus().toString());
+ applicationInstanceList.add(instance);
+ }
+ }
+
+ return applicationInstanceList;
+ }
+
+ public static GroupBean toGroupBean(Group group) {
+ if (group == null) {
+ return null;
+ }
+
+ GroupBean groupBean = new GroupBean();
+ groupBean.setInstances(setGroupInstances(group));
+ groupBean.setAlias(group.getUniqueIdentifier());
+ groupBean.setAutoScalingPolicy(group.getAutoscalingPolicy());
+ return groupBean;
+ }
+
+ private static List<Instance> setGroupInstances(Group group) {
+ List<Instance> instanceList = new ArrayList<Instance>();
+ Collection<GroupInstance> instancesInTopology = group.getInstanceIdToInstanceContextMap().values();
+ if(instancesInTopology != null) {
+ for (GroupInstance groupInstance : instancesInTopology) {
+ Instance instance = new Instance();
+ instance.setStatus(groupInstance.getStatus().toString());
+ instance.setInstanceId(groupInstance.getInstanceId());
+ instanceList.add(instance);
+ }
+ }
+ return instanceList;
+ }
+}