Author: justin
Date: Fri Feb 19 02:46:55 2010
New Revision: 911681

URL: http://svn.apache.org/viewvc?rev=911681&view=rev
Log:
SLING-1395 - adding support for multi-valued properties

Modified:
    
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java
    
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/readers/JsonReader.java

Modified: 
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java?rev=911681&r1=911680&r2=911681&view=diff
==============================================================================
--- 
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java
 (original)
+++ 
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java
 Fri Feb 19 02:46:55 2010
@@ -388,7 +388,11 @@
             }
 
         } else {
-            node.setProperty(name, values, propertyType);
+            if (propertyType == PropertyType.UNDEFINED) {
+                node.setProperty(name, values);
+            } else {
+                node.setProperty(name, values, propertyType);
+            }
         }
     }
 

Modified: 
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/readers/JsonReader.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/readers/JsonReader.java?rev=911681&r1=911680&r2=911681&view=diff
==============================================================================
--- 
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/readers/JsonReader.java
 (original)
+++ 
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/readers/JsonReader.java
 Fri Feb 19 02:46:55 2010
@@ -92,6 +92,8 @@
     private static final Pattern jsonDate = 
Pattern.compile("^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}[-+]{1}[0-9]{2}[:]{0,1}[0-9]{2}$");
     private static final String REFERENCE = "jcr:reference:";
     private static final String PATH = "jcr:path:";
+    private static final String NAME = "jcr:name:";
+    private static final String URI = "jcr:uri:";
 
     private static final Set<String> ignoredNames = new HashSet<String>();
     static {
@@ -235,6 +237,8 @@
         } else if (object instanceof String) {
             if (name.startsWith(REFERENCE)) return PropertyType.REFERENCE;
             if (name.startsWith(PATH)) return PropertyType.PATH;
+            if (name.startsWith(NAME)) return PropertyType.NAME;
+            if (name.startsWith(URI)) return PropertyType.URI;
             if (jsonDate.matcher((String) object).matches()) return 
PropertyType.DATE;
         }
 
@@ -245,6 +249,8 @@
     protected String getName(String name) {
         if (name.startsWith(REFERENCE)) return 
name.substring(REFERENCE.length());
         if (name.startsWith(PATH)) return name.substring(PATH.length());
+        if (name.startsWith(NAME)) return name.substring(NAME.length());
+        if (name.startsWith(URI)) return name.substring(URI.length());
         return name;
     }
 


Reply via email to