Author: cziegeler
Date: Thu Jun 1 08:03:21 2017
New Revision: 1797154
URL: http://svn.apache.org/viewvc?rev=1797154&view=rev
Log:
Add support for arrays in configuration
Modified:
sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/json/FeatureJSONWriter.java
Modified:
sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/json/FeatureJSONWriter.java
URL:
http://svn.apache.org/viewvc/sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/json/FeatureJSONWriter.java?rev=1797154&r1=1797153&r2=1797154&view=diff
==============================================================================
---
sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/json/FeatureJSONWriter.java
(original)
+++
sling/whiteboard/cziegeler/feature/src/main/java/org/apache/sling/feature/json/FeatureJSONWriter.java
Thu Jun 1 08:03:21 2017
@@ -19,6 +19,7 @@ package org.apache.sling.feature.json;
import java.io.IOException;
import java.io.StringReader;
import java.io.Writer;
+import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
@@ -258,9 +259,17 @@ public class FeatureJSONWriter {
final Object val = cfg.getProperties().get(name);
if ( val instanceof String ) {
- w.write(key, (String)val);
+ w.write(name, (String)val);
} else if ( val instanceof Boolean ) {
- w.write(key, (Boolean)val);
+ w.write(name, (Boolean)val);
+ } else if ( val.getClass().isArray() ) {
+ w.writeStartArray(name);
+ for(int i=0; i<Array.getLength(val);i++ ) {
+ final Object obj = Array.get(val, i);
+ // TODO - full type conversion, we have to
reverse all types supported by the configurator
+ w.write(obj.toString());
+ }
+ w.writeEnd();
} else {
// TODO - full type conversion, we have to reverse
all types supported by the configurator
w.write(name, val.toString());