Centralise configure script
[lgpl/argeo-commons.git] / jcr / org.argeo.cms.jcr / src / org / argeo / jcr / Jcr.java
index bf5de1260f93e11bb2b7d47baa31ea3e3eb8460b..49b008d70751e24e4f362c9e5e2b9caab66f06cc 100644 (file)
@@ -29,6 +29,7 @@ import javax.jcr.Workspace;
 import javax.jcr.nodetype.NodeType;
 import javax.jcr.query.Query;
 import javax.jcr.query.QueryManager;
+import javax.jcr.query.Row;
 import javax.jcr.security.Privilege;
 import javax.jcr.version.Version;
 import javax.jcr.version.VersionHistory;
@@ -386,7 +387,6 @@ public class Jcr {
         * 
         * @param node   the node
         * @param mixins the mixins
-        * @return the created node
         * @see Node#addMixin(String)
         */
        public static void addMixin(Node node, String... mixins) {
@@ -598,14 +598,14 @@ public class Jcr {
                        throw new JcrException("Cannot retrieve property " + property + " from " + node, e);
                }
        }
-       
+
        public static <T> T getAs(Node node, String property, Class<T> clss) {
-               if(String.class.isAssignableFrom(clss)) {
-                       return (T)get(node,property);
-               }       else    if(Long.class.isAssignableFrom(clss)) {
-                       return (T)get(node,property);
-               }else {
-                       throw new IllegalArgumentException("Unsupported format "+clss);
+               if (String.class.isAssignableFrom(clss)) {
+                       return (T) get(node, property);
+               } else if (Long.class.isAssignableFrom(clss)) {
+                       return (T) get(node, property);
+               } else {
+                       throw new IllegalArgumentException("Unsupported format " + clss);
                }
        }
 
@@ -978,6 +978,14 @@ public class Jcr {
                return getNode(queryManager, sql, args);
        }
 
+       public static Node getRowNode(Row row, String selectorName) {
+               try {
+                       return row.getNode(selectorName);
+               } catch (RepositoryException e) {
+                       throw new JcrException("Cannot get node " + selectorName + " from row", e);
+               }
+       }
+
        /** Singleton. */
        private Jcr() {