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 <[email protected]>
Authored: Mon Sep 15 18:33:51 2014 +0530
Committer: sajhak <[email protected]>
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")

Reply via email to