Author: tdraier
Date: Fri Jul 6 19:55:24 2007
New Revision: 17913
URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D17913&repname=
=3Djahia
Log:
set file metadata, centralized constants
Added:
trunk/core/src/java/org/jahia/services/content/Constants.java
trunk/core/src/java/org/jahia/services/content/JCRMetadataListener.java
Modified:
trunk/core/src/java/org/jahia/ajax/webdav/DAVAbstractAction.java
trunk/core/src/java/org/jahia/data/fields/JahiaFileFieldWrapper.java
trunk/core/src/java/org/jahia/engines/filemanager/DAVFilemanager_Engine=
.java
trunk/core/src/java/org/jahia/services/content/JCRSiteListener.java
trunk/core/src/java/org/jahia/services/content/JCRStoreService.java
trunk/core/src/java/org/jahia/services/content/JahiaAccessManager.java
trunk/core/src/java/org/jahia/services/content/JahiaIOManager.java
trunk/core/src/java/org/jahia/services/webdav/DAVFileAccess.java
Modified: trunk/core/src/java/org/jahia/ajax/webdav/DAVAbstractAction.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/ajax/webdav/DAVAbstractAction.java&rev=3D17913&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/ajax/webdav/DAVAbstractAction.java (origi=
nal)
+++ trunk/core/src/java/org/jahia/ajax/webdav/DAVAbstractAction.java Fri Ju=
l 6 19:55:24 2007
@@ -335,10 +335,7 @@
*
*/
public static String getOwner(final DAVFileAccess file) {
- if (file =3D=3D null) return "-";
- final String res =3D file.getOwner();
- if (res =3D=3D null || res.length() =3D=3D 0) return "-";
- return res;
+ return getCreator(file);
}
=
/**
@@ -346,12 +343,9 @@
*/
public static String getLastModifUser(final DAVFileAccess file) {
if (file =3D=3D null) return "-";
- final Object res =3D file.getProperty(JCRStoreService.JAHIA_NS, "l=
astAuthor");
- if (res =3D=3D null) {
- return "-";
- } else {
- return res.toString();
- }
+ final String res =3D file.getModificationUser();
+ if (res =3D=3D null) return "-";
+ return res;
}
=
/**
@@ -359,11 +353,8 @@
*/
public static String getCreator(final DAVFileAccess file) {
if (file =3D=3D null) return "-";
- final Object res =3D file.getProperty(JCRStoreService.JAHIA_NS, "a=
uthor");
- if (res =3D=3D null) {
- return "-";
- } else {
- return res.toString();
- }
+ final String res =3D file.getCreationUser();
+ if (res =3D=3D null) return "-";
+ return res;
}
}
Modified: trunk/core/src/java/org/jahia/data/fields/JahiaFileFieldWrapper.j=
ava
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/data/fields/JahiaFileFieldWrapper.java&rev=3D17913&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/data/fields/JahiaFileFieldWrapper.java (o=
riginal)
+++ trunk/core/src/java/org/jahia/data/fields/JahiaFileFieldWrapper.java Fr=
i Jul 6 19:55:24 2007
@@ -32,7 +32,7 @@
import org.jahia.services.version.EntrySaveRequest;
import org.jahia.services.webdav.DAVFileAccess;
import org.jahia.services.webdav.JahiaWebdavBaseService;
-import org.jahia.services.content.JCRStoreService;
+import org.jahia.services.content.Constants;
import org.jahia.sharing.FieldSharingManager;
=
import java.util.HashMap;
@@ -279,12 +279,12 @@
JahiaFileField fField =3D (JahiaFileField) this.getObject();
DAVFileAccess objectDav =3D JahiaWebdavBaseService.getInstance().g=
etDAVFileAccess(jParams, fField.getRealName());
if (objectDav.hasRevisions()) {
- String list =3D (String) objectDav.getProperty(JCRStoreService=
.JAHIA_NS, "fieldsinuse");
+ String list =3D (String) objectDav.getProperty(Constants.JAHIA=
_NS, "fieldsinuse");
if (list =3D=3D null) {
list =3D "";
}
if (!list.startsWith(pagePrefix) && list.indexOf(";" + pagePre=
fix) =3D=3D -1) {
- objectDav.setProperty(JCRStoreService.JAHIA_NS, "fieldsinu=
se", list + pagePrefix, true);
+ objectDav.setProperty(Constants.JAHIA_NS, "fieldsinuse", l=
ist + pagePrefix, true);
}
}
}
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=3D17913&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 19:55:24 2007
@@ -52,7 +52,7 @@
import org.jahia.services.webdav.UsageEntry;
import org.jahia.services.webdav.model.PropertyDefinition;
import org.jahia.services.version.EntryLoadRequest;
-import org.jahia.services.content.JCRStoreService;
+import org.jahia.services.content.Constants;
import org.jahia.tools.files.FileUpload;
import org.jahia.hibernate.model.JahiaAclEntry;
import org.jahia.utils.zip.ZipInputStream;
@@ -873,7 +873,7 @@
//renameDisplayName =3D true;
//newDisplayName =3D value;
=
- if (! value.equals(dav.getProperty(JCRStoreService.JAH=
IA_NS, "displayname"))) {
+ if (! value.equals(dav.getProperty(Constants.JAHIA_NS,=
"displayname"))) {
logger.debug("editFile: setting new name: " + valu=
e);
dav.setName(value);
somethingWasChanged =3D true;
@@ -892,7 +892,7 @@
final String newName =3D jParams.getParameter("newName");
final String newValue =3D jParams.getParameter("newValue");
if (newName !=3D null && newValue !=3D null && newName.length() > =
0) {
- dav.setProperty(JCRStoreService.JAHIA_NS, newName, newValue, f=
alse);
+ dav.setProperty(Constants.JAHIA_NS, newName, newValue, false);
somethingWasChanged =3D true;
}
=
Added: trunk/core/src/java/org/jahia/services/content/Constants.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/trunk/core/src=
/java/org/jahia/services/content/Constants.java&rev=3D17913&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/services/content/Constants.java (added)
+++ trunk/core/src/java/org/jahia/services/content/Constants.java Fri Jul =
6 19:55:24 2007
@@ -0,0 +1,35 @@
+package org.jahia.services.content;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: toto
+ * Date: 6 juil. 2007
+ * Time: 18:54:16
+ * To change this template use File | Settings | File Templates.
+ */
+public class Constants {
+ public static final String JAHIA_NS =3D "http://www.jahia.org/jahia/1.=
0";
+ public static final String JAHIANT_NS =3D "http://www.jahia.org/jahia/=
nt/1.0";
+ public static final String JAHIAMIX_NS =3D "http://www.jahia.org/jahia=
/mix/1.0";
+
+ public static final String JAHIA_PREF =3D "jahia";
+ public static final String JAHIANT_PREF =3D "jahiant";
+ public static final String JAHIAMIX_PREF =3D "jahiamix";
+
+ public static final String JAHIAMIX_METADATA =3D "jahiamix:metadata";
+
+ public static final String JAHIANT_FOLDER =3D "jahiant:folder";
+ public static final String JAHIANT_FILE =3D "jahiant:file";
+ public static final String JAHIANT_SYSTEMFOLDER =3D "jahiant:systemfol=
der";
+ public static final String JAHIANT_VIRTUALSITE =3D "jahiant:virtualsit=
e";
+ public static final String JAHIANT_USERFOLDER =3D "jahiant:userfolder";
+
+ public static final String CREATED =3D "jahia:created";
+
+ public static final String AUTHOR =3D "jahia:author";
+
+ public static final String LAST_MODIFIED =3D "jahia:lastModified";
+
+ public static final String LAST_AUTHOR =3D "jahia:lastAuthor";
+
+}
Added: trunk/core/src/java/org/jahia/services/content/JCRMetadataListener.j=
ava
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/trunk/core/src=
/java/org/jahia/services/content/JCRMetadataListener.java&rev=3D17913&repna=
me=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/services/content/JCRMetadataListener.java=
(added)
+++ trunk/core/src/java/org/jahia/services/content/JCRMetadataListener.java=
Fri Jul 6 19:55:24 2007
@@ -0,0 +1,53 @@
+package org.jahia.services.content;
+
+import org.apache.jackrabbit.value.DateValue;
+import org.apache.jackrabbit.value.StringValue;
+
+import javax.jcr.observation.EventListener;
+import javax.jcr.observation.EventIterator;
+import javax.jcr.observation.Event;
+import javax.jcr.Session;
+import javax.jcr.Node;
+import javax.jcr.Value;
+import javax.jcr.RepositoryException;
+import java.util.Iterator;
+import java.util.GregorianCalendar;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: toto
+ * Date: 6 juil. 2007
+ * Time: 18:03:47
+ * To change this template use File | Settings | File Templates.
+ */
+public class JCRMetadataListener implements EventListener {
+ public void onEvent(EventIterator eventIterator) {
+ while (eventIterator.hasNext()) {
+ Event event =3D eventIterator.nextEvent();
+ try {
+ Session s =3D JCRStoreService.getInstance().getSystemSessi=
on();
+ Node n =3D (Node) s.getItem(event.getPath());
+
+ // should be filtered
+ if (n.isNodeType(Constants.JAHIAMIX_METADATA)) {
+
+ // already present in nt:hierarchyNode
+ // n.setProperty(Constants.CREATED, new DateValue(new =
GregorianCalendar()));
+
+ if (!n.isNodeType("nt:file")) {
+ // already in nt:resource
+ n.setProperty(Constants.LAST_MODIFIED, new DateVal=
ue(new GregorianCalendar()));
+ }
+ n.getParent().setProperty(Constants.LAST_MODIFIED, new=
DateValue(new GregorianCalendar()));
+ n.setProperty(Constants.AUTHOR, new StringValue(event.=
getUserID()));
+ n.setProperty(Constants.LAST_AUTHOR, new StringValue(e=
vent.getUserID()));
+ s.save();
+ }
+ s.logout();
+ } catch (RepositoryException e) {
+ e.printStackTrace();
+ }
+
+ }
+ }
+}
Modified: trunk/core/src/java/org/jahia/services/content/JCRSiteListener.ja=
va
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/content/JCRSiteListener.java&rev=3D17913&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/services/content/JCRSiteListener.java (or=
iginal)
+++ trunk/core/src/java/org/jahia/services/content/JCRSiteListener.java Fri=
Jul 6 19:55:24 2007
@@ -20,10 +20,7 @@
import org.jahia.data.events.JahiaEventListener;
import org.jahia.data.events.JahiaEvent;
import org.jahia.services.sites.JahiaSite;
-import org.jahia.services.content.JCRStoreService;
-import org.jahia.params.JahiaLoginModule;
import org.jahia.registries.ServicesRegistry;
-import org.apache.slide.common.JahiaDomain;
=
import javax.jcr.Session;
import javax.jcr.Node;
@@ -42,7 +39,7 @@
Session session =3D ServicesRegistry.getInstance().getJCRStore=
Service().getSystemSession();
Node rootNode =3D session.getRootNode();
JahiaSite site =3D (JahiaSite) je.getObject();
- Node n =3D rootNode.addNode(site.getSiteKey(), JCRStoreService=
.JAHIANT_PREF+":virtualsite");
+ Node n =3D rootNode.addNode(site.getSiteKey(), Constants.JAHIA=
NT_VIRTUALSITE);
n.setProperty("name", site.getSiteKey());
n.setProperty("server", site.getServerName());
=
Modified: trunk/core/src/java/org/jahia/services/content/JCRStoreService.ja=
va
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/content/JCRStoreService.java&rev=3D17913&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/services/content/JCRStoreService.java (or=
iginal)
+++ trunk/core/src/java/org/jahia/services/content/JCRStoreService.java Fri=
Jul 6 19:55:24 2007
@@ -26,44 +26,23 @@
import java.util.*;
=
import javax.jcr.*;
-import javax.jcr.version.OnParentVersionAction;
+import javax.jcr.observation.Event;
import javax.naming.Context;
import javax.naming.InitialContext;
=
import org.apache.jackrabbit.core.jndi.RegistryHelper;
-import org.apache.jackrabbit.core.nodetype.compact.CompactNodeTypeDefReade=
r;
import org.apache.jackrabbit.core.nodetype.compact.ParseException;
-import org.apache.jackrabbit.core.nodetype.compact.CompactNodeTypeDefWrite=
r;
import org.apache.jackrabbit.core.nodetype.*;
-import org.apache.jackrabbit.core.value.InternalValue;
//import org.apache.jackrabbit.core.state.orm.hibernate.HibernatePersisten=
ceManager;
-import org.apache.jackrabbit.name.QName;
-import org.apache.jackrabbit.name.SessionNamespaceResolver;
import org.apache.jackrabbit.api.JackrabbitNodeTypeManager;
+import org.apache.jackrabbit.JcrConstants;
import org.jahia.bin.Jahia;
import org.jahia.exceptions.JahiaInitializationException;
-import org.jahia.exceptions.JahiaException;
import org.jahia.services.JahiaService;
import org.jahia.services.usermanager.JahiaUser;
-import org.jahia.services.fields.JahiaFieldService;
-import org.jahia.services.containers.JahiaContainersService;
-import org.jahia.services.pages.JahiaPageDefinition;
-import org.jahia.services.pages.JahiaPageTemplateService;
-import org.jahia.services.sites.JahiaSitesService;
import org.jahia.services.sites.JahiaSite;
-import org.jahia.registries.ServicesRegistry;
import org.jahia.params.JahiaLoginModule;
import org.jahia.params.ProcessingContext;
-import org.jahia.data.fields.JahiaFieldDefinition;
-import org.jahia.data.fields.JahiaFieldSubDefinition;
-import org.jahia.data.fields.FieldTypes;
-import org.jahia.data.containers.JahiaContainerDefinition;
-import org.jahia.data.containers.JahiaContainerSubDefinition;
-import org.jahia.data.containers.JahiaContainerStructure;
-import org.jahia.content.FieldDefinitionKey;
-import org.jahia.content.ContainerDefinitionKey;
-import org.jahia.content.PageDefinitionKey;
-import org.jahia.hibernate.manager.SpringContextSingleton;
=
/**
* @author hollis
@@ -75,14 +54,6 @@
private static org.apache.log4j.Logger logger =3D
org.apache.log4j.Logger.getLogger(JCRStoreService.class);
=
- public static final String JAHIA_NS =3D "http://www.jahia.org/jahia/1.=
0";
- public static final String JAHIANT_NS =3D "http://www.jahia.org/jahia/=
nt/1.0";
- public static final String JAHIAMIX_NS =3D "http://www.jahia.org/jahia=
/mix/1.0";
-
- public static final String JAHIA_PREF =3D "jahia";
- public static final String JAHIANT_PREF =3D "jahiant";
- public static final String JAHIAMIX_PREF =3D "jahiamix";
-
static private JCRStoreService instance =3D null;
=
private Repository repo =3D null;
@@ -144,15 +115,20 @@
}
Session session =3D this.repo.login(JahiaLoginModule.getSystem=
Credentials());
Workspace workspace =3D session.getWorkspace();
- String workspaceName =3D workspace.getName();
-
=
this.registerNamespaces(workspace);
+
+ workspace.getObservationManager().addEventListener(new JCRMeta=
dataListener(), Event.NODE_ADDED, "/", true, null,new String[] {Constants.J=
AHIAMIX_METADATA},false);
+
String path =3D Jahia.getSettings().getJahiaEtcDiskPath() + "/=
repository/jahia-nodetypes.cnd";
- registerCustomNodeTypes(workspace, path);
+ try {
+ registerCustomNodeTypes(workspace, path);
+ } catch (RepositoryException e) {
+ logger.error("Cannot register nodetypes",e);
+ }
=
Node rootNode =3D session.getRootNode();
- Node node =3D rootNode.getNode("jcr:system");
+ Node node =3D rootNode.getNode(JcrConstants.JCR_SYSTEM);
try {
Node ac =3D node.getNode("jcr:accessControl");
} catch (PathNotFoundException e) {
@@ -169,7 +145,6 @@
rootNode.addMixin("mix:accessControlled");
rootNode.setProperty("jcr:accessControlPolicy", defaultAcp=
);
}
-
session.save();
} catch (Exception e){
logger.error("Jackrabbit init error",e);
@@ -194,7 +169,7 @@
s.getRootNode().getNode(site.getSiteKey()+"/users/"+user.g=
etUsername());
} catch (PathNotFoundException e) {
Node users =3D getSystemSession().getRootNode().getNode(si=
te.getSiteKey()+"/users");
- Node userFolder =3D users.addNode(user.getUsername(), "jah=
iant:userfolder");
+ Node userFolder =3D users.addNode(user.getUsername(), Cons=
tants.JAHIANT_USERFOLDER);
users.save();
} catch (RepositoryException e) {
}
@@ -227,11 +202,11 @@
public void registerNamespaces(Workspace workspace) throws RepositoryE=
xception {
NamespaceRegistry namespaceRegistry =3D workspace.getNamespaceRegi=
stry();
try {
- namespaceRegistry.getURI(JAHIA_PREF);
+ namespaceRegistry.getURI(Constants.JAHIA_PREF);
} catch (NamespaceException e) {
- namespaceRegistry.registerNamespace(JAHIA_PREF, JAHIA_NS);
- namespaceRegistry.registerNamespace(JAHIANT_PREF, JAHIANT_NS);
- namespaceRegistry.registerNamespace(JAHIAMIX_PREF, JAHIAMIX_NS=
);
+ namespaceRegistry.registerNamespace(Constants.JAHIA_PREF, Cons=
tants.JAHIA_NS);
+ namespaceRegistry.registerNamespace(Constants.JAHIANT_PREF, Co=
nstants.JAHIANT_NS);
+ namespaceRegistry.registerNamespace(Constants.JAHIAMIX_PREF, C=
onstants.JAHIAMIX_NS);
}
}
=
Modified: trunk/core/src/java/org/jahia/services/content/JahiaAccessManager=
.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/content/JahiaAccessManager.java&rev=3D17913&repname=3Djah=
ia
=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/services/content/JahiaAccessManager.java =
(original)
+++ trunk/core/src/java/org/jahia/services/content/JahiaAccessManager.java =
Fri Jul 6 19:55:24 2007
@@ -7,29 +7,18 @@
import org.apache.jackrabbit.core.ItemId;
import org.apache.jackrabbit.core.HierarchyManager;
import org.apache.jackrabbit.core.PropertyId;
-import org.apache.jackrabbit.core.state.NoSuchItemStateException;
import org.apache.jackrabbit.name.*;
import org.jahia.services.usermanager.JahiaUser;
import org.jahia.services.usermanager.JahiaGroup;
import org.jahia.services.usermanager.JahiaGroupManagerService;
-import org.jahia.services.usermanager.JahiaUserManagerService;
-import org.jahia.services.acl.JahiaBaseACL;
-import org.jahia.services.acl.JahiaACLEntry;
-import org.jahia.services.acl.JahiaACLException;
import org.jahia.services.sites.JahiaSite;
import org.jahia.params.JahiaLoginModule;
import org.jahia.params.JahiaUserWrapper;
-import org.jahia.hibernate.model.JahiaAclEntry;
import org.jahia.registries.ServicesRegistry;
-import org.jahia.exceptions.JahiaException;
=
import javax.jcr.*;
import javax.security.auth.Subject;
import java.util.Set;
-import java.util.StringTokenizer;
-import java.util.Map;
-import java.util.HashMap;
-import java.security.Principal;
=
/**
* Created by IntelliJ IDEA.
@@ -127,7 +116,7 @@
Item i =3D s.getItem(jcrPath);
if (i.isNode() && permissions !=3D AccessManager.READ) {
String ntName =3D ((Node) i).getPrimaryNodeType().getN=
ame();
- if (ntName.equals(JCRStoreService.JAHIANT_PREF+":syste=
mfolder") || ntName.equals(JCRStoreService.JAHIANT_PREF+":virtualsite")
+ if (ntName.equals(Constants.JAHIANT_SYSTEMFOLDER) || n=
tName.equals(Constants.JAHIANT_VIRTUALSITE)
|| ntName.equals("rep:root")) {
return false;
}
Modified: trunk/core/src/java/org/jahia/services/content/JahiaIOManager.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/content/JahiaIOManager.java&rev=3D17913&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/services/content/JahiaIOManager.java (ori=
ginal)
+++ trunk/core/src/java/org/jahia/services/content/JahiaIOManager.java Fri =
Jul 6 19:55:24 2007
@@ -16,18 +16,8 @@
package org.jahia.services.content;
=
import org.apache.log4j.Logger;
-import org.apache.jackrabbit.webdav.DavResource;
import org.apache.jackrabbit.server.io.*;
import org.apache.jackrabbit.JcrConstants;
-import org.apache.jackrabbit.core.NodeImpl;
-
-import javax.jcr.Item;
-import javax.jcr.Node;
-import javax.jcr.RepositoryException;
-import java.util.List;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.io.IOException;
=
/**
* <code>JahiaIOManager</code>...
@@ -69,6 +59,6 @@
*/
protected void init() {
addIOHandler(new DirListingExportHandler(this));
- addIOHandler(new DefaultHandler(this, JCRStoreService.JAHIANT_PREF=
+":folder", JCRStoreService.JAHIANT_PREF+":file", JcrConstants.NT_RESOURCE)=
);
+ addIOHandler(new DefaultHandler(this, Constants.JAHIANT_FOLDER, Co=
nstants.JAHIANT_FILE, JcrConstants.NT_RESOURCE));
}
}
\ No newline at end of file
Modified: trunk/core/src/java/org/jahia/services/webdav/DAVFileAccess.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/webdav/DAVFileAccess.java&rev=3D17913&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/services/webdav/DAVFileAccess.java (origi=
nal)
+++ trunk/core/src/java/org/jahia/services/webdav/DAVFileAccess.java Fri Ju=
l 6 19:55:24 2007
@@ -1,18 +1,18 @@
/*
* Copyright 2002-2006 Jahia Ltd
*
- * Licensed under the JAHIA COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (J=
CDDL), =
- * Version 1.0 (the "License"), or (at your option) any later version; you=
may =
- * not use this file except in compliance with the License. You should hav=
e =
- * received a copy of the License along with this program; if not, you may=
obtain =
- * a copy of the License at =
+ * Licensed under the JAHIA COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (J=
CDDL),
+ * Version 1.0 (the "License"), or (at your option) any later version; you=
may
+ * not use this file except in compliance with the License. You should have
+ * received a copy of the License along with this program; if not, you may=
obtain
+ * a copy of the License at
*
* http://www.jahia.org/license/
*
- * Unless required by applicable law or agreed to in writing, software =
- * distributed under the License is distributed on an "AS IS" BASIS, =
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied=
. =
- * See the License for the specific language governing permissions and =
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
* limitations under the License.
*/package org.jahia.services.webdav;
=
@@ -37,13 +37,13 @@
import org.jahia.data.files.JahiaFile;
import org.jahia.data.files.JahiaFileField;
import org.jahia.params.ProcessingContext;
-import org.jahia.params.JahiaLoginModule;
import org.jahia.params.ParamBean;
import org.jahia.registries.ServicesRegistry;
import org.jahia.services.sites.JahiaSite;
import org.jahia.services.usermanager.*;
import org.jahia.services.content.JCRStoreService;
import org.jahia.services.content.JahiaIOManager;
+import org.jahia.services.content.Constants;
import org.jahia.spring.aop.interceptor.SilentJamonPerformanceMonitorInter=
ceptor;
import org.jahia.urls.URI;
=
@@ -163,7 +163,7 @@
path =3D "/" + site.getSiteKey() + path;
objectNode =3D(Node) session.getItem(path);
logger.debug("Incorrect DAVFileAccess construction, fixed =
by adding sitekey",e);
- } catch (Exception e1) { =
+ } catch (Exception e1) {
exception =3D e;
}
} catch (Exception e) {
@@ -258,7 +258,7 @@
public String createCollection(String name, HttpServletRequest request=
) {
name =3D JahiaWebdavBaseService.getInstance().cleanTitle(name);
try {
- objectNode.addNode(name, JCRStoreService.JAHIANT_PREF+":folder=
");
+ objectNode.addNode(name, Constants.JAHIANT_FOLDER);
} catch (RepositoryException e) {
logger.error("Repository error",e);
}
@@ -268,7 +268,7 @@
public String createCollection (String name) {
name =3D JahiaWebdavBaseService.getInstance().cleanTitle(name);
try {
- objectNode.addNode(name, JCRStoreService.JAHIANT_PREF+":folder=
");
+ objectNode.addNode(name, Constants.JAHIANT_FOLDER);
} catch (RepositoryException e) {
logger.error("Repository error",e);
}
@@ -436,8 +436,8 @@
return false;
}
try {
- return objectNode.isNodeType("nt:folder") || objectNode.isNode=
Type("rep:root") ||
- objectNode.isNodeType("jahiant:virtualsite");
+ return objectNode.isNodeType(JcrConstants.NT_FILE) || objectNo=
de.isNodeType("rep:root") ||
+ objectNode.isNodeType(Constants.JAHIANT_VIRTUALSITE);
} catch (RepositoryException e) {
return false;
}
@@ -551,7 +551,7 @@
}
=
public void setName (String name) {
- setProperty(JCRStoreService.JAHIA_NS,"displayname", name, false);
+ setProperty(Constants.JAHIA_NS,"displayname", name, false);
}
=
public String getContentLanguage() {
@@ -578,10 +578,13 @@
=
public Date getLastModifiedAsDate() {
try {
- Node content =3D objectNode.getNode(JcrConstants.JCR_CONTENT);
- return content.getProperty(JcrConstants.JCR_LASTMODIFIED).getD=
ate().getTime();
+ if (isCollection()) {
+ return objectNode.getProperty(Constants.LAST_MODIFIED).get=
Date().getTime();
+ } else {
+ Node content =3D objectNode.getNode(JcrConstants.JCR_CONTE=
NT);
+ return content.getProperty(JcrConstants.JCR_LASTMODIFIED).=
getDate().getTime();
+ }
} catch (PathNotFoundException pnfe) {
- return null;
} catch (RepositoryException e) {
}
return null;
@@ -595,15 +598,19 @@
return null;
}
=
- public String getOwner() {
- return null;
- }
-
public String getCreationUser() {
+ try {
+ return objectNode.getProperty(Constants.AUTHOR).getString();
+ } catch (RepositoryException e) {
+ }
return null;
}
=
public String getModificationUser() {
+ try {
+ return objectNode.getProperty(Constants.LAST_AUTHOR).getString=
();
+ } catch (RepositoryException e) {
+ }
return null;
}
=
_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list