projects
/
mir.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
support for CAPTCHAs
[mir.git]
/
source
/
mircoders
/
servlet
/
ServletModuleFileEdit.java
diff --git
a/source/mircoders/servlet/ServletModuleFileEdit.java
b/source/mircoders/servlet/ServletModuleFileEdit.java
index
6543c11
..
e275250
100755
(executable)
--- a/
source/mircoders/servlet/ServletModuleFileEdit.java
+++ b/
source/mircoders/servlet/ServletModuleFileEdit.java
@@
-45,17
+45,20
@@
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.util.*;
import java.io.*;
import java.util.*;
+import org.apache.oro.text.regex.MalformedPatternException;
+
/*
* ServletModuleFileEdit -
* Allows one to do a basic edit of a file in a directory specified
* in the config file.
*
* @author $Author: zapata $
/*
* ServletModuleFileEdit -
* Allows one to do a basic edit of a file in a directory specified
* in the config file.
*
* @author $Author: zapata $
- * @version $Revision: 1.13.2.1
4 $ $Date: 2006/12/25 20:10:23
$
+ * @version $Revision: 1.13.2.1
5 $ $Date: 2007/12/15 00:24:44
$
*
*/
public class ServletModuleFileEdit extends AdminServletModule {
*
*/
public class ServletModuleFileEdit extends AdminServletModule {
+ // todo: subdirectories use too many /'s
private Map directories;
private List directoryNames;
private Map directories;
private List directoryNames;
@@
-80,7
+83,13
@@
public class ServletModuleFileEdit extends AdminServletModule {
else {
String name = (String) parts.get(0);
String directory = (String) parts.get(1);
else {
String name = (String) parts.get(0);
String directory = (String) parts.get(1);
- String filter = (String) parts.get(2);
+ FilenameFilter filter;
+ try {
+ filter = new FileRoutines.RegExpFileFilter((String) parts.get(2));
+ }
+ catch (MalformedPatternException e) {
+ throw new ServletModuleFailure("Invalid regular expression for file edit: " + parts.get(2));
+ }
String recursive = (String) parts.get(3);
directories.put(name, new FileEditDirectory(name, directory, filter,
String recursive = (String) parts.get(3);
directories.put(name, new FileEditDirectory(name, directory, filter,
@@
-100,14
+109,16
@@
public class ServletModuleFileEdit extends AdminServletModule {
public FileEditDirectory getDirectory(HttpServletRequest aRequest) throws ServletModuleExc {
FileEditDirectory result = (FileEditDirectory) directories.get(aRequest.getParameter("entry"));
public FileEditDirectory getDirectory(HttpServletRequest aRequest) throws ServletModuleExc {
FileEditDirectory result = (FileEditDirectory) directories.get(aRequest.getParameter("entry"));
- if (result == null)
+
+ if (result == null) {
throw new ServletModuleExc("Unknown entry: " + aRequest.getParameter("entry"));
throw new ServletModuleExc("Unknown entry: " + aRequest.getParameter("entry"));
+ }
return result;
}
public void list(HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc {
return result;
}
public void list(HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc {
- listSubDirectory(getDirectory(aRequest), "
/
", aRequest, aResponse);
+ listSubDirectory(getDirectory(aRequest), "", aRequest, aResponse);
}
public void edit(HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc {
}
public void edit(HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc {
@@
-117,8
+128,9
@@
public class ServletModuleFileEdit extends AdminServletModule {
String filename = requestParser.getParameter("filename");
String subDirectory = requestParser.getParameterWithDefault("subdirectory", "");
String filename = requestParser.getParameter("filename");
String subDirectory = requestParser.getParameterWithDefault("subdirectory", "");
- if (filename == null)
+ if (filename == null)
{
throw new ServletModuleExc("No filename specified");
throw new ServletModuleExc("No filename specified");
+ }
editFile(getDirectory(aRequest), filename, subDirectory, aRequest, aResponse);
}
editFile(getDirectory(aRequest), filename, subDirectory, aRequest, aResponse);
}
@@
-135,7
+147,7
@@
public class ServletModuleFileEdit extends AdminServletModule {
String directoryName = requestParser.getParameter("directory");
String subDirectoryName = requestParser.getParameter("subdirectory");
String directoryName = requestParser.getParameter("directory");
String subDirectoryName = requestParser.getParameter("subdirectory");
- if (directoryName==null | subDirectoryName==null)
+ if (directoryName==null |
|
subDirectoryName==null)
throw new ServletModuleExc("No directory/subDirectory specified");
listSubDirectory(getDirectory(aRequest), subDirectoryName+File.separator+directoryName, aRequest, aResponse);
throw new ServletModuleExc("No directory/subDirectory specified");
listSubDirectory(getDirectory(aRequest), subDirectoryName+File.separator+directoryName, aRequest, aResponse);
@@
-186,7
+198,8
@@
public class ServletModuleFileEdit extends AdminServletModule {
public void listSubDirectory(FileEditDirectory aDirectory, String aSubDirectory, HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc
{
try {
public void listSubDirectory(FileEditDirectory aDirectory, String aSubDirectory, HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc
{
try {
- Map responseData = ServletHelper.makeGenerationData(aRequest, aResponse, new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)});
+ Map responseData = ServletHelper.makeGenerationData(aRequest, aResponse,
+ new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)});
File dir = new File(aDirectory.getRootDirectory(), aSubDirectory);
if (!isDirectoryValid(aDirectory, dir) || !dir.isDirectory()) {
File dir = new File(aDirectory.getRootDirectory(), aSubDirectory);
if (!isDirectoryValid(aDirectory, dir) || !dir.isDirectory()) {
@@
-284,14
+297,14
@@
public class ServletModuleFileEdit extends AdminServletModule {
private class FileEditDirectory {
private String name;
private class FileEditDirectory {
private String name;
- private File
Routines.RegExpFil
eFilter filter;
+ private File
nam
eFilter filter;
private File rootDirectory;
private boolean recursive;
private File rootDirectory;
private boolean recursive;
- public FileEditDirectory(String aName, String aRootDirectory,
String
aFilter, boolean aRecursive) {
+ public FileEditDirectory(String aName, String aRootDirectory,
FilenameFilter
aFilter, boolean aRecursive) {
name = aName;
rootDirectory = new File(aRootDirectory);
name = aName;
rootDirectory = new File(aRootDirectory);
- filter =
new FileRoutines.RegExpFileFilter(aFilter)
;
+ filter =
aFilter
;
recursive = aRecursive;
}
recursive = aRecursive;
}
@@
-299,7
+312,7
@@
public class ServletModuleFileEdit extends AdminServletModule {
return name;
}
return name;
}
- public File
Routines.RegExpFil
eFilter getFilter() {
+ public File
nam
eFilter getFilter() {
return filter;
}
return filter;
}