Improve CMS UI framework.
[lgpl/argeo-commons.git] / org.argeo.api / src / org / argeo / api / NodeUtils.java
index 926f023dbe771ed43081de532f6f62e1b09f8ab0..9cbf82325c0c2452eb35a1b39ba5b86ca148a61e 100644 (file)
@@ -6,6 +6,7 @@ import java.util.Map;
 
 import javax.jcr.NoSuchWorkspaceException;
 import javax.jcr.Node;
+import javax.jcr.Property;
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
 import javax.jcr.RepositoryFactory;
@@ -199,6 +200,16 @@ public class NodeUtils {
                return getUserHome(session, userID);
        }
 
+       /** Whether this node is the home of the user of the underlying session. */
+       public static boolean isUserHome(Node node) {
+               try {
+                       String userID = node.getSession().getUserID();
+                       return node.hasProperty(Property.JCR_ID) && node.getProperty(Property.JCR_ID).getString().equals(userID);
+               } catch (RepositoryException e) {
+                       throw new IllegalStateException(e);
+               }
+       }
+
        /**
         * Translate the path to this node into a path containing the name of the
         * repository and the name of the workspace.