in src/main/java/org/apache/sling/servlets/get/impl/util/JsonObjectCreator.java [70:98]
public JsonObjectBuilder create() {
final JsonObjectBuilder obj = Json.createObjectBuilder();
if (valueMap.isEmpty()) {
final String value = resource.adaptTo(String.class);
if (value != null) {
obj.add(resource.getName(), value.toString());
} else {
final String[] values = resource.adaptTo(String[].class);
if (values != null) {
JsonArrayBuilder builder = Json.createArrayBuilder();
for (String v : values) {
builder.add(v);
}
obj.add(resource.getName(), builder);
}
}
return obj;
}
final Iterator<Map.Entry<String, Object>> props = valueMap.entrySet().iterator();
while (props.hasNext()) {
final Map.Entry<String, Object> prop = props.next();
createProperty(obj, prop.getKey(), prop.getValue());
}
return obj;
}