in SdmxStructureParser/src/main/java/org/sdmxsource/sdmx/structureparser/engine/writing/StructureWriterEngineJsonV1.java [98:186]
public void writeStructures(SdmxBeans sdmxObjects) {
try {
if (sdmxObjects == null)
throw new IllegalArgumentException("sdmxObjects");
this.jsonGenerator.writeStartObject();
StructureHeaderType headerType = this.writeDocumentHeader(sdmxObjects);
LOG.debug("{data}");
this.jsonGenerator.writeObjectFieldStart("data");
if (sdmxObjects.getDataflows().size() > 0) {
LOG.debug("{dataflows}");
this.jsonGenerator.writeArrayFieldStart("dataflows");
for (DataflowBean dataflow : sdmxObjects.getDataflows())
this.writeDataflow(dataflow);
LOG.debug("{/dataflows}");
this.jsonGenerator.writeEndArray();
}
if (sdmxObjects.getAgenciesSchemes().size() > 0) {
LOG.debug("{agencySchemes}");
this.jsonGenerator.writeArrayFieldStart("agencySchemes");
for (AgencySchemeBean agenciesScheme : sdmxObjects.getAgenciesSchemes())
this.writeAgencyScheme(agenciesScheme);
LOG.debug("{/agencySchemes}");
this.jsonGenerator.writeEndArray();
}
if (sdmxObjects.getCategorySchemes().size() > 0) {
LOG.debug("{categorySchemes}");
this.jsonGenerator.writeArrayFieldStart("categorySchemes");
for (CategorySchemeBean categoryScheme : sdmxObjects.getCategorySchemes())
this.writeCategoryScheme(categoryScheme);
LOG.debug("{/categorySchemes}");
this.jsonGenerator.writeEndArray();
}
if (sdmxObjects.getCategorisations().size() > 0) {
LOG.debug("{categorisations}");
this.jsonGenerator.writeArrayFieldStart("categorisations");
for (CategorisationBean categorisation : sdmxObjects.getCategorisations())
this.writeCategorisation(categorisation);
LOG.debug("{/categorisations}");
this.jsonGenerator.writeEndArray();
}
if (sdmxObjects.getConceptSchemes().size() > 0) {
LOG.debug("{conceptSchemes}");
this.jsonGenerator.writeArrayFieldStart("conceptSchemes");
for (ConceptSchemeBean conceptScheme : sdmxObjects.getConceptSchemes())
this.writeConceptScheme(conceptScheme);
LOG.debug("{/conceptSchemes}");
this.jsonGenerator.writeEndArray();
}
if (sdmxObjects.getCodelists().size() > 0) {
LOG.debug("{codelists}");
this.jsonGenerator.writeArrayFieldStart("codelists");
for (CodelistBean codelist : sdmxObjects.getCodelists())
this.writeCodeList(codelist);
LOG.debug("{/codelists}");
this.jsonGenerator.writeEndArray();
}
if (sdmxObjects.getHierarchicalCodelists().size() > 0) {
LOG.debug("{hierarchicalCodelists}");
this.jsonGenerator.writeArrayFieldStart("hierarchicalCodelists");
for (HierarchicalCodelistBean hierarchicalCodelist : sdmxObjects.getHierarchicalCodelists())
this.writeHierarchicalCodeList(hierarchicalCodelist);
LOG.debug("{/hierarchicalCodelists}");
this.jsonGenerator.writeEndArray();
}
if (sdmxObjects.getDataStructures().size() > 0) {
LOG.debug("{dataStructures}");
this.jsonGenerator.writeArrayFieldStart("dataStructures");
for (DataStructureBean dataStructure : sdmxObjects.getDataStructures())
this.writeDataStructure(dataStructure);
LOG.debug("{/dataStructures}");
this.jsonGenerator.writeEndArray();
}
if (sdmxObjects.getContentConstraintBeans().size() > 0) {
LOG.debug("{contentConstraints}");
this.jsonGenerator.writeArrayFieldStart("contentConstraints");
for (ContentConstraintBean constraintObject : sdmxObjects.getContentConstraintBeans())
this.writeContentConstraint(constraintObject);
LOG.debug("{/contentConstraints}");
this.jsonGenerator.writeEndArray();
}
LOG.debug("{/data}");
this.jsonGenerator.writeEndObject();
this.writeMetaTag(sdmxObjects, headerType);
this.jsonGenerator.flush();
this.jsonGenerator.close();
} catch (IOException e) {
throw new IllegalStateException(e);
}
}