Author: stillalex
Date: Thu Jun  7 12:24:25 2018
New Revision: 1833118

URL: http://svn.apache.org/viewvc?rev=1833118&view=rev
Log:
OAK-7529 Define and register oak namespace


Modified:
    
jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/NamespaceConstants.java
    
jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/package-info.java
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/NamespaceEditor.java
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/Namespaces.java

Modified: 
jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/NamespaceConstants.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/NamespaceConstants.java?rev=1833118&r1=1833117&r2=1833118&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/NamespaceConstants.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/NamespaceConstants.java
 Thu Jun  7 12:24:25 2018
@@ -43,6 +43,10 @@ public interface NamespaceConstants {
     String PREFIX_XMLNS = "xmlns";
     String NAMESPACE_XMLNS = "http://www.w3.org/2000/xmlns/";;
 
+    // additional Oak namespace
+    String PREFIX_OAK = "oak";
+    String NAMESPACE_OAK = "http://jackrabbit.apache.org/oak/ns/1.0";;
+
     /**
      * Reserved namespace prefixes as defined in jackrabbit 2
      */
@@ -53,7 +57,8 @@ public interface NamespaceConstants {
             NamespaceRegistry.PREFIX_MIX,
             PREFIX_XMLNS,
             PREFIX_REP,
-            PREFIX_SV
+            PREFIX_SV,
+            PREFIX_OAK
     ));
 
     /**
@@ -66,7 +71,8 @@ public interface NamespaceConstants {
             NamespaceRegistry.NAMESPACE_MIX,
             NAMESPACE_XMLNS,
             NAMESPACE_REP,
-            NAMESPACE_SV
+            NAMESPACE_SV,
+            NAMESPACE_OAK
     ));
 
     // index nodes for faster lookup

Modified: 
jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/package-info.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/package-info.java?rev=1833118&r1=1833117&r2=1833118&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/package-info.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core-spi/src/main/java/org/apache/jackrabbit/oak/spi/namespace/package-info.java
 Thu Jun  7 12:24:25 2018
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-@Version("1.0.0")
+@Version("1.1.0")
 package org.apache.jackrabbit.oak.spi.namespace;
 
 import org.osgi.annotation.versioning.Version;
\ No newline at end of file

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/NamespaceEditor.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/NamespaceEditor.java?rev=1833118&r1=1833117&r2=1833118&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/NamespaceEditor.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/NamespaceEditor.java
 Thu Jun  7 12:24:25 2018
@@ -26,15 +26,15 @@ import static org.apache.jackrabbit.oak.
 import static 
org.apache.jackrabbit.oak.spi.namespace.NamespaceConstants.REP_NSDATA;
 import static 
org.apache.jackrabbit.oak.spi.namespace.NamespaceConstants.REP_URIS;
 import static org.apache.jackrabbit.oak.plugins.name.Namespaces.isValidPrefix;
-import static org.apache.jackrabbit.oak.plugins.name.Namespaces.safeGet;
 
 import java.util.Locale;
 import java.util.Set;
 
 import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Iterables;
+
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.PropertyState;
-import org.apache.jackrabbit.oak.plugins.tree.factories.TreeFactory;
 import org.apache.jackrabbit.oak.spi.commit.DefaultEditor;
 import org.apache.jackrabbit.oak.spi.commit.Editor;
 import org.apache.jackrabbit.oak.spi.namespace.NamespaceConstants;
@@ -89,8 +89,7 @@ class NamespaceEditor extends DefaultEdi
     }
 
     private static boolean containsValue(NodeState namespaces, String value) {
-        return 
safeGet(TreeFactory.createReadOnlyTree(namespaces.getChildNode(REP_NSDATA)),
-                REP_URIS).contains(value);
+        return 
Iterables.contains(namespaces.getChildNode(REP_NSDATA).getStrings(REP_URIS), 
value);
     }
 
     @Override
@@ -130,7 +129,7 @@ class NamespaceEditor extends DefaultEdi
         if (!modified) {
             return;
         }
-        Namespaces.buildIndexNode(builder.child(JCR_SYSTEM).child(
+        Namespaces.buildIndexNode(builder.getChildNode(JCR_SYSTEM).child(
                 REP_NAMESPACES));
     }
 

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/Namespaces.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/Namespaces.java?rev=1833118&r1=1833117&r2=1833118&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/Namespaces.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/name/Namespaces.java
 Thu Jun  7 12:24:25 2018
@@ -107,6 +107,9 @@ public class Namespaces implements Names
         namespaces.setProperty(PREFIX_SV, NAMESPACE_SV);
         namespaces.setProperty(PREFIX_REP, NAMESPACE_REP);
 
+        // Oak Namespace
+        namespaces.setProperty(PREFIX_OAK, NAMESPACE_OAK);
+
         return namespaces;
     }
 


Reply via email to