You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ga...@apache.org on 2015/07/30 08:47:40 UTC
[4/5] stratos git commit: Remove UUID and tenantId from Application
Policy Bean
Remove UUID and tenantId from Application Policy Bean
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/3d9bc2c2
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/3d9bc2c2
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/3d9bc2c2
Branch: refs/heads/tenant-isolation
Commit: 3d9bc2c25650b6f1fd7a344c654168b4ac467a49
Parents: 3f59113
Author: Dinithi <di...@wso2.com>
Authored: Thu Jul 30 10:28:04 2015 +0530
Committer: Dinithi <di...@wso2.com>
Committed: Thu Jul 30 10:28:04 2015 +0530
----------------------------------------------------------------------
.../autoscaler/pojo/policy/PolicyManager.java | 17 +++++++++
.../services/impl/AutoscalerServiceImpl.java | 4 ++-
.../deployment/ApplicationPolicyBean.java | 18 ----------
.../rest/endpoint/api/StratosApiV41.java | 11 +++---
.../rest/endpoint/api/StratosApiV41Utils.java | 37 +++++++++++---------
.../util/converter/ObjectConverter.java | 8 ++---
6 files changed, 47 insertions(+), 48 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/3d9bc2c2/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 b574ff6..1d15c1b 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
@@ -482,4 +482,21 @@ public class PolicyManager {
public ApplicationPolicy[] getApplicationPolicies() {
return applicationPolicyListMap.values().toArray(new ApplicationPolicy[0]);
}
+
+ /**
+ * Checks whether application policy exists in the tenant
+ * @param applicationPolicyId application policy id
+ * @param tenantId tenant id
+ * @return boolean value
+ */
+ public Boolean checkApplicationPolicyInTenant(String applicationPolicyId, int tenantId) {
+ ApplicationPolicy[] applicationPolicies = getApplicationPolicies();
+ for (ApplicationPolicy applicationPolicy1 : applicationPolicies) {
+ if (applicationPolicy1.getId().equals(applicationPolicyId) && applicationPolicy1.getTenantId() ==
+ tenantId) {
+ return true;
+ }
+ }
+ return false;
+ }
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/3d9bc2c2/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
index 0fe7d94..f87fc9e 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/services/impl/AutoscalerServiceImpl.java
@@ -978,7 +978,9 @@ public class AutoscalerServiceImpl implements AutoscalerService {
}
String applicationPolicyId = applicationPolicy.getId();
- if (PolicyManager.getInstance().getApplicationPolicy(applicationPolicyId) != null) {
+ boolean isExist = PolicyManager.getInstance().checkApplicationPolicyInTenant
+ (applicationPolicy.getId(), applicationPolicy.getTenantId());
+ if (isExist) {
String message = "Application policy already exists: [application-policy-id] " + applicationPolicyId;
log.error(message);
throw new ApplicationPolicyAlreadyExistsException(message);
http://git-wip-us.apache.org/repos/asf/stratos/blob/3d9bc2c2/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/beans/policy/deployment/ApplicationPolicyBean.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/beans/policy/deployment/ApplicationPolicyBean.java b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/beans/policy/deployment/ApplicationPolicyBean.java
index 7847df8..93c2c2b 100644
--- a/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/beans/policy/deployment/ApplicationPolicyBean.java
+++ b/components/org.apache.stratos.common/src/main/java/org/apache/stratos/common/beans/policy/deployment/ApplicationPolicyBean.java
@@ -28,29 +28,11 @@ import java.util.List;
public class ApplicationPolicyBean {
private String id;
- private String uuid;
- private int tenantId;
private String algorithm;
String[] networkPartitions;
private String[] networkPartitionsUuid;
List<PropertyBean> properties;
- public String getUuid() {
- return uuid;
- }
-
- public void setUuid(String uuid) {
- this.uuid = uuid;
- }
-
- public int getTenantId() {
- return tenantId;
- }
-
- public void setTenantId(int tenantId) {
- this.tenantId = tenantId;
- }
-
public String getId() {
return id;
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/3d9bc2c2/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 038973a..982701d 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
@@ -730,9 +730,7 @@ public class StratosApiV41 extends AbstractApi {
@Produces("application/json")
@Consumes("application/json")
@AuthorizationAction("/permission/admin/stratos/networkPartitions/manage")
- public Response updateNetworkPartition(
- NetworkPartitionBean networkPartition) throws RestAPIException {
-
+ public Response updateNetworkPartition(NetworkPartitionBean networkPartition) throws RestAPIException {
try {
StratosApiV41Utils.updateNetworkPartition(networkPartition);
} catch (CloudControllerServiceNetworkPartitionNotExistsExceptionException e) {
@@ -942,13 +940,12 @@ public class StratosApiV41 extends AbstractApi {
ApplicationPolicyBean applicationPolicy) throws RestAPIException {
String applicationPolicyId = applicationPolicy.getId();
- applicationPolicy.setUuid(UUID.randomUUID().toString());
- String applicationPolicyUuid = applicationPolicy.getUuid();
+ String applicationPolicyUuid = UUID.randomUUID().toString();
PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
- applicationPolicy.setTenantId(carbonContext.getTenantId());
+ int tenantId = carbonContext.getTenantId();
try {
- StratosApiV41Utils.addApplicationPolicy(applicationPolicy);
+ StratosApiV41Utils.addApplicationPolicy(applicationPolicy, applicationPolicyUuid, tenantId);
URI url = uriInfo.getAbsolutePathBuilder().path(applicationPolicy.getId()).build();
return Response.created(url).entity(new ResponseMessageBean(ResponseMessageBean.SUCCESS,
String.format("Application policy added successfully: [application-policy-uuid] %s " +
http://git-wip-us.apache.org/repos/asf/stratos/blob/3d9bc2c2/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 3cb0d9c..21e7ef5 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
@@ -694,8 +694,10 @@ public class StratosApiV41Utils {
* @param applicationPolicyBean applicationPolicyBean
* @throws RestAPIException
*/
- public static void addApplicationPolicy(ApplicationPolicyBean applicationPolicyBean) throws RestAPIException,
- AutoscalerServiceInvalidApplicationPolicyExceptionException, AutoscalerServiceApplicationPolicyAlreadyExistsExceptionException {
+ public static void addApplicationPolicy(ApplicationPolicyBean applicationPolicyBean, String applicationPolicyUuid,
+ int tenantId) throws RestAPIException,
+ AutoscalerServiceInvalidApplicationPolicyExceptionException,
+ AutoscalerServiceApplicationPolicyAlreadyExistsExceptionException {
if (applicationPolicyBean == null) {
String msg = "Application policy bean is null";
@@ -706,7 +708,7 @@ public class StratosApiV41Utils {
AutoscalerServiceClient serviceClient = getAutoscalerServiceClient();
try {
ApplicationPolicy applicationPolicy = ObjectConverter.convertApplicationPolicyBeanToStubAppPolicy(
- applicationPolicyBean);
+ applicationPolicyBean, applicationPolicyUuid, tenantId);
if (applicationPolicy == null) {
String msg = "Application policy is null";
log.error(msg);
@@ -719,8 +721,8 @@ public class StratosApiV41Utils {
String[] networkPartitionsUuid = new String[applicationPolicy.getNetworkPartitions().length];
for (int i = 0; i < networkPartitions.length; i++) {
for (NetworkPartition networkPartition : existingNetworkPartitions) {
- if (networkPartitions[i].equals(networkPartition.getId()) && (applicationPolicyBean.getTenantId()
- == networkPartition.getTenantId())) {
+ if (networkPartitions[i].equals(networkPartition.getId()) && (tenantId == networkPartition
+ .getTenantId())) {
networkPartitionsUuid[i] = networkPartition.getUuid();
}
}
@@ -750,17 +752,18 @@ public class StratosApiV41Utils {
AutoscalerServiceInvalidApplicationPolicyExceptionException,
AutoscalerServiceApplicatioinPolicyNotExistsExceptionException {
- log.info(String.format("Updating application policy: [application-policy-uuid] %s [application-policy-id] " +
- "%s", applicationPolicyBean.getUuid(), applicationPolicyBean.getId()));
+ log.info(String.format("Updating application policy: [application-policy-id] %s", applicationPolicyBean.getId()));
AutoscalerServiceClient autoscalerServiceClient = getAutoscalerServiceClient();
if (autoscalerServiceClient != null) {
-
- ApplicationPolicy applicationPolicy = ObjectConverter.convertApplicationPolicyBeanToStubAppPolicy(
- applicationPolicyBean);
-
try {
- autoscalerServiceClient.updateApplicationPolicy(applicationPolicy);
+ AutoscalerServiceClient serviceClient = AutoscalerServiceClient.getInstance();
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
+ ApplicationPolicy applicationPolicy = serviceClient.getApplicationPolicyByTenant
+ (applicationPolicyBean.getId(), carbonContext.getTenantId());
+ autoscalerServiceClient.updateApplicationPolicy(ObjectConverter
+ .convertApplicationPolicyBeanToStubAppPolicy(applicationPolicyBean,
+ applicationPolicy.getUuid(), applicationPolicy.getTenantId()));
} catch (RemoteException e) {
String msg = "Could not update application policy" + e.getLocalizedMessage();
log.error(msg, e);
@@ -857,12 +860,12 @@ public class StratosApiV41Utils {
throw new ApplicationPolicyIdIsEmptyException(msg);
}
- AutoscalerServiceClient serviceClient = getAutoscalerServiceClient();
- ApplicationPolicyBean applicationPolicyBean;
try {
-
- applicationPolicyBean = getApplicationPolicy(applicationPolicyId);
- serviceClient.removeApplicationPolicy(applicationPolicyBean.getUuid());
+ AutoscalerServiceClient serviceClient = AutoscalerServiceClient.getInstance();
+ PrivilegedCarbonContext carbonContext = PrivilegedCarbonContext.getThreadLocalCarbonContext();
+ ApplicationPolicy applicationPolicy = serviceClient.getApplicationPolicyByTenant
+ (applicationPolicyId, carbonContext.getTenantId());
+ serviceClient.removeApplicationPolicy(applicationPolicy.getUuid());
} catch (RemoteException e) {
String msg = "Could not remove application policy. " + e.getLocalizedMessage();
log.error(msg, e);
http://git-wip-us.apache.org/repos/asf/stratos/blob/3d9bc2c2/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
index ac6f668..3ff5ade 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/util/converter/ObjectConverter.java
@@ -513,8 +513,6 @@ public class ObjectConverter {
ApplicationPolicyBean applicationPolicyBean = new ApplicationPolicyBean();
applicationPolicyBean.setId(applicationPolicy.getId());
- applicationPolicyBean.setUuid(applicationPolicy.getUuid());
- applicationPolicyBean.setTenantId(applicationPolicy.getTenantId());
applicationPolicyBean.setAlgorithm(applicationPolicy.getAlgorithm());
applicationPolicyBean.setNetworkPartitions(applicationPolicy.getNetworkPartitions());
@@ -2076,7 +2074,7 @@ public class ObjectConverter {
}
public static ApplicationPolicy convertApplicationPolicyBeanToStubAppPolicy(
- ApplicationPolicyBean applicationPolicyBean) {
+ ApplicationPolicyBean applicationPolicyBean, String applicationPolicyUuid, int tenantId) {
if (applicationPolicyBean == null) {
return null;
@@ -2086,8 +2084,8 @@ public class ObjectConverter {
applicationPolicy.setId(applicationPolicyBean.getId());
applicationPolicy.setAlgorithm(applicationPolicyBean.getAlgorithm());
applicationPolicy.setNetworkPartitions(applicationPolicyBean.getNetworkPartitions());
- applicationPolicy.setUuid(applicationPolicyBean.getUuid());
- applicationPolicy.setTenantId(applicationPolicyBean.getTenantId());
+ applicationPolicy.setUuid(applicationPolicyUuid);
+ applicationPolicy.setTenantId(tenantId);
if (applicationPolicyBean.getProperties() != null) {
if (!applicationPolicyBean.getProperties().isEmpty()) {
applicationPolicy.setProperties(getASPropertiesFromCommonProperties(applicationPolicyBean.getProperties()));