Author: midon
Date: Thu May 21 23:57:12 2009
New Revision: 777326

URL: http://svn.apache.org/viewvc?rev=777326&view=rev
Log:
ODE-597 don't delete /processes

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

Modified: 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java?rev=777326&r1=777325&r2=777326&view=diff
==============================================================================
--- 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
 (original)
+++ 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
 Thu May 21 23:57:12 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/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java?rev=777326&r1=777325&r2=777326&view=diff
==============================================================================
--- 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
 (original)
+++ 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
 Thu May 21 23:57:12 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));


Reply via email to