Add a default get data path method.
authorMathieu Baudier <mbaudier@argeo.org>
Tue, 10 Nov 2020 07:28:50 +0000 (08:28 +0100)
committerMathieu Baudier <mbaudier@argeo.org>
Tue, 10 Nov 2020 07:28:50 +0000 (08:28 +0100)
org.argeo.api/src/org/argeo/api/NodeUtils.java

index 9cbf82325c0c2452eb35a1b39ba5b86ca148a61e..0370511384317a3f6d4dc200171b79c67ca2c7ca 100644 (file)
@@ -214,11 +214,23 @@ public class NodeUtils {
         * Translate the path to this node into a path containing the name of the
         * repository and the name of the workspace.
         */
-       public static String getDataPath(String cn, Node node) throws RepositoryException {
+       public static String getDataPath(String cn, Node node) {
                assert node != null;
                StringBuilder buf = new StringBuilder(NodeConstants.PATH_DATA);
-               return buf.append('/').append(cn).append('/').append(node.getSession().getWorkspace().getName())
-                               .append(node.getPath()).toString();
+               try {
+                       return buf.append('/').append(cn).append('/').append(node.getSession().getWorkspace().getName())
+                                       .append(node.getPath()).toString();
+               } catch (RepositoryException e) {
+                       throw new IllegalStateException("Cannot get data path for " + node + " in repository " + cn, e);
+               }
+       }
+
+       /**
+        * Translate the path to this node into a path containing the name of the
+        * repository and the name of the workspace.
+        */
+       public static String getDataPath(Node node) {
+               return getDataPath(NodeConstants.NODE, node);
        }
 
        /**