Author: tdraier
Date: Fri Jul 6 15:42:14 2007
New Revision: 17908
URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D17908&repname=
=3Djahia
Log:
replaced zip implementation, removed flat manager
Modified:
trunk/core/src/java/org/jahia/engines/filemanager/DAVFilemanager_Engine=
.java
trunk/core/src/java/org/jahia/engines/shared/DAVFile_Field.java
Modified: trunk/core/src/java/org/jahia/engines/filemanager/DAVFilemanager_=
Engine.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/engines/filemanager/DAVFilemanager_Engine.java&rev=3D17908&repname=
=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/java/org/jahia/engines/filemanager/DAVFilemanager_Engine=
.java (original)
+++ trunk/core/src/java/org/jahia/engines/filemanager/DAVFilemanager_Engine=
.java Fri Jul 6 15:42:14 2007
@@ -24,7 +24,6 @@
package org.jahia.engines.filemanager;
=
import org.apache.regexp.RE;
-import org.apache.slide.content.NodeProperty;
import org.jahia.bin.Jahia;
import org.jahia.data.JahiaData;
import org.jahia.data.fields.JahiaField;
@@ -56,14 +55,14 @@
import org.jahia.services.content.JCRStoreService;
import org.jahia.tools.files.FileUpload;
import org.jahia.hibernate.model.JahiaAclEntry;
+import org.jahia.utils.zip.ZipInputStream;
+import org.jahia.utils.zip.ZipEntry;
+import org.jahia.utils.zip.ZipOutputStream;
=
import java.io.*;
import java.security.Principal;
import java.text.Collator;
import java.util.*;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipInputStream;
-import java.util.zip.ZipOutputStream;
=
=
/**
@@ -194,7 +193,7 @@
String[] pathes =3D jParams.getParameterValues("path");
final String davAction =3D jParams.getParameter("davAction");
if (pathes =3D=3D null) {
- pathes =3D new String[]{"/"};
+ pathes =3D new String[]{"/"+jParams.getSiteKey()};
}
=
engineMap.put("pathes", pathes);
@@ -337,17 +336,11 @@
String lastTab =3D (String) jParams.getSessionState().getAttribute=
("filemanager-lastTab");
logger.debug("processLastScreen: " + lastScreen + ", " + jParams.g=
etParameter("screen"));
=
- boolean flat =3D jParams.settings().isUseFlatFileManager() &&
- ((ParamBean) jParams).getRequest().getSession().getAttribu=
te("TreeFileManager") =3D=3D null;
-
String viewType =3D jParams.getParameter("viewtype");
if (viewType !=3D null) {
jParams.getSessionState().setAttribute("viewtype", viewType);
}
viewType =3D (String) jParams.getSessionState().getAttribute("view=
type");
- if (viewType !=3D null) {
- flat =3D viewType.equals("flat");
- }
=
if (lastScreen =3D=3D null) {
return;
@@ -390,7 +383,7 @@
final String action =3D jParams.getParameter("act");
if (action.equals("move")) {
final String[] filesToMove =3D (String[]) ((ParamBean)=
jParams).getRequest().getSession().getAttribute("filesToMove");
- final DAVFileAccess[] files =3D toDAVFileAccess(jParam=
s, filesToMove, !flat);
+ final DAVFileAccess[] files =3D toDAVFileAccess(jParam=
s, filesToMove, true);
result =3D true;
for (int i =3D 0; i < files.length; i++) {
if (!result) break;
@@ -398,7 +391,7 @@
}
} else if (action.equals("copy")) {
final String[] filesToCopy =3D (String[]) ((ParamBean)=
jParams).getRequest().getSession().getAttribute("filesToCopy");
- final DAVFileAccess[] files =3D toDAVFileAccess(jParam=
s, filesToCopy, !flat);
+ final DAVFileAccess[] files =3D toDAVFileAccess(jParam=
s, filesToCopy, true);
result =3D true;
for (int i =3D 0; i < files.length; i++) {
if (!result) break;
@@ -413,7 +406,7 @@
} else if (lastScreen.equals("zip")) {
// In the case of the ZipFile, the last value of the Array=
is the directory where the file will be put
final String[] filesToZip =3D (String[]) ((ParamBean) jPar=
ams).getRequest().getSession().getAttribute("filesToZip");
- final DAVFileAccess[] files =3D toDAVFileAccess(jParams, f=
ilesToZip, !flat);
+ final DAVFileAccess[] files =3D toDAVFileAccess(jParams, f=
ilesToZip, true);
final String zipName =3D jParams.getParameter("zipName");
if (zipName.indexOf(".zip") >=3D 0)
result =3D zipFiles(objectDav, zipName, files);
@@ -574,18 +567,17 @@
public void prepareFileTree(final ProcessingContext jParams,
final Map engineMap,
final List hiddenEntries,
- final boolean flat,
final boolean filesInTree) throws JahiaExc=
eption {
engineMap.remove("dirEntries");
=
- if (flat) {
+ if (false) {
String defaultFolder;
if (jParams.getUser() !=3D null) {
defaultFolder =3D TableEntry.javascriptEncode("/users/" + =
jParams.getUser().getUsername());
} else {
defaultFolder =3D "/";
}
- prepareFileTree(jParams, defaultFolder, engineMap, hiddenEntri=
es, flat,
+ prepareFileTree(jParams, defaultFolder, engineMap, hiddenEntri=
es,
filesInTree);
} else {
jParams.setAttribute("ZimbraInclude", "true");
@@ -597,7 +589,6 @@
final String path,
final Map engineMap,
final List hiddenEntries,
- final boolean flat,
final boolean filesInTree) {
final SessionState httpsession =3D jParams.getSessionState();
httpsession.setAttribute("filepicker-expand-/", "on");
@@ -618,7 +609,7 @@
if (selectedFile !=3D null) {
httpsession.setAttribute(jParams.getSiteID() + "-filepicker-se=
lectedfile",
selectedFile);
- if ((!flat || selectedDir =3D=3D null) && selectedFile.indexOf=
('/') =3D=3D 0) {
+ if ((!false || selectedDir =3D=3D null) && selectedFile.indexO=
f('/') =3D=3D 0) {
selectedDir =3D selectedFile.substring(0, selectedFile.las=
tIndexOf('/'));
}
}
@@ -627,9 +618,6 @@
selectedDir =3D (String) httpsession.getAttribute(
jParams.getSiteID() + "-filepicker-selecteddir");
}
- if (flat && selectedDir =3D=3D null) {
- selectedDir =3D path;
- }
=
if (selectedDir !=3D null) {
httpsession.setAttribute(jParams.getSiteID() + "-filepicker-se=
lecteddir",
@@ -666,7 +654,7 @@
=
// selected dir actions
final DAVFileAccess objectDav;
- if (flat) {
+ if (false) {
objectDav =3D jahiaWebdavBaseService.getDAVFileAccess(jParams,
jParams.getSite(), jParams.getUser(), TableEntry.javas=
criptDecode(selectedDir));
} else {
@@ -681,9 +669,9 @@
}
=
hiddenEntries.add("/actions");
- if (flat) {
+ if (false) {
createEntries(objectDav, dirEntries, hiddenEntries, 0, false, =
jParams, filesInTree,
- false, false, !flat);
+ false, false, !false);
engineMap.put("hiddenEntries", hiddenEntries);
}
}
@@ -891,16 +879,12 @@
somethingWasChanged =3D true;
}
} else {
- final NodeProperty p =3D (NodeProperty) props.get(key);
- if (p !=3D null && !p.isProtected() && (p.getValue() =
=3D=3D null || !p.getValue().toString().equals(value)))
- {
- final Object savedValue =3D dav.getProperty(p.getN=
amespace(), p.getName());
- if ((value =3D=3D null && savedValue =3D=3D null) =
||
- (value !=3D null && value.equals(savedValu=
e))) continue;
- logger.debug("editFile: setting new value: " + p.g=
etNamespace() + p.getName() + "=3D" + value);
- dav.setProperty(p.getNamespace(), p.getName(), val=
ue, false);
- somethingWasChanged =3D true;
- }
+ String p =3D (String) props.get(key);
+ if ((value =3D=3D null && p =3D=3D null) ||
+ (value !=3D null && value.equals(p))) continue;
+ logger.debug("editFile: setting new value: " + key + "=
=3D" + value);
+ dav.setProperty(key, value, false);
+ somethingWasChanged =3D true;
}
}
}
@@ -1002,9 +986,14 @@
=
// get files name
final Set filesName =3D fupload.getFileNames();
+ if (filesName =3D=3D null) {
+ return false;
+ }
=
for (Iterator iterator =3D filesName.iterator(); iterator.hasN=
ext();) {
String name =3D (String) iterator.next();
+ String contentType =3D fupload.getFileContentType(name);
+ logger.error("type=3D"+contentType);
final File f =3D fupload.getFile(name);
try {
if (f !=3D null && f.exists()) {
@@ -1032,9 +1021,13 @@
try {
final MyZipInputStream zis =3D new MyZipInputStream(in);
ZipEntry zipentry;
+
while ((zipentry =3D zis.getNextEntry()) !=3D null) {
String filename =3D zipentry.getName();
logger.info("Unzip file (" + zipentry.getMethod() + ")" + =
filename);
+ if (filename.endsWith("/")) {
+ filename =3D filename.substring(0,filename.length()-1);
+ }
int endIndex =3D filename.lastIndexOf('/');
String parentName =3D dest;
if (endIndex > -1) {
@@ -1106,7 +1099,8 @@
}
}
=
- private DAVFileAccess ensureDir(final String name, final ProcessingCon=
text jParams) {
+ private DAVFileAccess ensureDir(String name, ProcessingContext jParams=
) {
+ name =3D JahiaWebdavBaseService.getInstance().cleanTitle(name, tru=
e);
DAVFileAccess dir =3D jahiaWebdavBaseService.getDAVFileAccess(jPar=
ams, jParams.getSite(),
jParams.getUser(), name);
if (!dir.isValid()) {
@@ -1131,6 +1125,9 @@
=
// get files name
final Set filesName =3D fupload.getFileNames();
+ if (filesName =3D=3D null) {
+ return false;
+ }
=
final Vector existingFiles =3D new Vector();
final Vector canOverwrite =3D new Vector();
Modified: trunk/core/src/java/org/jahia/engines/shared/DAVFile_Field.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/engines/shared/DAVFile_Field.java&rev=3D17908&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/java/org/jahia/engines/shared/DAVFile_Field.java (origin=
al)
+++ trunk/core/src/java/org/jahia/engines/shared/DAVFile_Field.java Fri Jul=
6 15:42:14 2007
@@ -53,7 +53,6 @@
=
private static DAVFile_Field theObject =3D null;
private static final String TREE_MANAGER_JSP =3D "/jsp/jahia/engines/s=
hared/embedded_filemanager.jsp";
- private static final String FLAT_MANAGER_JSP =3D "/jsp/jahia/engines/s=
hared/embedded_flat_filemanager.jsp";
public static final String READONLY_JSP =3D "/jsp/jahia/engines/shared=
/readonly_davfile_field.jsp";
=
private static final org.apache.log4j.Logger logger =3D
@@ -262,18 +261,12 @@
=
final DAVFilemanager_Engine engine =3D DAVFilemanager_Engine.getIn=
stance();
=
- boolean flat =3D jParams.settings().isUseFlatFileManager();
-
String viewType =3D jParams.getParameter("viewtype");
if (viewType !=3D null) {
jParams.getSessionState().setAttribute("viewtype", viewType);
}
- viewType =3D (String) jParams.getSessionState().getAttribute("view=
type");
- if (viewType !=3D null) {
- flat =3D viewType.equals("flat");
- }
=
- engine.prepareFileTree(jParams, engineMap, hiddenEntries, flat, tr=
ue);
+ engine.prepareFileTree(jParams, engineMap, hiddenEntries, true);
engineMap.put("fileManagerEngineUrl", jParams.composeEngineUrl("fi=
lemanager"));
=
final LockPrerequisitesResult results =3D LockPrerequisites.getIns=
tance().getLockPrerequisitesResult((LockKey) engineMap.get("LockKey"));
@@ -290,11 +283,7 @@
}
final boolean readOnly =3D (results !=3D null && isLocked);
if (editable && ! readOnly) {
- if (flat) {
- output =3D ServicesRegistry.getInstance().getJahiaFetcherS=
ervice().fetchServlet((ParamBean) jParams, FLAT_MANAGER_JSP);
- } else {
- output =3D ServicesRegistry.getInstance().getJahiaFetcherS=
ervice().fetchServlet((ParamBean) jParams, TREE_MANAGER_JSP);
- }
+ output =3D ServicesRegistry.getInstance().getJahiaFetcherServi=
ce().fetchServlet((ParamBean) jParams, TREE_MANAGER_JSP);
} else {
output =3D ServicesRegistry.getInstance().getJahiaFetcherServi=
ce().fetchServlet((ParamBean) jParams, READONLY_JSP);
}
_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list