X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=server%2Fruntime%2Forg.argeo.server.jackrabbit%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fjcr%2FJcrUtils.java;h=8792a36de3aeb3e79d02f2376c68aaf9baee4660;hb=3c169a3fd8516288d846d53652b873a0d7dab2fc;hp=91ca780b132b6d2eccaeb784e41f3340b2be4020;hpb=3049428581e087f337011c4a5095b68513e84721;p=lgpl%2Fargeo-commons.git diff --git a/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jcr/JcrUtils.java b/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jcr/JcrUtils.java index 91ca780b1..8792a36de 100644 --- a/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jcr/JcrUtils.java +++ b/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jcr/JcrUtils.java @@ -38,6 +38,12 @@ public class JcrUtils { throw new ArgeoException("Query returned more than one node."); return node; } + + public static String removeForbiddenCharacters(String str){ + return str.replace('[', '_').replace(']', '_') + .replace('/', '_').replace('*', '_'); + + } public static String parentPath(String path) { if (path.equals("/")) @@ -70,11 +76,17 @@ public class JcrUtils { } + public static String hostAsPath(String host) { + // TODO : inverse order of the elements (to have org/argeo/test IO + // test/argeo/org + return host.replace('.', '/'); + } + public static String lastPathElement(String path) { if (path.charAt(path.length() - 1) == '/') throw new ArgeoException("Path " + path + " cannot end with '/'"); int index = path.lastIndexOf('/'); - if (index <= 0) + if (index < 0) throw new ArgeoException("Cannot find last path element for " + path); return path.substring(index + 1); @@ -134,6 +146,8 @@ public class JcrUtils { // Then output the properties PropertyIterator properties = node.getProperties(); + //log.debug("Property are : "); + while (properties.hasNext()) { Property property = properties.nextProperty(); if (property.getDefinition().isMultiple()) {