boolean isEditable=(Boolean)(en.getMethod("isEditable")).invoke(v);
String valueDescription=(String) (en.getMethod("getValueDescription")).invoke(v);
Class type = (Class) en.getMethod("getType").invoke(v);
String subsection = key.substring(0, key.indexOf('.'));
if (!lastSection.equals(subsection)) {
if (gen.getOutputContext().inArray()) gen.writeEndArray();
gen.writeFieldName(subsection); // "sectionName":
gen.writeStartArray(); // [
lastSection = subsection;
}
boolean isOverridden = (Boolean)(en.getMethod("isOverridden")).invoke(v);