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;
}