You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mi...@apache.org on 2009/04/29 06:39:48 UTC

svn commit: r769651 - in /ode/branches/APACHE_ODE_1.X: axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java

Author: midon
Date: Wed Apr 29 04:39:47 2009
New Revision: 769651

URL: http://svn.apache.org/viewvc?rev=769651&view=rev
Log:
ODE-597: undeploy should fail gracefully if package name is empty

Modified:
    ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
    ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java

Modified: ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java?rev=769651&r1=769650&r2=769651&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java Wed Apr 29 04:39:47 2009
@@ -142,6 +142,17 @@
         }
     }
 
+    @Test
+    public void undeployBlankPackage(){
+        try {
+            undeploy(null);
+            fail("Undeploying a null or empty package must fail");
+        } catch (Exception e) {
+            String expectedMsg = "Empty package name received!";
+            assertTrue("Unexpected exception received", e.getMessage().contains("operation undeploy") && e.getMessage().contains(expectedMsg));
+        }
+    }
+
   @BeforeMethod
     protected void setUp() throws Exception {
         super.setUp();

Modified: ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java?rev=769651&r1=769650&r2=769651&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java Wed Apr 29 04:39:47 2009
@@ -54,6 +54,7 @@
 import org.apache.axis2.util.Utils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.commons.lang.StringUtils;
 import org.apache.ode.axis2.OdeFault;
 import org.apache.ode.axis2.deploy.DeploymentPoller;
 import org.apache.ode.axis2.hooks.ODEAxisService;
@@ -190,6 +191,9 @@
                     OMElement part = messageContext.getEnvelope().getBody().getFirstElement().getFirstElement();
 
                     String pkg = part.getText();
+                    if(StringUtils.isBlank(pkg)){
+                        throw new OdeFault("Empty package name received!");
+                    }
                     File deploymentDir = new File(_deployPath, pkg);
                     if (!deploymentDir.exists())
                         throw new OdeFault("Couldn't find deployment package " + pkg + " in directory " + _deployPath);
@@ -201,9 +205,9 @@
 
                         Collection<QName> undeployed = _store.undeploy(deploymentDir);
 
-                        File deployedMarker = new File(_deployPath, pkg + ".deployed");
+                        File deployedMarker = new File(deploymentDir + ".deployed");
                         deployedMarker.delete();
-                        FileUtils.deepDelete(new File(_deployPath, pkg));
+                        FileUtils.deepDelete(deploymentDir);
 
                         OMElement response = factory.createOMElement("response", null);
                         response.setText("" + (undeployed.size() > 0));