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:58:11 UTC
stratos git commit: Fixing tenant management rest api methods
Repository: stratos
Updated Branches:
refs/heads/4.1.0-test 60036c214 -> aceb115f3
Fixing tenant management rest api methods
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/aceb115f
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/aceb115f
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/aceb115f
Branch: refs/heads/4.1.0-test
Commit: aceb115f36f23198f0a587fe9901a3585eae9c58
Parents: 60036c2
Author: Imesh Gunaratne <im...@apache.org>
Authored: Wed Dec 17 15:28:00 2014 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Wed Dec 17 15:28:00 2014 +0530
----------------------------------------------------------------------
.../deployer/DefaultServiceGroupDeployer.java | 14 ++++---
.../rest/endpoint/api/StratosApiV41.java | 38 +++++++++--------
.../util/converter/ObjectConverter.java | 43 ++++++++++++++++----
3 files changed, 62 insertions(+), 33 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/aceb115f/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java
index 789d116..275b179 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/grouping/deployer/DefaultServiceGroupDeployer.java
@@ -26,7 +26,6 @@ import org.apache.stratos.autoscaler.stub.AutoScalerServiceAutoScalerExceptionEx
import org.apache.stratos.autoscaler.stub.AutoScalerServiceInvalidServiceGroupExceptionException;
import org.apache.stratos.autoscaler.stub.pojo.Dependencies;
import org.apache.stratos.autoscaler.stub.pojo.ServiceGroup;
-import org.apache.stratos.autoscaler.stub.exception.*;
import org.apache.stratos.cloud.controller.stub.CloudControllerServiceUnregisteredCartridgeExceptionException;
import org.apache.stratos.manager.client.AutoscalerServiceClient;
import org.apache.stratos.manager.client.CloudControllerServiceClient;
@@ -36,7 +35,6 @@ import org.apache.stratos.manager.exception.ServiceGroupDefinitioException;
import org.apache.stratos.manager.grouping.definitions.DependencyDefinitions;
import org.apache.stratos.manager.grouping.definitions.ServiceGroupDefinition;
-import java.lang.reflect.Array;
import java.rmi.RemoteException;
import java.util.*;
@@ -199,7 +197,7 @@ public class DefaultServiceGroupDeployer implements ServiceGroupDeployer {
return null;
}
- ServiceGroupDefinition serviceGroupDef = populateServiceGroupDefinitionPojo(serviceGroup);
+ ServiceGroupDefinition serviceGroupDef = convertServiceGroupToServiceGroupDefinition(serviceGroup);
return serviceGroupDef;
} catch (AxisFault axisFault) {
@@ -227,7 +225,7 @@ public class DefaultServiceGroupDeployer implements ServiceGroupDeployer {
ServiceGroupDefinition[] serviceGroupDefinitions = new ServiceGroupDefinition[serviceGroups.length];
for (int i = 0; i < serviceGroups.length; i++) {
- serviceGroupDefinitions[i] = populateServiceGroupDefinitionPojo(serviceGroups[i]);
+ serviceGroupDefinitions[i] = convertServiceGroupToServiceGroupDefinition(serviceGroups[i]);
}
return serviceGroupDefinitions;
@@ -322,7 +320,11 @@ public class DefaultServiceGroupDeployer implements ServiceGroupDeployer {
return servicegroup;
}
- private ServiceGroupDefinition populateServiceGroupDefinitionPojo(ServiceGroup serviceGroup) {
+ private ServiceGroupDefinition convertServiceGroupToServiceGroupDefinition(ServiceGroup serviceGroup) {
+ if(serviceGroup == null) {
+ return null;
+ }
+
ServiceGroupDefinition servicegroupDef = new ServiceGroupDefinition();
servicegroupDef.setName(serviceGroup.getName());
String[] cartridges = serviceGroup.getCartridges();
@@ -332,7 +334,7 @@ public class DefaultServiceGroupDeployer implements ServiceGroupDeployer {
List<ServiceGroupDefinition> groupDefinitions = new ArrayList<ServiceGroupDefinition>(groups.length);
for (ServiceGroup group : groups) {
if (group != null) {
- groupDefinitions.add(populateServiceGroupDefinitionPojo(group));
+ groupDefinitions.add(convertServiceGroupToServiceGroupDefinition(group));
}
}
http://git-wip-us.apache.org/repos/asf/stratos/blob/aceb115f/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 f7dc1c3..2e1c7f3 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
@@ -662,7 +662,7 @@ public class StratosApiV41 extends AbstractApi {
@Produces("application/json")
@AuthorizationAction("/permission/protected/manage/modify/tenants")
@SuperTenantService(true)
- public Response createTenant(TenantInfoBean tenantInfoBean) throws RestAPIException {
+ public Response createTenant(org.apache.stratos.common.beans.TenantInfoBean tenantInfoBean) throws RestAPIException {
try {
CommonUtil.validateEmail(tenantInfoBean.getEmail());
} catch (Exception e) {
@@ -693,7 +693,8 @@ public class StratosApiV41 extends AbstractApi {
throw new RestAPIException("Invalid data"); // obscure error message.
}
- Tenant tenant = TenantMgtUtil.initializeTenant(tenantInfoBean);
+ Tenant tenant = TenantMgtUtil.initializeTenant(
+ ObjectConverter.convertTenantInfoBeanToCarbonTenantInfoBean(tenantInfoBean));
TenantPersistor persistor = ServiceHolder.getTenantPersistor();
// not validating the domain ownership, since created by super tenant
int tenantId = 0; //TODO verify whether this is the correct approach (isSkeleton)
@@ -717,7 +718,7 @@ public class StratosApiV41 extends AbstractApi {
//Notify tenant addition
try {
- TenantMgtUtil.triggerAddTenant(tenantInfoBean);
+ TenantMgtUtil.triggerAddTenant(ObjectConverter.convertTenantInfoBeanToCarbonTenantInfoBean(tenantInfoBean));
} catch (StratosException e) {
String msg = "Error in notifying tenant addition.";
log.error(msg, e);
@@ -725,7 +726,7 @@ public class StratosApiV41 extends AbstractApi {
}
// For the super tenant tenant creation, tenants are always activated as they are created.
try {
- TenantMgtUtil.activateTenantInitially(tenantInfoBean, tenantId);
+ TenantMgtUtil.activateTenantInitially(ObjectConverter.convertTenantInfoBeanToCarbonTenantInfoBean(tenantInfoBean), tenantId);
} catch (Exception e) {
String msg = "Error in initial activation of tenant " + tenantDomain;
log.error(msg, e);
@@ -756,11 +757,10 @@ public class StratosApiV41 extends AbstractApi {
@Consumes("application/json")
@AuthorizationAction("/permission/protected/manage/modify/tenants")
@SuperTenantService(true)
- public Response updateTenant(TenantInfoBean tenantInfoBean) throws RestAPIException {
+ public Response updateTenant(org.apache.stratos.common.beans.TenantInfoBean tenantInfoBean) throws RestAPIException {
try {
updateExistingTenant(tenantInfoBean);
-
} catch (TenantNotFoundException ex) {
Response.status(Response.Status.NOT_FOUND).build();
} catch (Exception e) {
@@ -772,7 +772,7 @@ public class StratosApiV41 extends AbstractApi {
return Response.noContent().build();
}
- private void updateExistingTenant(TenantInfoBean tenantInfoBean) throws Exception {
+ private void updateExistingTenant(org.apache.stratos.common.beans.TenantInfoBean tenantInfoBean) throws Exception {
TenantManager tenantManager = ServiceHolder.getTenantManager();
UserStoreManager userStoreManager;
@@ -885,7 +885,7 @@ public class StratosApiV41 extends AbstractApi {
//Notify tenant update to all listeners
try {
- TenantMgtUtil.triggerUpdateTenant(tenantInfoBean);
+ TenantMgtUtil.triggerUpdateTenant(ObjectConverter.convertTenantInfoBeanToCarbonTenantInfoBean(tenantInfoBean));
} catch (StratosException e) {
String msg = "Error in notifying tenant update.";
log.error(msg, e);
@@ -906,7 +906,7 @@ public class StratosApiV41 extends AbstractApi {
@Produces("application/json")
@AuthorizationAction("/permission/protected/manage/monitor/tenants")
@SuperTenantService(true)
- public TenantInfoBean getTenantForDomain(@PathParam("tenantDomain") String tenantDomain) throws RestAPIException {
+ public org.apache.stratos.common.beans.TenantInfoBean getTenantForDomain(@PathParam("tenantDomain") String tenantDomain) throws RestAPIException {
try {
return getTenantByDomain(tenantDomain);
@@ -917,7 +917,7 @@ public class StratosApiV41 extends AbstractApi {
}
}
- private TenantInfoBean getTenantByDomain(String tenantDomain) throws Exception {
+ private org.apache.stratos.common.beans.TenantInfoBean getTenantByDomain(String tenantDomain) throws Exception {
TenantManager tenantManager = ServiceHolder.getTenantManager();
@@ -939,7 +939,8 @@ public class StratosApiV41 extends AbstractApi {
throw new Exception(msg, e);
}
- TenantInfoBean bean = TenantMgtUtil.initializeTenantInfoBean(tenantId, tenant);
+ org.apache.stratos.common.beans.TenantInfoBean bean =
+ ObjectConverter.convertCarbonTenantInfoBeanToTenantInfoBean(TenantMgtUtil.initializeTenantInfoBean(tenantId, tenant));
// retrieve first and last names from the UserStoreManager
bean.setFirstname(ClaimsMgtUtil.getFirstNamefromUserStoreManager(
@@ -1037,7 +1038,7 @@ public class StratosApiV41 extends AbstractApi {
List<org.apache.stratos.common.beans.TenantInfoBean> tenantList = new ArrayList<org.apache.stratos.common.beans.TenantInfoBean>();
for (Tenant tenant : tenants) {
- org.apache.stratos.common.beans.TenantInfoBean bean = ObjectConverter.convertTenantInfoBean(
+ org.apache.stratos.common.beans.TenantInfoBean bean = ObjectConverter.convertCarbonTenantInfoBeanToTenantInfoBean(
TenantMgtUtil.getTenantInfoBeanfromTenant(tenant.getId(), tenant));
tenantList.add(bean);
}
@@ -1057,10 +1058,10 @@ public class StratosApiV41 extends AbstractApi {
@Produces("application/json")
@AuthorizationAction("/permission/protected/manage/monitor/tenants")
@SuperTenantService(true)
- public TenantInfoBean[] getPartialSearchTenants(@PathParam("tenantDomain") String tenantDomain)
+ public org.apache.stratos.common.beans.TenantInfoBean[] getPartialSearchTenants(@PathParam("tenantDomain") String tenantDomain)
throws RestAPIException {
- List<TenantInfoBean> tenantList = null;
+ List<org.apache.stratos.common.beans.TenantInfoBean> tenantList = null;
try {
tenantList = searchPartialTenantsDomains(tenantDomain);
} catch (Exception e) {
@@ -1068,10 +1069,10 @@ public class StratosApiV41 extends AbstractApi {
log.error(msg, e);
throw new RestAPIException(msg);
}
- return tenantList.toArray(new TenantInfoBean[tenantList.size()]);
+ return tenantList.toArray(new org.apache.stratos.common.beans.TenantInfoBean[tenantList.size()]);
}
- private List<TenantInfoBean> searchPartialTenantsDomains(String domain) throws RestAPIException {
+ private List<org.apache.stratos.common.beans.TenantInfoBean> searchPartialTenantsDomains(String domain) throws RestAPIException {
TenantManager tenantManager = ServiceHolder.getTenantManager();
Tenant[] tenants;
try {
@@ -1083,9 +1084,10 @@ public class StratosApiV41 extends AbstractApi {
throw new RestAPIException(msg);
}
- List<TenantInfoBean> tenantList = new ArrayList<TenantInfoBean>();
+ List<org.apache.stratos.common.beans.TenantInfoBean> tenantList = new ArrayList<org.apache.stratos.common.beans.TenantInfoBean>();
for (Tenant tenant : tenants) {
- TenantInfoBean bean = TenantMgtUtil.getTenantInfoBeanfromTenant(tenant.getId(), tenant);
+ org.apache.stratos.common.beans.TenantInfoBean bean = ObjectConverter.convertCarbonTenantInfoBeanToTenantInfoBean(
+ TenantMgtUtil.getTenantInfoBeanfromTenant(tenant.getId(), tenant));
tenantList.add(bean);
}
return tenantList;
http://git-wip-us.apache.org/repos/asf/stratos/blob/aceb115f/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 c1ed810..86bade3 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
@@ -1492,17 +1492,42 @@ public class ObjectConverter {
return instanceList;
}
- public static org.apache.stratos.common.beans.TenantInfoBean convertTenantInfoBean(TenantInfoBean tenantInfoBean) {
+ public static org.apache.stratos.common.beans.TenantInfoBean convertCarbonTenantInfoBeanToTenantInfoBean(
+ TenantInfoBean carbonTenantInfoBean) {
+
+ if(carbonTenantInfoBean == null) {
+ return null;
+ }
+
org.apache.stratos.common.beans.TenantInfoBean stratosTenantInfoBean =
new org.apache.stratos.common.beans.TenantInfoBean();
- stratosTenantInfoBean.setTenantId(tenantInfoBean.getTenantId());
- stratosTenantInfoBean.setTenantDomain(tenantInfoBean.getTenantDomain());
- stratosTenantInfoBean.setActive(tenantInfoBean.isActive());
- stratosTenantInfoBean.setAdmin(tenantInfoBean.getAdmin());
- stratosTenantInfoBean.setEmail(tenantInfoBean.getEmail());
- stratosTenantInfoBean.setFirstname(tenantInfoBean.getFirstname());
- stratosTenantInfoBean.setLastname(tenantInfoBean.getLastname());
- stratosTenantInfoBean.setCreatedDate(tenantInfoBean.getCreatedDate());
+ stratosTenantInfoBean.setTenantId(carbonTenantInfoBean.getTenantId());
+ stratosTenantInfoBean.setTenantDomain(carbonTenantInfoBean.getTenantDomain());
+ stratosTenantInfoBean.setActive(carbonTenantInfoBean.isActive());
+ stratosTenantInfoBean.setAdmin(carbonTenantInfoBean.getAdmin());
+ stratosTenantInfoBean.setEmail(carbonTenantInfoBean.getEmail());
+ stratosTenantInfoBean.setFirstname(carbonTenantInfoBean.getFirstname());
+ stratosTenantInfoBean.setLastname(carbonTenantInfoBean.getLastname());
+ stratosTenantInfoBean.setCreatedDate(carbonTenantInfoBean.getCreatedDate());
return stratosTenantInfoBean;
}
+
+ public static TenantInfoBean convertTenantInfoBeanToCarbonTenantInfoBean(
+ org.apache.stratos.common.beans.TenantInfoBean tenantInfoBean) {
+
+ if(tenantInfoBean == null) {
+ return null;
+ }
+
+ TenantInfoBean carbonTenantInfoBean = new TenantInfoBean();
+ carbonTenantInfoBean.setTenantId(tenantInfoBean.getTenantId());
+ carbonTenantInfoBean.setTenantDomain(tenantInfoBean.getTenantDomain());
+ carbonTenantInfoBean.setActive(tenantInfoBean.isActive());
+ carbonTenantInfoBean.setAdmin(tenantInfoBean.getAdmin());
+ carbonTenantInfoBean.setEmail(tenantInfoBean.getEmail());
+ carbonTenantInfoBean.setFirstname(tenantInfoBean.getFirstname());
+ carbonTenantInfoBean.setLastname(tenantInfoBean.getLastname());
+ carbonTenantInfoBean.setCreatedDate(tenantInfoBean.getCreatedDate());
+ return carbonTenantInfoBean;
+ }
}