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

Reply via email to