Return-Path: Delivered-To: apmail-incubator-sling-commits-archive@locus.apache.org Received: (qmail 61627 invoked from network); 19 Sep 2008 13:06:28 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 19 Sep 2008 13:06:28 -0000 Received: (qmail 62906 invoked by uid 500); 19 Sep 2008 13:06:25 -0000 Delivered-To: apmail-incubator-sling-commits-archive@incubator.apache.org Received: (qmail 62863 invoked by uid 500); 19 Sep 2008 13:06:25 -0000 Mailing-List: contact sling-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: sling-dev@incubator.apache.org Delivered-To: mailing list sling-commits@incubator.apache.org Received: (qmail 62853 invoked by uid 99); 19 Sep 2008 13:06:25 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Sep 2008 06:06:25 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Sep 2008 13:05:34 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 594F0238896F; Fri, 19 Sep 2008 06:05:37 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r697080 - in /incubator/sling/trunk/jcr/resource/src: main/resources/SLING-INF/nodetypes/folder.cnd test/java/org/apache/sling/jcr/resource/internal/JcrResourceResolverTest.java Date: Fri, 19 Sep 2008 13:05:37 -0000 To: sling-commits@incubator.apache.org From: fmeschbe@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080919130537.594F0238896F@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: fmeschbe Date: Fri Sep 19 06:05:36 2008 New Revision: 697080 URL: http://svn.apache.org/viewvc?rev=697080&view=rev Log: SLING-663 Change the required primary type of sling:Folder and sling:OrderedFolder to nt:base to enable creating any node below a sling:[Ordered]Folder. Still the default type is sling:[Ordered]Folder. Also added a simple testcase for this. Modified: incubator/sling/trunk/jcr/resource/src/main/resources/SLING-INF/nodetypes/folder.cnd incubator/sling/trunk/jcr/resource/src/test/java/org/apache/sling/jcr/resource/internal/JcrResourceResolverTest.java Modified: incubator/sling/trunk/jcr/resource/src/main/resources/SLING-INF/nodetypes/folder.cnd URL: http://svn.apache.org/viewvc/incubator/sling/trunk/jcr/resource/src/main/resources/SLING-INF/nodetypes/folder.cnd?rev=697080&r1=697079&r2=697080&view=diff ============================================================================== --- incubator/sling/trunk/jcr/resource/src/main/resources/SLING-INF/nodetypes/folder.cnd (original) +++ incubator/sling/trunk/jcr/resource/src/main/resources/SLING-INF/nodetypes/folder.cnd Fri Sep 19 06:05:36 2008 @@ -26,7 +26,7 @@ [sling:Folder] > nt:folder - * (undefined) multiple - * (undefined) - + * (nt:hierarchyNode) = sling:Folder version + + * (nt:base) = sling:Folder version //----------------------------------------------------------------------------- @@ -43,4 +43,4 @@ // (See SLING-663) [sling:OrderedFolder] > sling:Folder orderable - + * (nt:hierarchyNode) = sling:OrderedFolder version + + * (nt:base) = sling:OrderedFolder version Modified: incubator/sling/trunk/jcr/resource/src/test/java/org/apache/sling/jcr/resource/internal/JcrResourceResolverTest.java URL: http://svn.apache.org/viewvc/incubator/sling/trunk/jcr/resource/src/test/java/org/apache/sling/jcr/resource/internal/JcrResourceResolverTest.java?rev=697080&r1=697079&r2=697080&view=diff ============================================================================== --- incubator/sling/trunk/jcr/resource/src/test/java/org/apache/sling/jcr/resource/internal/JcrResourceResolverTest.java (original) +++ incubator/sling/trunk/jcr/resource/src/test/java/org/apache/sling/jcr/resource/internal/JcrResourceResolverTest.java Fri Sep 19 06:05:36 2008 @@ -27,6 +27,7 @@ import javax.jcr.NamespaceRegistry; import javax.jcr.Node; +import javax.jcr.RepositoryException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletInputStream; import javax.servlet.http.Cookie; @@ -212,6 +213,36 @@ testStarResourceHelper(path, "DELETE"); } + public void testSlingFolder() throws Exception { + + // create a folder + String folderPath = "folder"; + Node folder = rootNode.addNode(folderPath, "sling:Folder"); + rootNode.save(); + + // test default child node type + Node child = folder.addNode("child0"); + folder.save(); + assertEquals("sling:Folder", child.getPrimaryNodeType().getName()); + + // test explicit sling:Folder child + child = folder.addNode("child1", "sling:Folder"); + folder.save(); + assertEquals("sling:Folder", child.getPrimaryNodeType().getName()); + + // test explicit nt:folder child + child = folder.addNode("child2", "nt:folder"); + folder.save(); + assertEquals("nt:folder", child.getPrimaryNodeType().getName()); + + // test any child node -- use nt:unstructured here + child = folder.addNode("child3", "nt:unstructured"); + folder.save(); + assertEquals("nt:unstructured", child.getPrimaryNodeType().getName()); + } + + //---------- internal + private void testStarResourceHelper(final String path, final String method) { final Resource res = resResolver.resolve(new ResourceResolverTestRequest(path, method)); assertNotNull(res);