Return-Path: Delivered-To: apmail-jackrabbit-commits-archive@www.apache.org Received: (qmail 2703 invoked from network); 26 May 2006 01:10:45 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 26 May 2006 01:10:45 -0000 Received: (qmail 57393 invoked by uid 500); 26 May 2006 01:10:43 -0000 Delivered-To: apmail-jackrabbit-commits-archive@jackrabbit.apache.org Received: (qmail 57368 invoked by uid 500); 26 May 2006 01:10:43 -0000 Mailing-List: contact commits-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@jackrabbit.apache.org Delivered-To: mailing list commits@jackrabbit.apache.org Received: (qmail 57359 invoked by uid 99); 26 May 2006 01:10:43 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 25 May 2006 18:10:43 -0700 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [140.211.166.113] (HELO eris.apache.org) (140.211.166.113) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 25 May 2006 18:10:42 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 8D6A51A983A; Thu, 25 May 2006 18:10:22 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r409533 - in /jackrabbit/branches/1.0/jackrabbit/src: main/java/org/apache/jackrabbit/core/xml/ test/java/org/apache/jackrabbit/core/xml/ Date: Fri, 26 May 2006 01:10:22 -0000 To: commits@jackrabbit.apache.org From: jukka@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20060526011022.8D6A51A983A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: jukka Date: Thu May 25 18:10:21 2006 New Revision: 409533 URL: http://svn.apache.org/viewvc?rev=409533&view=rev Log: 1.0: Merged revisions 390669 and 390700: JCR-369 Added: jackrabbit/branches/1.0/jackrabbit/src/test/java/org/apache/jackrabbit/core/xml/ - copied from r390669, jackrabbit/trunk/jackrabbit/src/test/java/org/apache/jackrabbit/core/xml/ jackrabbit/branches/1.0/jackrabbit/src/test/java/org/apache/jackrabbit/core/xml/DocumentViewTest.java - copied unchanged from r390669, jackrabbit/trunk/jackrabbit/src/test/java/org/apache/jackrabbit/core/xml/DocumentViewTest.java jackrabbit/branches/1.0/jackrabbit/src/test/java/org/apache/jackrabbit/core/xml/TestAll.java - copied unchanged from r390669, jackrabbit/trunk/jackrabbit/src/test/java/org/apache/jackrabbit/core/xml/TestAll.java Modified: jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/xml/DocViewImportHandler.java Modified: jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/xml/DocViewImportHandler.java URL: http://svn.apache.org/viewvc/jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/xml/DocViewImportHandler.java?rev=409533&r1=409532&r2=409533&view=diff ============================================================================== --- jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/xml/DocViewImportHandler.java (original) +++ jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/xml/DocViewImportHandler.java Thu May 25 18:10:21 2006 @@ -210,15 +210,7 @@ } } else if (propName.equals(QName.JCR_MIXINTYPES)) { // jcr:mixinTypes - if (attrValue.length() > 0) { - try { - mixinTypes = - new QName[]{QName.fromJCRName(attrValue, nsContext)}; - } catch (NameException be) { - throw new SAXException("illegal jcr:mixinTypes value: " - + attrValue, be); - } - } + mixinTypes = parseNames(attrValue); } else if (propName.equals(QName.JCR_UUID)) { // jcr:uuid if (attrValue.length() > 0) { @@ -241,6 +233,29 @@ } catch (RepositoryException re) { throw new SAXException(re); } + } + + /** + * Parses the given string as a list of JCR names. Any whitespace sequence + * is supported as a names separator instead of just a single space to + * be more liberal in what we accept. The current namespace context is + * used to convert the prefixed name strings to QNames. + * + * @param value string value + * @return the parsed names + * @throws SAXException if an invalid name was encountered + */ + private QName[] parseNames(String value) throws SAXException { + String[] names = value.split("\\p{Space}+"); + QName[] qnames = new QName[names.length]; + for (int i = 0; i < names.length; i++) { + try { + qnames[i] = nsContext.getQName(names[i]); + } catch (NameException ne) { + throw new SAXException("Invalid name: " + names[i], ne); + } + } + return qnames; } /**