You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by kn...@apache.org on 2009/05/22 01:11:42 UTC

svn commit: r777313 [2/5] - in /jackrabbit/sandbox/JCR-1456: jackrabbit-core/src/main/java/org/apache/jackrabbit/core/ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/config/ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/lock/ jackr...

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/XATest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/XATest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/XATest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/XATest.java Thu May 21 23:11:22 2009
@@ -29,6 +29,7 @@
 import javax.jcr.version.VersionException;
 import javax.jcr.version.Version;
 import javax.jcr.lock.Lock;
+import javax.jcr.lock.LockException;
 import javax.transaction.UserTransaction;
 import javax.transaction.RollbackException;
 import java.util.StringTokenizer;
@@ -787,6 +788,48 @@
     }
 
     /**
+     * Test locking and unlocking behavior in transaction
+     * @throws Exception
+     */
+    public void testLockUnlockCommit() throws Exception {
+        Session other = helper.getSuperuserSession();
+        try {
+            // add node that is both lockable and referenceable, save
+            Node n = testRootNode.addNode(nodeName1);
+            n.addMixin(mixLockable);
+            n.addMixin(mixReferenceable);
+            testRootNode.save();
+
+            // reference node in second session
+            Node nOther = other.getNodeByUUID(n.getUUID());
+
+            // verify node is not locked in either session
+            assertFalse("Node not locked in session 1", n.isLocked());
+            assertFalse("Node not locked in session 2", nOther.isLocked());
+
+            // get user transaction object, start and lock node
+            UserTransaction utx = new UserTransactionImpl(superuser);
+            utx.begin();
+            n.lock(false, true);
+
+            // verify node is locked in first session only
+            assertTrue("Node locked in session 1", n.isLocked());
+            assertFalse("Node not locked in session 2", nOther.isLocked());
+
+            n.unlock();
+            // commit in first session
+            utx.commit();
+
+            // verify node is locked in both sessions
+            assertFalse("Node locked in session 1", n.isLocked());
+            assertFalse("Node locked in session 2", nOther.isLocked());
+        } finally {
+            // logout
+            other.logout();
+        }
+    }
+
+    /**
      * Test locking a node in one session. Verify that node is not locked
      * in session after rollback.
      * @throws Exception
@@ -920,7 +963,78 @@
         assertTrue(nOther2.isLocked());
         
         utx.commit();
+    
+    }
+
+    /**
+     * Test add and remove lock tokens in a transaction 
+     * @throws Exception
+     */
+    public void testAddRemoveLockToken() throws Exception {
+        // create new node and lock it
+        UserTransaction utx = new UserTransactionImpl(superuser);
+        utx.begin();
+
+        // add node that is both lockable and referenceable, save
+        Node rootNode = superuser.getRootNode(); 
+        Node n = rootNode.addNode(nodeName1);
+        n.addMixin(mixLockable);
+        n.addMixin(mixReferenceable);
+        rootNode.save();
+
+        String uuid = n.getUUID();
+        
+        // lock this new node
+        Lock lock = n.lock(true, false);
+        String lockToken = lock.getLockToken();
+        
+        // assert: session must get a non-null lock token
+        assertNotNull("session must get a non-null lock token", lockToken);
+
+        // assert: session must hold lock token
+        assertTrue("session must hold lock token", containsLockToken(superuser, lockToken));
+
+        superuser.removeLockToken(lockToken);
+        assertNull("session must get a null lock token", lock.getLockToken());
+        
+        // commit
+        utx.commit();
+        
+        // refresh Lock Info
+        lock = n.getLock();
+
+        assertNull("session must get a null lock token", lock.getLockToken());
 
+        Session other = helper.getSuperuserSession();
+        // start new Transaction and try to add lock token
+        utx = new UserTransactionImpl(other);
+        utx.begin();
+        
+        Node otherNode = other.getNodeByUUID(uuid); 
+        assertTrue("Node not locked", otherNode.isLocked());
+        try {
+            otherNode.setProperty(propertyName1, "foo");
+            fail("Lock exception should be thrown");
+        } catch (LockException e) {
+            // expected
+        }
+        
+        // add lock token
+        other.addLockToken(lockToken);
+        
+        // refresh Lock Info
+        lock = otherNode.getLock();
+
+        // assert: session must hold lock token
+        assertTrue("session must hold lock token", containsLockToken(other, lock.getLockToken()));        
+        
+        otherNode.unlock();
+        
+        assertFalse("Node is locked", otherNode.isLocked());
+        
+        otherNode.setProperty(propertyName1, "foo");
+        other.save();
+        utx.commit();
     }
 
     /**
@@ -1628,4 +1742,18 @@
 
         utx.commit();
     }
+    
+    /**
+     * Return a flag indicating whether the indicated session contains
+     * a specific lock token
+     */
+    private boolean containsLockToken(Session session, String lockToken) {
+        String[] lt = session.getLockTokens();
+        for (int i = 0; i < lt.length; i++) {
+            if (lt[i].equals(lockToken)) {
+                return true;
+            }
+        }
+        return false;
+    }    
 }

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/config/RepositoryConfigTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/config/RepositoryConfigTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/config/RepositoryConfigTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/config/RepositoryConfigTest.java Thu May 21 23:11:22 2009
@@ -16,16 +16,16 @@
  */
 package org.apache.jackrabbit.core.config;
 
-import junit.framework.TestCase;
+ import junit.framework.TestCase;
 import org.xml.sax.InputSource;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.input.ClosedInputStream;
 import org.apache.jackrabbit.core.security.authorization.WorkspaceAccessManager;
 
 import java.io.File;
 import java.io.FileInputStream;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.OutputStream;
 import java.net.URI;
 import java.net.URISyntaxException;
 
@@ -34,54 +34,58 @@
  */
 public class RepositoryConfigTest extends TestCase {
 
-    private static final String REPOSITORY_XML = "target/repository_for_test.xml";
-    private static final String REPOSITORY_HOME = "target/repository_for_test";
+    private static final File DIR =
+        new File("target", "RepositoryConfigTest");
 
-    private static void deleteAll(File file) {
-        if (file.exists()) {
-            if (file.isDirectory()) {
-                File[] children = file.listFiles();
-                for (int i = 0; i < children.length; i++) {
-                    deleteAll(children[i]);
-                }
-            }
-            file.delete();
-        }
-    }
+    private static final File XML =
+        new File(DIR, "repository.xml");
+
+    private RepositoryConfig config;
 
     /**
      * Sets up the test case by creating the repository home directory
      * and copying the repository configuration file in place.
      */
     protected void setUp() throws Exception {
-        // Create the repository directory
-        File home = new File(REPOSITORY_HOME);
-        home.mkdirs();
-
-        // Copy the repository configuration file in place
-        ClassLoader loader = getClass().getClassLoader();
-        InputStream input = loader.getResourceAsStream("org/apache/jackrabbit/core/repository.xml");
-        try {
-            OutputStream output = new FileOutputStream(REPOSITORY_XML);
-            try {
-                int n;
-                byte[] buffer = new byte[1024];
-                while ((n = input.read(buffer)) != -1) {
-                    output.write(buffer, 0, n);
-                }
-            } finally {
-                output.close();
-            }
-        } finally {
-            input.close();
-        }
+        config = RepositoryConfig.install(DIR);
     }
 
     protected void tearDown() {
-        File home = new File(REPOSITORY_HOME);
-        deleteAll(home);
-        File config = new File(REPOSITORY_XML);
-        config.delete();
+        FileUtils.deleteQuietly(DIR);
+    }
+
+    public void testCreateWithRepositoryDirectory() {
+        try {
+            RepositoryConfig.create(DIR);
+        } catch (ConfigurationException e) {
+            fail("Valid repository directory");
+        }
+
+        try {
+            RepositoryConfig.create(new File(DIR, "invalid-repo-dir"));
+            fail("Invalid repository directory");
+        } catch (ConfigurationException e) {
+        }
+    }
+
+    public void testCreateWithRepositoryConfigAndDirectory() {
+        try {
+            RepositoryConfig.create(XML, DIR);
+        } catch (ConfigurationException e) {
+            fail("Valid repository configuration and directory");
+        }
+
+        try {
+            RepositoryConfig.create(XML, new File(DIR, "invalid-repo-dir"));
+            fail("Invalid repository directory");
+        } catch (ConfigurationException e) {
+        }
+
+        try {
+            RepositoryConfig.create(new File(DIR, "invalid.xml"), DIR);
+            fail("Invalid repository configuration");
+        } catch (ConfigurationException e) {
+        }
     }
 
     /**
@@ -89,12 +93,15 @@
      */
     public void testRepositoryConfigCreateWithFileName() {
         try {
-            RepositoryConfig.create(REPOSITORY_XML, REPOSITORY_HOME);
+            RepositoryConfig.create(XML.getPath(), DIR.getPath());
         } catch (ConfigurationException e) {
             fail("Valid configuration file name");
         }
+
         try {
-            RepositoryConfig.create("invalid-config-file", REPOSITORY_HOME);
+            RepositoryConfig.create(
+                    new File(DIR, "invalid-config-file.xml").getPath(),
+                    DIR.getPath());
             fail("Invalid configuration file name");
         } catch (ConfigurationException e) {
         }
@@ -105,14 +112,23 @@
      */
     public void testRepositoryConfigCreateWithURI() throws URISyntaxException {
         try {
-            URI uri = new File(REPOSITORY_XML).toURI();
-            RepositoryConfig.create(uri, REPOSITORY_HOME);
+            RepositoryConfig.create(XML.toURI(), DIR.getPath());
         } catch (ConfigurationException e) {
             fail("Valid configuration URI");
         }
+
+        try {
+            RepositoryConfig.create(
+                    new File(DIR, "invalid-config-file.xml").toURI(),
+                    DIR.getPath());
+            fail("Invalid configuration URI");
+        } catch (ConfigurationException e) {
+        }
+
         try {
-            URI uri = new URI("invalid://config/uri");
-            RepositoryConfig.create(uri, REPOSITORY_HOME);
+            RepositoryConfig.create(
+                    new URI("invalid://config/uri"),
+                    DIR.getPath());
             fail("Invalid configuration URI");
         } catch (ConfigurationException e) {
         }
@@ -122,25 +138,33 @@
      * Tests that an input stream can be used for the configuration.
      */
     public void testRepositoryConfigCreateWithInputStream() throws IOException {
-        InputStream input = new FileInputStream(REPOSITORY_XML);
+        InputStream input = new FileInputStream(XML);
         try {
-            RepositoryConfig.create(input, REPOSITORY_HOME);
+            RepositoryConfig.create(input, DIR.getPath());
         } catch (ConfigurationException e) {
             fail("Valid configuration input stream");
         } finally {
             input.close();
         }
-        input = new InputStream() {
-            public int read() throws IOException {
-                throw new IOException("invalid input stream");
-            }
-        };
+
         try {
-            RepositoryConfig.create(input, REPOSITORY_HOME);
+            RepositoryConfig.create(
+                    new InputStream() {
+                        public int read() throws IOException {
+                            throw new IOException("invalid input stream");
+                        }
+                    },
+                    DIR.getPath());
+            fail("Invalid configuration input stream");
+        } catch (ConfigurationException e) {
+        }
+
+        try {
+            RepositoryConfig.create(
+                    new ClosedInputStream(),
+                    DIR.getPath());
             fail("Invalid configuration input stream");
         } catch (ConfigurationException e) {
-        } finally {
-            input.close();
         }
     }
 
@@ -149,16 +173,16 @@
      */
     public void testRepositoryConfigCreateWithInputSource() throws IOException {
         try {
-            URI uri = new File(REPOSITORY_XML).toURI();
-            InputSource source = new InputSource(uri.toString());
-            RepositoryConfig.create(source, REPOSITORY_HOME);
+            InputSource source = new InputSource(XML.toURI().toString());
+            RepositoryConfig.create(source, DIR.getPath());
         } catch (ConfigurationException e) {
             fail("Valid configuration input source with file URI");
         }
-        InputStream stream = new FileInputStream(REPOSITORY_XML);
+
+        InputStream stream = new FileInputStream(XML);
         try {
             InputSource source = new InputSource(stream);
-            RepositoryConfig.create(source, REPOSITORY_HOME);
+            RepositoryConfig.create(source, DIR.getPath());
         } catch (ConfigurationException e) {
             fail("Valid configuration input source with input stream");
         } finally {
@@ -170,18 +194,16 @@
      * Test that the repository configuration file is correctly parsed.
      */
     public void testRepositoryConfig() throws Exception {
-        RepositoryConfig config =
-            RepositoryConfig.create(REPOSITORY_XML, REPOSITORY_HOME);
-        assertEquals(REPOSITORY_HOME, config.getHomeDir());
+        assertEquals(DIR.getPath(), config.getHomeDir());
         assertEquals("default", config.getDefaultWorkspaceName());
         assertEquals(
-                new File(REPOSITORY_HOME, "workspaces").getPath(),
+                new File(DIR, "workspaces").getPath(),
                 new File(config.getWorkspacesConfigRootDir()).getPath());
-        assertEquals("Jackrabbit", config.getAppName());
         assertEquals("Jackrabbit", config.getSecurityConfig().getAppName());
 
         // SecurityManagerConfig
-        SecurityManagerConfig smc = config.getSecurityConfig().getSecurityManagerConfig();
+        SecurityManagerConfig smc =
+            config.getSecurityConfig().getSecurityManagerConfig();
         assertEquals(
                 "org.apache.jackrabbit.core.security.simple.SimpleSecurityManager",
                 smc.getClassName());
@@ -195,33 +217,30 @@
         }
 
         // AccessManagerConfig
-        AccessManagerConfig amc = config.getAccessManagerConfig();
-        amc = config.getSecurityConfig().getAccessManagerConfig();
+        AccessManagerConfig amc =
+            config.getSecurityConfig().getAccessManagerConfig();
         assertEquals(
                 "org.apache.jackrabbit.core.security.simple.SimpleAccessManager",
                 amc.getClassName());
         assertTrue(amc.getParameters().isEmpty());
 
         VersioningConfig vc = config.getVersioningConfig();
-        assertEquals(new File(REPOSITORY_HOME, "version"), vc.getHomeDir());
+        assertEquals(new File(DIR, "version"), vc.getHomeDir());
         assertEquals(
                 "org.apache.jackrabbit.core.persistence.bundle.DerbyPersistenceManager",
                 vc.getPersistenceManagerConfig().getClassName());
     }
 
     public void testInit() throws Exception {
-        RepositoryConfig.create(REPOSITORY_XML, REPOSITORY_HOME);
-        File workspaces_dir = new File(REPOSITORY_HOME, "workspaces");
+        File workspaces_dir = new File(DIR, "workspaces");
         File workspace_dir = new File(workspaces_dir, "default");
         File workspace_xml = new File(workspace_dir, "workspace.xml");
         assertTrue("Default workspace is created", workspace_xml.exists());
     }
 
     public void testCreateWorkspaceConfig() throws Exception {
-        RepositoryConfig config =
-            RepositoryConfig.create(REPOSITORY_XML, REPOSITORY_HOME);
-        config.createWorkspaceConfig("test-workspace", (StringBuffer)null);
-        File workspaces_dir = new File(REPOSITORY_HOME, "workspaces");
+        config.createWorkspaceConfig("test-workspace", (StringBuffer) null);
+        File workspaces_dir = new File(DIR, "workspaces");
         File workspace_dir = new File(workspaces_dir, "test-workspace");
         File workspace_xml = new File(workspace_dir, "workspace.xml");
         assertTrue(workspace_xml.exists());
@@ -229,9 +248,7 @@
 
     public void testCreateDuplicateWorkspaceConfig() throws Exception {
         try {
-            RepositoryConfig config =
-                RepositoryConfig.create(REPOSITORY_XML, REPOSITORY_HOME);
-            config.createWorkspaceConfig("default", (StringBuffer)null);
+            config.createWorkspaceConfig("default", (StringBuffer) null);
             fail("No exception thrown when creating a duplicate workspace");
         } catch (ConfigurationException e) {
             // test passed
@@ -247,10 +264,11 @@
 
         InputStream in = getClass().getResourceAsStream(
                 "/org/apache/jackrabbit/core/cluster/repository.xml");
-        RepositoryConfig config = RepositoryConfig.create(in, REPOSITORY_HOME);
+        RepositoryConfig config = RepositoryConfig.create(in, DIR.getPath());
 
         ClusterConfig clusterConfig = config.getClusterConfig();
         assertEquals(id, clusterConfig.getId());
         assertEquals(syncDelay, clusterConfig.getSyncDelay());
     }
+
 }

Propchange: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/repository/workspaces/default/indexing-configuration.xml
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May 21 23:11:22 2009
@@ -1 +1,2 @@
 /jackrabbit/branches/1.3/jackrabbit-core/src/test/repository/workspaces/indexing-test/indexing-configuration.xml:631261
+/jackrabbit/trunk/jackrabbit-core/src/test/repository/workspaces/default/indexing-configuration.xml:774918-777034

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/resources/org/apache/jackrabbit/core/nodetype/xml/nodetypes.dtd
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/resources/org/apache/jackrabbit/core/nodetype/xml/nodetypes.dtd?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/resources/org/apache/jackrabbit/core/nodetype/xml/nodetypes.dtd (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-core/src/test/resources/org/apache/jackrabbit/core/nodetype/xml/nodetypes.dtd Thu May 21 23:11:22 2009
@@ -33,7 +33,7 @@
         primaryItemName CDATA #REQUIRED
     >
     <!ELEMENT supertypes (supertype+)>
-    <!ELEMENT supertype (CDATA)>
+    <!ELEMENT supertype (#PCDATA)>
 
     <!ELEMENT propertyDefinition (valueConstraints?|defaultValues?)>
     <!ATTLIST propertyDefinition
@@ -57,9 +57,9 @@
     <!ENTITY OP_LE "{http://www.jcp.org/jcr/1.0}operatorLessThanOrEqualTo">
     <!ENTITY OP_LIKE "{http://www.jcp.org/jcr/1.0}operatorLike">
     <!ELEMENT valueConstraints (valueConstraint+)>
-    <!ELEMENT valueConstraint (CDATA)>
+    <!ELEMENT valueConstraint (#PCDATA)>
     <!ELEMENT defaultValues (defaultValue+)>
-    <!ELEMENT defaultValue (CDATA)>
+    <!ELEMENT defaultValue (#PCDATA)>
 
     <!ELEMENT childNodeDefinition (requiredPrimaryTypes)>
     <!ATTLIST childNodeDefinition
@@ -72,4 +72,4 @@
         sameNameSiblings (true|false) #REQUIRED
     >
     <!ELEMENT requiredPrimaryTypes (requiredPrimaryType+)>
-    <!ELEMENT requiredPrimaryType (CDATA)>
+    <!ELEMENT requiredPrimaryType (#PCDATA)>

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/util/XMLChar.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/util/XMLChar.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/util/XMLChar.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/util/XMLChar.java Thu May 21 23:11:22 2009
@@ -1,9 +1,10 @@
 /*
- * Copyright 1999-2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
  *
  *      http://www.apache.org/licenses/LICENSE-2.0
  *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/BaseValue.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/BaseValue.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/BaseValue.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/BaseValue.java Thu May 21 23:11:22 2009
@@ -37,12 +37,15 @@
  * @see StringValue
  * @see LongValue
  * @see DoubleValue
+ * @see DecimalValue
  * @see BooleanValue
  * @see DateValue
  * @see BinaryValue
  * @see NameValue
  * @see PathValue
+ * @see URIValue
  * @see ReferenceValue
+ * @see WeakReferenceValue
  */
 public abstract class BaseValue implements Value {
 
@@ -187,7 +190,6 @@
         setValueConsumed();
 
         try {
-            // TODO: Is this the correct way to handle BigDecimal conversion
             return new BigDecimal(getInternalString());
         } catch (NumberFormatException e) {
             throw new ValueFormatException("conversion to Decimal failed", e);

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/ValueFactoryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/ValueFactoryImpl.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/ValueFactoryImpl.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/ValueFactoryImpl.java Thu May 21 23:11:22 2009
@@ -92,7 +92,7 @@
      * {@inheritDoc}
      */
     public Value createValue(Node value) throws RepositoryException {
-        return new ReferenceValue(value);
+        return createValue(value, false);
     }
 
     /**
@@ -121,6 +121,9 @@
             case PropertyType.LONG:
                 val = LongValue.valueOf(value);
                 break;
+            case PropertyType.DECIMAL:
+                val = DecimalValue.valueOf(value);
+                break;
             case PropertyType.DATE:
                 val = DateValue.valueOf(value);
                 break;
@@ -130,9 +133,15 @@
             case PropertyType.PATH:
                 val = PathValue.valueOf(value);
                 break;
+            case PropertyType.URI:
+                val = URIValue.valueOf(value);
+                break;
             case PropertyType.REFERENCE:
                 val = ReferenceValue.valueOf(value);
                 break;
+            case PropertyType.WEAKREFERENCE:
+                val = WeakReferenceValue.valueOf(value);
+                break;
             case PropertyType.BINARY:
                 val = new BinaryValue(value);
                 break;
@@ -150,13 +159,23 @@
         throw new UnsupportedOperationException("JCR-2056");
     }
 
-    public Value createValue(BigDecimal arg0) {
-        throw new UnsupportedOperationException("JCR-1609");
+    /**
+     * {@inheritDoc}
+     */
+    public Value createValue(BigDecimal value) {
+        return new DecimalValue(value);
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public Value createValue(Node node, boolean weak)
             throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("JCR-1609");
+        if (weak) {
+            return new WeakReferenceValue(node);
+        } else {
+            return new ReferenceValue(node);
+        }
     }
 
 }

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/ValueHelper.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/ValueHelper.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/ValueHelper.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/ValueHelper.java Thu May 21 23:11:22 2009
@@ -37,6 +37,7 @@
 import java.io.FilterInputStream;
 import java.io.OutputStream;
 import java.io.BufferedOutputStream;
+import java.net.URI;
 
 /**
  * The <code>ValueHelper</code> class provides several <code>Value</code>
@@ -245,7 +246,7 @@
     /**
      * Converts the given value to a value of the specified target type.
      * The conversion is performed according to the rules described in
-     * "6.2.6 Property Type Conversion" in the JSR 170 specification.
+     * "3.6.4 Property Type Conversion" in the JSR 283 specification.
      *
      * @param srcValue
      * @param targetType
@@ -336,6 +337,17 @@
                 }
                 break;
 
+            case PropertyType.DECIMAL:
+                // convert to DECIMAL
+                try {
+                    val = factory.createValue(srcValue.getDecimal());
+                } catch (RepositoryException re) {
+                    throw new ValueFormatException("conversion failed: "
+                            + PropertyType.nameFromValue(srcType) + " to "
+                            + PropertyType.nameFromValue(targetType), re);
+                }
+                break;
+
             case PropertyType.PATH:
                 // convert to PATH
                 switch (srcType) {
@@ -360,11 +372,35 @@
                         val = factory.createValue(path, targetType);
                         break;
 
+                    case PropertyType.URI:
+                        URI uri;
+                        try {
+                            uri = URI.create(srcValue.getString());
+                        } catch (RepositoryException re) {
+                            // should never happen
+                            throw new ValueFormatException("failed to convert source value to PATH value",
+                                    re);
+                        }
+                        if (uri.isAbsolute()) {
+                            // uri contains scheme...
+                            throw new ValueFormatException("failed to convert URI value to PATH value");
+                        }
+                        String p = uri.getPath();
+
+                        if (p.startsWith("./")) {
+                            p = p.substring(2);
+                        }
+
+                        val = factory.createValue(p, targetType);
+                        break;
+
                     case PropertyType.BOOLEAN:
                     case PropertyType.DATE:
                     case PropertyType.DOUBLE:
+                    case PropertyType.DECIMAL:
                     case PropertyType.LONG:
                     case PropertyType.REFERENCE:
+                    case PropertyType.WEAKREFERENCE:
                         throw new ValueFormatException("conversion failed: "
                                 + PropertyType.nameFromValue(srcType) + " to "
                                 + PropertyType.nameFromValue(targetType));
@@ -401,8 +437,10 @@
                     case PropertyType.BOOLEAN:
                     case PropertyType.DATE:
                     case PropertyType.DOUBLE:
+                    case PropertyType.DECIMAL:
                     case PropertyType.LONG:
                     case PropertyType.REFERENCE:
+                    case PropertyType.WEAKREFERENCE:
                         throw new ValueFormatException("conversion failed: "
                                 + PropertyType.nameFromValue(srcType) + " to "
                                 + PropertyType.nameFromValue(targetType));
@@ -422,6 +460,7 @@
 
                     case PropertyType.BINARY:
                     case PropertyType.STRING:
+                    case PropertyType.WEAKREFERENCE:
                         // try conversion via string
                         String uuid;
                         try {
@@ -438,6 +477,7 @@
                     case PropertyType.DATE:
                     case PropertyType.DOUBLE:
                     case PropertyType.LONG:
+                    case PropertyType.DECIMAL:
                     case PropertyType.PATH:
                     case PropertyType.NAME:
                         throw new ValueFormatException("conversion failed: "
@@ -449,6 +489,112 @@
                 }
                 break;
 
+            case PropertyType.WEAKREFERENCE:
+                // convert to WEAKREFERENCE
+                switch (srcType) {
+                    case PropertyType.WEAKREFERENCE:
+                        // no conversion needed, return original value
+                        // (redundant code, just here for the sake of clarity)
+                        return srcValue;
+
+                    case PropertyType.BINARY:
+                    case PropertyType.STRING:
+                    case PropertyType.REFERENCE:
+                        // try conversion via string
+                        String uuid;
+                        try {
+                            // get string value
+                            uuid = srcValue.getString();
+                        } catch (RepositoryException re) {
+                            // should never happen
+                            throw new ValueFormatException("failed to convert source value to WEAKREFERENCE value", re);
+                        }
+                        val = factory.createValue(uuid, targetType);
+                        break;
+
+                    case PropertyType.BOOLEAN:
+                    case PropertyType.DATE:
+                    case PropertyType.DOUBLE:
+                    case PropertyType.LONG:
+                    case PropertyType.DECIMAL:
+                    case PropertyType.PATH:
+                    case PropertyType.NAME:
+                        throw new ValueFormatException("conversion failed: "
+                                + PropertyType.nameFromValue(srcType) + " to "
+                                + PropertyType.nameFromValue(targetType));
+
+                    default:
+                        throw new IllegalArgumentException("not a valid type constant: " + srcType);
+                }
+                break;
+
+            case PropertyType.URI:
+                // convert to URI
+                switch (srcType) {
+                    case PropertyType.URI:
+                        // no conversion needed, return original value
+                        // (redundant code, just here for the sake of clarity)
+                        return srcValue;
+
+                    case PropertyType.BINARY:
+                    case PropertyType.STRING:
+                        // try conversion via string
+                        String uuid;
+                        try {
+                            // get string value
+                            uuid = srcValue.getString();
+                        } catch (RepositoryException re) {
+                            // should never happen
+                            throw new ValueFormatException("failed to convert source value to URI value", re);
+                        }
+                        val = factory.createValue(uuid, targetType);
+                        break;
+
+                    case PropertyType.NAME:
+                        String name;
+                        try {
+                            // get string value
+                            name = srcValue.getString();
+                        } catch (RepositoryException re) {
+                            // should never happen
+                            throw new ValueFormatException("failed to convert source value to URI value", re);
+                        }
+                        // prefix name with "./" (jsr 283 spec 3.6.4.8)
+                        val = factory.createValue("./" + name, targetType);
+                        break;
+
+                    case PropertyType.PATH:
+                        String path;
+                        try {
+                            // get string value
+                            path = srcValue.getString();
+                        } catch (RepositoryException re) {
+                            // should never happen
+                            throw new ValueFormatException("failed to convert source value to URI value", re);
+                        }
+                        if (!path.startsWith("/")) {
+                            // prefix non-absolute path with "./" (jsr 283 spec 3.6.4.9)
+                            path = "./" + path;
+                        }
+                        val = factory.createValue(path, targetType);
+                        break;
+
+                    case PropertyType.BOOLEAN:
+                    case PropertyType.DATE:
+                    case PropertyType.DOUBLE:
+                    case PropertyType.LONG:
+                    case PropertyType.DECIMAL:
+                    case PropertyType.REFERENCE:
+                    case PropertyType.WEAKREFERENCE:
+                        throw new ValueFormatException("conversion failed: "
+                                + PropertyType.nameFromValue(srcType) + " to "
+                                + PropertyType.nameFromValue(targetType));
+
+                    default:
+                        throw new IllegalArgumentException("not a valid type constant: " + srcType);
+                }
+                break;
+
             default:
                 throw new IllegalArgumentException("not a valid type constant: " + targetType);
         }
@@ -502,9 +648,15 @@
                     newVal = factory.createValue(srcValue.getLong());
                     break;
 
+                case PropertyType.DECIMAL:
+                    newVal = factory.createValue(srcValue.getDecimal());
+                    break;
+
                 case PropertyType.PATH:
                 case PropertyType.NAME:
                 case PropertyType.REFERENCE:
+                case PropertyType.WEAKREFERENCE:
+                case PropertyType.URI:
                     newVal = factory.createValue(srcValue.getString(), srcValue.getType());
                     break;
 

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/io/DefaultHandler.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/io/DefaultHandler.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/io/DefaultHandler.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/io/DefaultHandler.java Thu May 21 23:11:22 2009
@@ -308,7 +308,15 @@
                 }
             }
             if (contentNode == null) {
-                contentNode = parentNode.addNode(JcrConstants.JCR_CONTENT, getContentNodeType());
+                // JCR-2070: Use the predefined content node type only
+                // when the underlying repository allows it to be used
+                if (parentNode.getPrimaryNodeType().canAddChildNode(
+                        JcrConstants.JCR_CONTENT, getContentNodeType())) {
+                    contentNode = parentNode.addNode(
+                            JcrConstants.JCR_CONTENT, getContentNodeType());
+                } else {
+                    contentNode = parentNode.addNode(JcrConstants.JCR_CONTENT);
+                }
             }
         }
         return contentNode;

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/AbstractJCRTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/AbstractJCRTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/AbstractJCRTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/AbstractJCRTest.java Thu May 21 23:11:22 2009
@@ -490,7 +490,7 @@
      * Returns the value of the configuration property with specified
      * <code>name</code>. If the property does not exist <code>defaultValue</code> is
      * returned.
-     * <p/>
+     * <p>
      * Configuration properties are defined in the file:
      * <code>repositoryStubImpl.properties</code>.
      *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/ISO8601.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/ISO8601.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/ISO8601.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/ISO8601.java Thu May 21 23:11:22 2009
@@ -25,7 +25,7 @@
  * The <code>ISO8601</code> utility class provides helper methods
  * to deal with date/time formatting using a specific ISO8601-compliant
  * format (see <a href="http://www.w3.org/TR/NOTE-datetime">ISO 8601</a>).
- * <p/>
+ * <p>
  * The currently supported format is:
  * <pre>
  *   &plusmn;YYYY-MM-DDThh:mm:ss.SSSTZD

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/NotExecutableException.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/NotExecutableException.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/NotExecutableException.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/NotExecutableException.java Thu May 21 23:11:22 2009
@@ -22,7 +22,8 @@
  * a feature is optional.
  * <p>
  * A test method may simply declare this exception in its signature and throw
- * this exception at any point in the method.<br/>
+ * this exception at any point in the method.
+ * <p>
  * The TCK framework will take care that a test method throwing this exception
  * is not considered to be in error, but that the repository is unable to
  * execute this test.

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/RepositoryHelper.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/RepositoryHelper.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/RepositoryHelper.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/RepositoryHelper.java Thu May 21 23:11:22 2009
@@ -139,7 +139,7 @@
      * Returns the value of the configuration property with specified
      * <code>name</code>. If the property does not exist <code>null</code> is
      * returned.
-     * <p/>
+     * <p>
      * Configuration properties are defined in the file:
      * <code>repositoryStubImpl.properties</code>.
      *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/RepositoryStub.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/RepositoryStub.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/RepositoryStub.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/RepositoryStub.java Thu May 21 23:11:22 2009
@@ -35,7 +35,7 @@
 /**
  * The <code>RepositoryStub</code> is the entry point to the JCR Repository
  * for the TCK Test harness.
- * <p/>
+ * <p>
  * Implementors of the JCR specification need to provide an implementation
  * for the abstract methods defined in this class.
  */
@@ -154,7 +154,7 @@
     /**
      * Creates and/or returns the configured <code>RepositryStub</code>
      * implementation.
-     * <p/>
+     * <p>
      * The property file is located in the following sequence:
      * <ol>
      * <li>If the system property <code>-Djavax.jcr.tck.properties</code> is
@@ -242,7 +242,7 @@
     /**
      * Returns a <code>Credentials</code> object, that can be used to login
      * to the <code>Repository</code> returned by {@link #getRepository}.
-     * <p/>
+     * <p>
      * The <code>Credentials</code> returned has 'superuser' rights. That
      * is, the <code>Session</code> object returned by {@link Repository#login(Credentials)}
      * has read write access to the whole Content Repository.
@@ -257,12 +257,12 @@
     /**
      * Returns a <code>Credentials</code> object, that can be used to login
      * to the <code>Repository</code> returned by {@link #getRepository}.
-     * <p/>
+     * <p>
      * The <code>Credentials</code> returned has read/write rights. That
      * is, the <code>Session</code> object returned by {@link Repository#login(Credentials)}
      * has read write access to the <code>Node</code> configured in the
      * JCR TCK Interview.
-     * <p/>
+     * <p>
      * For details, see: JCR TCK User Guide.
      *
      * @return a <code>Credentials</code> object, that allows to login to the
@@ -275,12 +275,12 @@
     /**
      * Returns a <code>Credentials</code> object, that can be used to login
      * to the <code>Repository</code> returned by {@link #getRepository}.
-     * <p/>
+     * <p>
      * The <code>Credentials</code> returned must have read-only rights. That
      * is, the <code>Session</code> object returned by {@link Repository#login()}
      * has read-only access to the <code>Node</code> configured in the
      * JCR TCK Interview.
-     * <p/>
+     * <p>
      * For details, see: JCR TCK User Guide.
      *
      * @return a <code>Credentials</code> object, that allows to login to the

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/XMLChar.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/XMLChar.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/XMLChar.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/XMLChar.java Thu May 21 23:11:22 2009
@@ -1,9 +1,10 @@
 /*
- * Copyright 1999-2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
  *
  *      http://www.apache.org/licenses/LICENSE-2.0
  *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/AddNodeTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/AddNodeTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/AddNodeTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/AddNodeTest.java Thu May 21 23:11:22 2009
@@ -199,7 +199,7 @@
     /**
      * Creates a new node using {@link Node#addNode(String, String)}, then tries
      * to call {@link javax.jcr.Node#save()} on the new node.
-     * <br/><br/>
+     * <p>
      * This should throw an {@link RepositoryException}.
      */
     public void testAddNodeRepositoryExceptionSaveOnNewNode() throws RepositoryException {

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/DocumentViewImportTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/DocumentViewImportTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/DocumentViewImportTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/DocumentViewImportTest.java Thu May 21 23:11:22 2009
@@ -89,7 +89,7 @@
      * imports the document created with createSimpleDocument method and checks
      * the imported tree according the rules outlined in chapter 7.3.2 of the
      * specification.
-     * <p/>
+     * <p>
      * Additionally it checks the uuidBehaviour flag if the jcr:uuid property is
      * respected during import.
      *
@@ -116,7 +116,7 @@
      * IMPORT_UUID_CREATE_NEW. It imports the document created with
      * createSimpleDocument method and checks the imported tree according the
      * rules outlined in chapter 7.3.2 of the specification.
-     * <p/>
+     * <p>
      * Additionally it checks the uuidBehaviour flag if the jcr:uuid property is
      * respected during import.
      *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/ExportDocViewTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/ExportDocViewTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/ExportDocViewTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/ExportDocViewTest.java Thu May 21 23:11:22 2009
@@ -339,10 +339,10 @@
     /**
      * Compares the child tree of a given node against the child elements of a
      * given element. (chapter 6.4.2.1 points 2,3,4 of the JCR specification).
-     * <p/>
+     * <p>
      * Considered are the export constraints regarding nodes named jcr:xmldata
      * (chapter 6.4.2.3 of the JCR specification).
-     * <p/>
+     * <p>
      * Also the numbers of exported child elements is compared with the number
      * of child nodes.
      *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NamespaceRegistryTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NamespaceRegistryTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NamespaceRegistryTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NamespaceRegistryTest.java Thu May 21 23:11:22 2009
@@ -29,7 +29,7 @@
 /**
  * <code>NamespaceRegistryTest</code> tests whether the repository registers and
  * unregisters namespaces correctly. This is a level 2 feature.
- * <p/>
+ * <p>
  * NOTE: Implementations are free to not support unregistering. In other words:
  * Even a repository that supports namespaces may always legally throw an
  * exception when you try to unregister.

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeAddMixinTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeAddMixinTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeAddMixinTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeAddMixinTest.java Thu May 21 23:11:22 2009
@@ -107,7 +107,7 @@
     /**
      * Tests if <code>Node.addMixin(String mixinName)</code> throws a
      * <code>LockException</code> if <code>Node</code> is locked
-     * <p/>
+     * <p>
      * The test creates a node <code>nodeName1</code> of type
      * <code>testNodeType</code> under <code>testRoot</code> and locks the node
      * with the superuser session. Then the test tries to add a mixin to
@@ -170,7 +170,7 @@
     /**
      * Tests if <code>Node.addMixin(String mixinName)</code> throws a
      * <code>VersionException</code> if <code>Node</code> is checked-in.
-     * <p/>
+     * <p>
      * The test creates a node <code>nodeName1</code> of type
      * <code>testNodeType</code> under <code>testRoot</code> and checks it in.
      * Then the test tries to add a mixin to <code>nodeName1</code>.

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeItemIsModifiedTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeItemIsModifiedTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeItemIsModifiedTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeItemIsModifiedTest.java Thu May 21 23:11:22 2009
@@ -24,8 +24,9 @@
 
 /**
  * Test cases for {@link Item#isModified()} on a node.
- * <p/>
- * Configuration requirements:<br/>
+ * <p>
+ * Configuration requirements:
+ * <p>
  * The node at {@link #testRoot} must allow a child node of type
  * {@link #testNodeType} with name {@link #nodeName1}. The node type must
  * support a non-mandatory string property with name {@link #propertyName1}.

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeItemIsNewTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeItemIsNewTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeItemIsNewTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeItemIsNewTest.java Thu May 21 23:11:22 2009
@@ -24,8 +24,9 @@
 
 /**
  * Test cases for {@link Item#isNew()} on a node.
- * <p/>
- * Configuration requirements:<br/>
+ * <p>
+ * Configuration requirements:
+ * <p>
  * The node at {@link #testRoot} must allow a child node of type
  * {@link #testNodeType} with name {@link #nodeName1}.
  *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeOrderableChildNodesTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeOrderableChildNodesTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeOrderableChildNodesTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeOrderableChildNodesTest.java Thu May 21 23:11:22 2009
@@ -30,10 +30,10 @@
 /**
  * <code>NodeOrderableChildNodesTest</code> contains all node writing tests (LEVEL 2) that require a node
  * that allows child node ordering (tests therefore are optional).
- * <p/>
+ * <p>
  * If the repository does not support a node type with orderable child nodes
  * a {@link NotExecutableException} exception is thrown.
- * <p/>
+ * <p>
  * Prerequisites:
  * <ul>
  * <li><code>javax.jcr.tck.NodeOrderableChildNodesTest.nodetype2</code>Name of a
@@ -73,8 +73,9 @@
 
     /**
      * Tries to reorder child nodes using {@link Node#orderBefore(String, String)}
-     * with an invalid destination reference. <br/><br/> This should
-     * throw an {@link ItemNotFoundException}.
+     * with an invalid destination reference.
+     * <p>
+     * This should throw an {@link ItemNotFoundException}.
      */
     public void testOrderBeforeInvalidDest()
             throws RepositoryException, NotExecutableException {
@@ -93,8 +94,9 @@
 
     /**
      * Tries to reorder child nodes using {@link Node#orderBefore(String,
-            * String)}  with an invalid source reference. <br/><br/> This should throw
-     * an {@link ItemNotFoundException}.
+     * String)} with an invalid source reference.
+     * <p>
+     * This should throw an {@link ItemNotFoundException}.
      */
     public void testOrderBeforeInvalidSrc()
             throws RepositoryException, NotExecutableException {
@@ -113,7 +115,9 @@
 
     /**
      * Tries to reorder on a node using {@link Node#orderBefore(String, String)}
-     * that does not support child reordering. <br/><br/> This should throw and
+     * that does not support child reordering.
+     * <p>
+     * This should throw and
      * {@link UnsupportedRepositoryOperationException}. Prequisites: <ul>
      * <li>javax.jcr.tck.NodeOrderableChildNodesTest.testOrderBeforeUnsupportedRepositoryOperationException.nodetype2</li>
      * A valid node type that does not support child node ordering.</li>

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeReadMethodsTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeReadMethodsTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeReadMethodsTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeReadMethodsTest.java Thu May 21 23:11:22 2009
@@ -37,7 +37,7 @@
 /**
  * Tests the 'read' methods specified in the {@link javax.jcr.Node} interface on
  * a level 1 repository.
- * <p/>
+ * <p>
  * Most tests require at least one child node under the root node, otherwise a
  * {@link org.apache.jackrabbit.test.NotExecutableException} is thrown.
  *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeRemoveMixinTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeRemoveMixinTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeRemoveMixinTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeRemoveMixinTest.java Thu May 21 23:11:22 2009
@@ -130,7 +130,7 @@
     /**
      * Tests if <code>Node.removeMixin(String mixinName)</code> throws a
      * <code>LockException</code> if <code>Node</code> is locked.
-     * <p/>
+     * <p>
      * The test creates a node <code>nodeName1</code> of type
      * <code>testNodeType</code> under <code>testRoot</code>, adds a mixin and
      * then locks the node with the superuser session. Then the test tries to
@@ -196,7 +196,7 @@
     /**
      * Tests if <code>Node.removeMixin(String mixinName)</code> throws a
      * <code>VersionException</code> if <code>Node</code> is checked-in
-     * <p/>
+     * <p>
      * The test creates a node <code>nodeName1</code> of type
      * <code>testNodeType</code> under <code>testRoot</code>, adds a mixin and
      * then checks it in. Then the test tries to remove the added.

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeTest.java Thu May 21 23:11:22 2009
@@ -78,8 +78,9 @@
 
     /**
      * Calls {@link javax.jcr.Node#getCorrespondingNodePath(String )} with a non
-     * existing workspace. <br/><br/> This should throw an {@link
-     * javax.jcr.NoSuchWorkspaceException }.
+     * existing workspace.
+     * <p>
+     * This should throw an {@link javax.jcr.NoSuchWorkspaceException }.
      */
     public void testGetCorrespondingNodePathNoSuchWorkspaceException() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -162,8 +163,10 @@
 
     /**
      * Tries calling {@link javax.jcr.Node#update(String)} after node has
-     * changed in first workspace but not been saved yet. <br/><br/> This should
-     * throw and {@link javax.jcr.InvalidItemStateException}. <br/><br/>
+     * changed in first workspace but not been saved yet.
+     * <p>
+     * This should throw an {@link javax.jcr.InvalidItemStateException}.
+     * <p>
      * Prerequisites: <ul> <li><code>javax.jcr.tck.propertyname1</code> name of
      * a String property that can be modified in <code>javax.jcr.tck.nodetype</code>
      * for testing</li> </ul>
@@ -205,8 +208,9 @@
 
     /**
      * Tries to use {@link javax.jcr.Node#update(String)} with an invalid
-     * workspace. <br/><br/> This should throw an {@link
-     * javax.jcr.NoSuchWorkspaceException}.
+     * workspace.
+     * <p>
+     * This should throw an {@link javax.jcr.NoSuchWorkspaceException}.
      */
     public void testUpdateNoSuchWorkspaceException() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -229,7 +233,8 @@
     /**
      * Calls {@link javax.jcr.Node#update(String)} for a node that only exists
      * in current workspace. <br><br> In that case nothing should happen.
-     * <br/><br/>Prerequisites: <ul> <li><code>javax.jcr.tck.propertyname1</code>
+     * <p>
+     * Prerequisites: <ul> <li><code>javax.jcr.tck.propertyname1</code>
      * name of a String property that can be modified in
      * <code>javax.jcr.tck.nodetype</code> for testing</li> </ul>
      */
@@ -258,9 +263,12 @@
     /**
      * Checks if {@link javax.jcr.Node#update(String)} works properly by
      * creating the same node in two workspaces one with a child node the other
-     * with a property set. <br/><br/> Calling <code>update()</code> on the node
+     * with a property set.
+     * <p>
+     * Calling <code>update()</code> on the node
      * with properties, should remove the properties and add the child node.
-     * <br/><br/>Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
+     * <p>
+     * Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
      * must allow children of same nodetype. <li><code>javax.jcr.tck.propertyname1</code>
      * name of a String property that can be modified in
      * <code>javax.jcr.tck.nodetype</code> for testing</li> </ul>
@@ -305,8 +313,8 @@
     /**
      * Tries to add a node using {@link javax.jcr.Node#addNode(String)} where
      * node type can not be determined by parent (<code>nt:base</code> is used
-     * as parent nodetype). <br/><br/> This should throw a {@link
-     * javax.jcr.nodetype.ConstraintViolationException}.
+     * as parent nodetype). 
+     * <p>This should throw a {@link javax.jcr.nodetype.ConstraintViolationException}.
      */
     public void testAddNodeConstraintViolationExceptionUndefinedNodeType() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -325,9 +333,11 @@
 
     /**
      * Tries to add a node using {@link javax.jcr.Node#addNode(String)} as a
-     * child of a property.<br/> <br/> This should throw an {@link
-     * javax.jcr.nodetype.ConstraintViolationException}.
-     * <br/><br/>Prerequisites: <ul> <li><code>javax.jcr.tck.propertyname1</code>
+     * child of a property.
+     * <p>
+     * This should throw an {@link javax.jcr.nodetype.ConstraintViolationException}.
+     * <p>
+     * Prerequisites: <ul> <li><code>javax.jcr.tck.propertyname1</code>
      * name of a String property that can be set in <code>javax.jcr.tck.nodetype</code>
      * for testing</li> </ul>
      */
@@ -353,8 +363,11 @@
     /**
      * Tries to create a node using {@link javax.jcr.Node#addNode(String,
      * String)}  at a location where there is already a node with same name and
-     * the parent does not allow same name siblings. <br/><br/> This should
-     * throw an {@link javax.jcr.ItemExistsException }. <br/><br> Prerequisites:
+     * the parent does not allow same name siblings. 
+     * <p>
+     * This should throw an {@link javax.jcr.ItemExistsException}.
+     * <p>
+     * Prerequisites:
      * <ul> <li><code>javax.jcr.tck.NodeTest.testAddNodeItemExistsException.nodetype<code>
      * node type that does not allow same name siblings and allows to add child
      * nodes of the same type.</li> </ul>
@@ -384,8 +397,9 @@
 
     /**
      * Tries to add a node using {@link javax.jcr.Node#addNode(String)} to a non
-     * existing destination node. <br/><br/> This should throw an {@link
-     * javax.jcr.PathNotFoundException}.
+     * existing destination node.
+     * <p>
+     * This should throw an {@link javax.jcr.PathNotFoundException}.
      */
     public void testAddNodePathNotFoundException() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -402,8 +416,8 @@
 
     /**
      * Adds a new node using {@link javax.jcr.Node#addNode(String)} with an
-     * index for the new name. <br/><br/> This should throw an {@link
-     * RepositoryException}.
+     * index for the new name.
+     * <p>This should throw an {@link RepositoryException}.
      */
     public void testAddNodeRepositoryExceptionRelPathIndex() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -420,8 +434,9 @@
 
     /**
      * Creates a new node using {@link Node#addNode(String)}, then tries to call
-     * {@link javax.jcr.Node#save()} on the newly node. <br/><br/> This should
-     * throw an {@link RepositoryException}.
+     * {@link javax.jcr.Node#save()} on the newly node.
+     * <p>
+     * This should throw an {@link RepositoryException}.
      */
     public void testAddNodeRepositoryExceptionSaveOnNewNode() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -490,8 +505,11 @@
     /**
      * Creates a node with a mandatory child node using {@link
      * Node#addNode(String, String)}, saves on parent node then tries to delete
-     * the mandatory child node. <br/><br/> This should throw a {@link
-     * ConstraintViolationException}. <br/><br/>Prerequisites: <ul>
+     * the mandatory child node.
+     * <p>
+     * This should throw a {@link ConstraintViolationException}.
+     * <p>
+     * Prerequisites: <ul>
      * <li><code>javax.jcr.tck.NodeTest.testRemoveMandatoryNode.nodetype2</code>
      * a node type that has a mandatory child node</li> <li><code>javax.jcr.tck.NodeTest.testRemoveMandatoryNode.nodetype3</code>
      * nodetype of the mandatory child node</li> <li><code>javax.jcr.tck.NodeTest.testRemoveMandatoryNode.nodename3</code>
@@ -524,8 +542,9 @@
 
     /**
      * Removes a node using {@link javax.jcr.Node#remove()} with session 1,
-     * afterwards it tries the same with session 2. <br/><br/> This should throw
-     * an {@link InvalidItemStateException}.
+     * afterwards it tries the same with session 2. 
+     * <p>
+     * This should throw an {@link InvalidItemStateException}.
      */
     public void testRemoveInvalidItemStateException() throws RepositoryException {
 
@@ -620,7 +639,7 @@
     /**
      * Tests if <code>Node.remove()</code> does not throw a
      * <code>LockException</code> if <code>Node</code> is locked.
-     * <p/>
+     * <p>
      * The test creates a node <code>nodeName1</code> of type
      * <code>testNodeType</code> under <code>testRoot</code> and locks the node
      * with the superuser session. Then the test removes
@@ -668,7 +687,7 @@
     /**
      * Tests if <code>Node.remove()</code> throws a <code>LockException</code>
      * if the parent node of <code>Node</code> is locked.
-     * <p/>
+     * <p>
      * The test creates a node <code>nodeName1</code> of type
      * <code>testNodeType</code> under <code>testRoot</code>, adds a child node
      * <code>nodeName2</code> and locks it with the superuser session. Then the
@@ -725,7 +744,8 @@
 
     /**
      * Tests object identity, meaning two nodes objects accuired through the
-     * same session must have the same properties and states. <br/><br/>
+     * same session must have the same properties and states.
+     * <p>
      * Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code> must allow
      * children of same node type</li> <li><code>javax.jcr.tck.propertyname1</code>
      * name of a String property that can be set in <code>javax.jcr.tck.nodetype</code>
@@ -841,7 +861,8 @@
 
     /**
      * Tries to call {@link Node#refresh(boolean)}  on a deleted node.
-     * <br/><br/> This should throw an {@link InvalidItemStateException}.
+     * <p>
+     * This should throw an {@link InvalidItemStateException}.
      */
     public void testRefreshInvalidItemStateException() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -866,7 +887,8 @@
 
     /**
      * Checks if {@link javax.jcr.Node#refresh(boolean refresh)} works properly
-     * with <code>refresh</code> set to <code>false</code>.<br/> <br/>
+     * with <code>refresh</code> set to <code>false</code>.
+     * <p>
      * Procedure: <ul> <li>Creates two nodes with session 1</li> <li>Modifies
      * node 1 with session 1 by adding a child node</li> <li>Get node 2 with
      * session 2</li> <li>Modifies node 2 with session 2 by adding a child
@@ -874,7 +896,8 @@
      * javax.jcr.Node#save()}</li> <li>calls <code>Node.refresh(false)</code>
      * on root node in session 1</li> </ul> Session 1 changes should be cleared
      * and session 2 changes should now be visible to session 1.
-     * <br/><br/>Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
+     * <p>
+     * Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
      * must accept children of same nodetype</li> </ul>
      */
     public void testRefreshBooleanFalse() throws RepositoryException {
@@ -922,14 +945,17 @@
 
     /**
      * Checks if {@link javax.jcr.Node#refresh(boolean refresh)} works properly
-     * with <code>refresh</code> set to <code>true</code>.<br/> <br/>
+     * with <code>refresh</code> set to <code>true</code>.
+     * <p>
      * Procedure: <ul> <li>Creates two nodes with session 1</li> <li>Modifies
      * node 1 with session 1 by adding a child node</li> <li>Get node 2 with
      * session 2</li> <li>Modifies node 2 with session 2 by adding a child
      * node</li> <li>saves session 2 changes using {@link
      * javax.jcr.Node#save()}</li> <li>calls <code>Node.refresh(true)</code> on
      * root node in session 1</li> </ul> Session 1 changes and session 2
-     * changes now be visible to session 1. <br/><br/>Prerequisites: <ul>
+     * changes now be visible to session 1.
+     * <p>
+     * Prerequisites: <ul>
      * <li><code>javax.jcr.tck.nodetype</code> must accept children of same
      * nodetype</li> </ul>
      */
@@ -979,12 +1005,15 @@
 
     /**
      * Tries to save a node using {@link javax.jcr.Node#save()} that was already
-     * deleted by an other session.<br/> <br/> Procedure: <ul> <li>Creates a new
+     * deleted by an other session.
+     * <p>
+     * Procedure: <ul> <li>Creates a new
      * node with session 1, saves it, adds a child node.</li> <li>Access new
      * node with session 2,deletes the node, saves it.</li> <li>Session 1 tries
      * to save modifications using <code>Node.save()</code> on root node .</li>
      * </ul> This should throw an {@link javax.jcr.InvalidItemStateException}.
-     * <br/><br/>Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
+     * <p>
+     * Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
      * must accept children of same nodetype</li> </ul>
      */
     public void testSaveInvalidStateException() throws RepositoryException {
@@ -1026,7 +1055,7 @@
     /**
      * Tries to create and save a node using {@link javax.jcr.Node#save()} with
      * an mandatory property that is not set on saving time.
-     * <p/>
+     * <p>
      * Prerequisites: <ul> <li><code>javax.jcr.tck.Node.testSaveContstraintViolationException.nodetype2</code>
      * must reference a nodetype that has at least one property that is
      * mandatory but not autocreated</li> </ul>

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeUUIDTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeUUIDTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeUUIDTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/NodeUUIDTest.java Thu May 21 23:11:22 2009
@@ -92,7 +92,8 @@
     /**
      * Moves a referencable node using {@link javax.jcr.Session#move(String,
      * String)} with one session and saves afterward changes made with a second
-     * session to the moved node using {@link Node#save()}.<br/> <br/>
+     * session to the moved node using {@link Node#save()}.
+     * <p>
      * Procedure: <ul> <li>Creates node 1 and node 2 with session 1</li>
      * <li>Gets reference to node 1 using session 2</li> <li>Session 1 moves
      * node 1 under node 2, saves changes</li> <li>Session 2 modifes node 1,

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/PropertyItemIsModifiedTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/PropertyItemIsModifiedTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/PropertyItemIsModifiedTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/PropertyItemIsModifiedTest.java Thu May 21 23:11:22 2009
@@ -25,8 +25,9 @@
 
 /**
  * Test cases for {@link Item#isModified()} on a property.
- * <p/>
- * Configuration requirements:<br/>
+ * <p>
+ * Configuration requirements:
+ * <p>
  * The node at {@link #testRoot} must allow a child node of type
  * {@link #testNodeType} with name {@link #nodeName1}. The node type must
  * support a non-mandatory string property with name {@link #propertyName1}.

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/PropertyItemIsNewTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/PropertyItemIsNewTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/PropertyItemIsNewTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/PropertyItemIsNewTest.java Thu May 21 23:11:22 2009
@@ -25,8 +25,9 @@
 
 /**
  * Test cases for {@link Item#isNew()} on a property.
- * <p/>
- * Configuration requirements:<br/>
+ * <p>
+ * Configuration requirements:
+ * <p>
  * The node at {@link #testRoot} must allow a child node of type
  * {@link #testNodeType} with name {@link #nodeName1}. The node type must
  * support a non-mandatory string property with name {@link #propertyName1}.

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/SerializationTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/SerializationTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/SerializationTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/SerializationTest.java Thu May 21 23:11:22 2009
@@ -51,7 +51,7 @@
 /**
  * <code>SerializationTest</code> contains the test cases for the method
  * <code>Workspace.exportSysView()</code> and <code>Session.importSysView()</code>.
- * <p/>
+ * <p>
  * This class exports and re-imports the repository. The tests check for
  * differences between the original and the re-imported repository.
  *

Modified: jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/SessionTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/SessionTest.java?rev=777313&r1=777312&r2=777313&view=diff
==============================================================================
--- jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/SessionTest.java (original)
+++ jackrabbit/sandbox/JCR-1456/jackrabbit-jcr-tests/src/main/java/org/apache/jackrabbit/test/api/SessionTest.java Thu May 21 23:11:22 2009
@@ -43,9 +43,11 @@
 public class SessionTest extends AbstractJCRTest {
 
     /**
-     * Tries to move a node using <code>{@link javax.jcr.Session#move(String src, String dest)}
-     * </code> to a location where a node already exists with
-     * same name.<br/> <br/> Prerequisites:
+     * Tries to move a node using {@link javax.jcr.Session#move(String src, String dest)}
+     * to a location where a node already exists with
+     * same name.
+     * <p>
+     * Prerequisites:
      * <ul>
      * <li><code>javax.jcr.tck.SessionTest.testMoveItemExistsException.nodetype2</code>
      * must contain name of a nodetype that does not allow same name sibling
@@ -53,7 +55,9 @@
      * <li><code>javax.jcr.tck.SessionTest.testMoveItemExistsException.nodetype3</code>
      * must contain name of a valid nodetype that can be added as a child of
      * <code>nodetype2</code></li>
-     * </ul> This should throw an <code>{@link javax.jcr.ItemExistsException}</code>.
+     * </ul>
+     * <p>
+     * This should throw an {@link javax.jcr.ItemExistsException}.
      */
     public void testMoveItemExistsException() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -83,9 +87,10 @@
     }
 
     /**
-     * Calls <code>{@link javax.jcr.Session#move(String src, String dest)}</code>
-     * with invalid destination path.<br/> <br/> Should throw
-     * <code{@link javax.jcr.PathNotFoundException}</code>.
+     * Calls {@link javax.jcr.Session#move(String src, String dest)}
+     * with invalid destination path.
+     * <p>
+     * Should throw a {@link javax.jcr.PathNotFoundException}.
      */
     public void testMovePathNotFoundExceptionDestInvalid() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -109,9 +114,10 @@
     }
 
     /**
-     * Calls <code>{@link javax.jcr.Session#move(String src, String dest)} with
-     * invalid source path.<br/> <br/> Should throw an <code>{@link
-     * javax.jcr.PathNotFoundException}.
+     * Calls {@link javax.jcr.Session#move(String src, String dest)} with
+     * invalid source path.
+     * <p>
+     * Should throw a {@link javax.jcr.PathNotFoundException}.
      */
     public void testMovePathNotFoundExceptionSrcInvalid() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -133,9 +139,10 @@
     }
 
     /**
-     * Calls <code>{@link javax.jcr.Session#move(String src, String dest)}
-     * </code> with a destination path that has an index postfixed.<br/>
-     * <br/> This should throw an <code>{@link javax.jcr.RepositoryException}</code>.
+     * Calls {@link javax.jcr.Session#move(String src, String dest)}
+     * with a destination path that has an index postfixed.
+     * <p>
+     * This should throw a {@link javax.jcr.RepositoryException}.
      */
     public void testMoveRepositoryException() throws RepositoryException {
         // get default workspace test root node using superuser session
@@ -162,10 +169,12 @@
     }
 
     /**
-     * Moves a node using <code>{@link javax.jcr.Session#move(String src, String dest)}
-     * </code>, afterwards it tries to only save the old parent node.<br>
-     * <br> This should throw <code>{@link javax.jcr.nodetype.ConstraintViolationException}</code>.
-     * <br/><br/>Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
+     * Moves a node using {@link javax.jcr.Session#move(String src, String dest)},
+     * afterwards it tries to only save the old parent node.
+     * <p>
+     * This should throw {@link javax.jcr.nodetype.ConstraintViolationException}.
+     * <p>
+     * Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
      * must accept children of same nodetype</li> </ul>
      */
     public void testMoveConstraintViolationExceptionSrc() throws RepositoryException {
@@ -196,10 +205,13 @@
     }
 
     /**
-     * Moves a node using <code>{@link javax.jcr.Session#move(String src, String dest)}
-     * </code>, afterwards it tries to only save the destination parent
-     * node.<br> <br> This should throw <code>{@link javax.jcr.nodetype.ConstraintViolationException}</code>.
-     * <br/><br/>Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
+     * Moves a node using {@link javax.jcr.Session#move(String src, String dest)},
+     * afterwards it tries to only save the destination parent
+     * node.
+     * <p>
+     * This should throw a {@link javax.jcr.nodetype.ConstraintViolationException}.
+     * <p>
+     * Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
      * must accept children of same nodetype</li> </ul>
      */
     public void testMoveConstraintViolationExceptionDest() throws RepositoryException {
@@ -230,9 +242,10 @@
     }
 
     /**
-     * Calls <code>{@link javax.jcr.Session#move(String src, String dest)} where
-     * the parent node of src is locked.<br/> <br/> Should throw a <code>{@link
-     * LockException} immediately or on save.
+     * Calls {@link javax.jcr.Session#move(String src, String dest)} where
+     * the parent node of src is locked.
+     * <p>
+     * Should throw a {@link LockException} immediately or on save.
      */
     public void testMoveLockException()
         throws NotExecutableException, RepositoryException {
@@ -284,10 +297,11 @@
     }
 
     /**
-     * Checks if <code>{@link javax.jcr.Session#move(String src, String dest)}
-     * </code> works properly. To verify if node has been moved properly
+     * Checks if {@link javax.jcr.Session#move(String src, String dest)}
+     * works properly. To verify if node has been moved properly
      * it uses a second session to retrieve the moved node.
-     * <br/><br/>Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
+     * <p>
+     * Prerequisites: <ul> <li><code>javax.jcr.tck.nodetype</code>
      * must accept children of same nodetype</li> </ul>
      */
     public void testMoveNode() throws RepositoryException {
@@ -322,7 +336,9 @@
 
     /**
      * Checks if a newly created node gets properly saved using <code{@link
-     * javax.jcr.Session#save()}</code>.<br/> <br/> It creates a new node, saves
+     * javax.jcr.Session#save()}</code>.
+     * <p>
+     * It creates a new node, saves
      * it using <code>session.save()</code> then uses a different session to
      * verify if the node has been properly saved.
      */
@@ -348,10 +364,14 @@
 
     /**
      * Checks if a modified node gets properly saved using <code{@link
-     * javax.jcr.Session#save()}</code>.<br/> <br/> It creates a new node, saves
+     * javax.jcr.Session#save()}</code>.
+     * <p>
+     * It creates a new node, saves
      * it using <code>session.save()</code>, modifies the node by adding a child
      * node, saves again and finally verifies with a different session if
-     * changes have been stored properly.<br/> <br/> Prerequisites: <ul>
+     * changes have been stored properly.
+     * <p>
+     * Prerequisites: <ul>
      * <li><code>javax.jcr.tck.nodetype</code> must accept children of same
      * nodetype</li> </ul>
      */
@@ -386,7 +406,8 @@
 
     /**
      * Tries to create and save a node using {@link javax.jcr.Session#save()}
-     * with an mandatory property that is not set on saving time.<br/> <br/>
+     * with an mandatory property that is not set on saving time.
+     * <p>
      * Prerequisites: <ul> <li><code>javax.jcr.tck.SessionTest.testSaveContstraintViolationException.nodetype2</code>
      * must reference a nodetype that has one at least one property that is
      * mandatory but not autocreated</li> </ul>
@@ -409,11 +430,15 @@
 
     /**
      * Tries to save a node using {@link javax.jcr.Session#save()} that was
-     * already deleted by an other session.<br/> <br/> Procedure: <ul>
+     * already deleted by an other session.
+     * <p>
+     * Procedure: <ul>
      * <li>Creates a new node with session 1, saves it, adds a child node.</li>
      * <li>Access new node with session 2,deletes the node, saves it.</li>
      * <li>session 1 tries to save modifications .</li> </ul> This should throw
-     * an {@link javax.jcr.InvalidItemStateException}. <br/><br/>Prerequisites:
+     * an {@link javax.jcr.InvalidItemStateException}.
+     * <p>
+     * Prerequisites:
      * <ul> <li><code>javax.jcr.tck.nodetype</code> must accept children of same
      * nodetype</li> </ul>
      */
@@ -455,14 +480,17 @@
 
     /**
      * Checks if {@link javax.jcr.Session#refresh(boolean refresh)} works
-     * properly with <code>refresh</code> set to <code>false</code>.<br/> <br/>
+     * properly with <code>refresh</code> set to <code>false</code>.
+     * <p>
      * Procedure: <ul> <li>Creates two nodes with session 1</li> <li>Modifies
      * node 1 with session 1 by adding a child node</li> <li>Get node 2 with
      * session 2</li> <li>Modifies node 2 with session 2 by adding a child
      * node</li> <li>saves session 2 changes using {@link
      * javax.jcr.Session#save()}</li> <li>calls <code>Session.refresh(false)</code>
      * on session 1</li> </ul> Session 1 changes should be cleared and session 2
-     * changes should now be visible to session 1. <br/><br/>Prerequisites: <ul>
+     * changes should now be visible to session 1.
+     * <p>
+     * Prerequisites: <ul>
      * <li><code>javax.jcr.tck.nodetype</code> must accept children of same
      * nodetype</li> </ul>
      */
@@ -512,14 +540,17 @@
 
     /**
      * Checks if {@link javax.jcr.Session#refresh(boolean refresh)} works
-     * properly with <code>refresh</code> set to <code>true</code>.<br/> <br/>
+     * properly with <code>refresh</code> set to <code>true</code>.
+     * <p>
      * Procedure: <ul> <li>Creates two nodes with session 1</li> <li>Modifies
      * node 1 with session 1 by adding a child node</li> <li>Get node 2 with
      * session 2</li> <li>Modifies node 2 with session 2 by adding a child
      * node</li> <li>saves session 2 changes using {@link
      * javax.jcr.Session#save()}</li> <li>calls <code>Session.refresh(true)</code>
      * on session 1</li> </ul> Session 1 changes and session 2 changes now be
-     * visible to session 1. <br/><br/>Prerequisites: <ul>
+     * visible to session 1. 
+     * <p>
+     * Prerequisites: <ul>
      * <li><code>javax.jcr.tck.nodetype</code> must accept children of same
      * nodetype</li> </ul>
      */
@@ -569,7 +600,10 @@
 
     /**
      * Checks if {@link javax.jcr.Session#hasPendingChanges()}  works
-     * properly.<br/> <br/> Procedure:<br/> <ul> <li>Gets a session, checks
+     * properly.
+     * <p>
+     * Procedure:
+     * <ul> <li>Gets a session, checks
      * inital flag setting</li> <li>Adds a node, checks flag</li> <li>Saves on
      * session, checks flag</li> <li>Adds a property, checks flag</li> <li>Saves
      * on session, checks flag</li> <li>Adds a child node, checks flag</li>