You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by sa...@apache.org on 2014/09/15 15:20:54 UTC

[2/4] git commit: Fixing an accidental code revert in ServiceUtils. Handling exceptions in cartridge deployment.

Fixing an accidental code revert in ServiceUtils. Handling exceptions in cartridge deployment.


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/2bc98e52
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/2bc98e52
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/2bc98e52

Branch: refs/heads/docker-integration
Commit: 2bc98e5272aee4d12a0a860af462e04f26d90258
Parents: 1ce3608
Author: sajhak <sa...@gmail.com>
Authored: Mon Sep 15 18:33:51 2014 +0530
Committer: sajhak <sa...@gmail.com>
Committed: Mon Sep 15 18:34:22 2014 +0530

----------------------------------------------------------------------
 .../deploy/cartridge/CartridgeDeployer.java     |  5 ++-
 .../cartridge/DefaultCartridgeDeployer.java     | 12 +++--
 .../rest/endpoint/services/ServiceUtils.java    | 46 ++++++--------------
 3 files changed, 25 insertions(+), 38 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/2bc98e52/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/CartridgeDeployer.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/CartridgeDeployer.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/CartridgeDeployer.java
index 376d55e..b4b63eb 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/CartridgeDeployer.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/CartridgeDeployer.java
@@ -19,10 +19,11 @@
 package org.apache.stratos.manager.deploy.cartridge;
 
 import org.apache.stratos.cloud.controller.stub.pojo.CartridgeConfig;
+import org.apache.stratos.manager.exception.ADCException;
 
 public abstract class CartridgeDeployer {
 
-	public final void deploy(CartridgeConfig cartridgeConfig) {
+	public final void deploy(CartridgeConfig cartridgeConfig) throws ADCException {
 		preDeployment();
 		deployCartridge(cartridgeConfig);
 		postDeployment();
@@ -30,7 +31,7 @@ public abstract class CartridgeDeployer {
 	
 	protected abstract void preDeployment();
 	
-	protected abstract void deployCartridge(CartridgeConfig cartridgeConfig);
+	protected abstract void deployCartridge(CartridgeConfig cartridgeConfig) throws ADCException;
 			
 	protected abstract void postDeployment();
 	

http://git-wip-us.apache.org/repos/asf/stratos/blob/2bc98e52/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/DefaultCartridgeDeployer.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/DefaultCartridgeDeployer.java b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/DefaultCartridgeDeployer.java
index 9b2a25a..1865c19 100644
--- a/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/DefaultCartridgeDeployer.java
+++ b/components/org.apache.stratos.manager/src/main/java/org/apache/stratos/manager/deploy/cartridge/DefaultCartridgeDeployer.java
@@ -18,11 +18,16 @@
  */
 package org.apache.stratos.manager.deploy.cartridge;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.apache.stratos.cloud.controller.stub.pojo.CartridgeConfig;
 import org.apache.stratos.manager.client.CloudControllerServiceClient;
+import org.apache.stratos.manager.exception.ADCException;
 
 public class DefaultCartridgeDeployer extends CartridgeDeployer{
 
+	private static Log log = LogFactory.getLog(DefaultCartridgeDeployer.class);
+	
 	@Override
 	protected void preDeployment() {
 				
@@ -35,13 +40,14 @@ public class DefaultCartridgeDeployer extends CartridgeDeployer{
 	}
 
 	@Override
-	protected void deployCartridge(CartridgeConfig cartridgeConfig) {
+	protected void deployCartridge(CartridgeConfig cartridgeConfig) throws ADCException {
 		try {
 			CloudControllerServiceClient cloudControllerServiceClient = CloudControllerServiceClient.getServiceClient();
 			cloudControllerServiceClient.deployCartridgeDefinition(cartridgeConfig);
 		} catch (Exception e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
+			String msg = "Exception in deploying the cartridge. ";
+			log.error(msg + e.getMessage());
+			throw new ADCException(msg);
 		}	
 	}
 

http://git-wip-us.apache.org/repos/asf/stratos/blob/2bc98e52/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java
index 475f124..d8fc8ac 100644
--- a/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java
+++ b/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/services/ServiceUtils.java
@@ -33,6 +33,7 @@ import org.apache.stratos.cloud.controller.stub.pojo.CartridgeInfo;
 import org.apache.stratos.cloud.controller.stub.pojo.Property;
 import org.apache.stratos.manager.client.AutoscalerServiceClient;
 import org.apache.stratos.manager.client.CloudControllerServiceClient;
+import org.apache.stratos.manager.deploy.cartridge.CartridgeDeploymentManager;
 import org.apache.stratos.manager.deploy.service.Service;
 import org.apache.stratos.manager.deploy.service.ServiceDeploymentManager;
 import org.apache.stratos.manager.dto.Cartridge;
@@ -96,39 +97,18 @@ public class ServiceUtils {
     static void deployCartridge(CartridgeDefinitionBean cartridgeDefinitionBean, ConfigurationContext ctxt,
                                 String userName, String tenantDomain) throws RestAPIException {
 
-        log.info("Starting to deploy a Cartridge [type] " + cartridgeDefinitionBean.type);
-
-        CloudControllerServiceClient cloudControllerServiceClient = getCloudControllerServiceClient();
-
-        if (cloudControllerServiceClient != null) {
-
-            CartridgeConfig cartridgeConfig = PojoConverter.populateCartridgeConfigPojo(cartridgeDefinitionBean);
-
-            if (cartridgeConfig == null) {
-                throw new RestAPIException("Populated CartridgeConfig instance is null, cartridge deployment aborted");
-            }
-
-
-            // call CC
-            try {
-                cloudControllerServiceClient
-                        .deployCartridgeDefinition(cartridgeConfig);
-            } catch (RemoteException e) {
-                log.error(e.getMessage(), e);
-                throw new RestAPIException(e.getMessage(), e);
-            } catch (CloudControllerServiceInvalidCartridgeDefinitionExceptionException e) {
-                String message = e.getFaultMessage().getInvalidCartridgeDefinitionException().getMessage();
-                log.error(message, e);
-                throw new RestAPIException(message, e);
-            } catch (CloudControllerServiceInvalidIaasProviderExceptionException e) {
-                String message = e.getFaultMessage().getInvalidIaasProviderException().getMessage();
-                log.error(message, e);
-                throw new RestAPIException(message, e);
-            }
-
-            log.info("Successfully deployed Cartridge [type] " + cartridgeDefinitionBean.type);
-
-        }
+		log.info("Starting to deploy a Cartridge [type] "+ cartridgeDefinitionBean.type);
+		
+		CartridgeConfig cartridgeConfig = PojoConverter.populateCartridgeConfigPojo(cartridgeDefinitionBean);
+		if (cartridgeConfig == null) {
+			throw new RestAPIException("Populated CartridgeConfig instance is null, cartridge deployment aborted");
+		}
+		try {
+			CartridgeDeploymentManager.getDeploymentManager(cartridgeDefinitionBean.deployerType).deploy(cartridgeConfig);
+		} catch (ADCException e) {	
+			throw new RestAPIException(e.getMessage());
+		}
+		log.info("Successfully deployed Cartridge [type] "+ cartridgeDefinitionBean.type);
     }
 
     @SuppressWarnings("unused")