]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/web/ajaxplorer/file/FileDeleteAction.java
Introduce Ajaxplorer support in SLC
[gpl/argeo-slc.git] / runtime / org.argeo.slc.server / src / main / java / org / argeo / slc / web / ajaxplorer / file / FileDeleteAction.java
diff --git a/runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/web/ajaxplorer/file/FileDeleteAction.java b/runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/web/ajaxplorer/file/FileDeleteAction.java
new file mode 100644 (file)
index 0000000..bd8c8f7
--- /dev/null
@@ -0,0 +1,39 @@
+package org.argeo.slc.web.ajaxplorer.file;\r
+\r
+import java.io.File;\r
+import java.util.Map;\r
+\r
+import javax.servlet.http.HttpServletRequest;\r
+\r
+import org.argeo.slc.web.ajaxplorer.AjxpAnswer;\r
+\r
+public class FileDeleteAction<T extends FileDriver> extends FileAction {\r
+\r
+       public AjxpAnswer execute(FileDriver driver, HttpServletRequest request) {\r
+               Map<Object, Object> params = request.getParameterMap();\r
+               for (Object paramKey : params.keySet()) {\r
+                       String param = paramKey.toString();\r
+                       log.debug("param=" + param + " (" + params.get(paramKey));\r
+                       if (param.length() < 4)\r
+                               continue;\r
+                       else {\r
+\r
+                               if (param.substring(0, 4).equals("file")) {\r
+                                       String[] values = (String[]) params.get(paramKey);\r
+                                       for (String path : values) {\r
+                                               File file = driver.getFile(path);\r
+                                               executeDelete((T) driver, file);\r
+                                       }\r
+                               }\r
+                       }\r
+               }\r
+\r
+               return AjxpAnswer.DO_NOTHING;\r
+       }\r
+\r
+       protected void executeDelete(T driver, File file) {\r
+               log.debug("Delete file " + file);\r
+               file.delete();\r
+       }\r
+\r
+}\r