code: public static void generate(OutputStream dest, AceDataset set,
        boolean closeStream) throws IOException {
      JsonGenerator g = JsonFactoryImpl.INSTANCE.getGenerator(dest);
      g.writeStartObject();
      g.writeArrayFieldStart("weathers");
      g.flush();
      Iterator<IAceBaseComponent> i;
      List<IAceBaseComponent> c = set.getWeatherComponents();
      i = c.iterator();
      writeBlock(dest, i);
      g.writeEndArray();
      g.writeArrayFieldStart("soils");
      g.flush();
      c = set.getSoilComponents();
      i = c.iterator();
      writeBlock(dest, i);
      g.writeEndArray();
      g.writeArrayFieldStart("experiments");
      g.flush();
      c = set.getExperimentComponents();
      i = c.iterator();
      writeBlock(dest, i);
      g.writeEndArray();
      g.writeEndObject();
      g.close();
      if (closeStream) {
        dest.close();
      }
    }
docs: Write a dataset to an {@link OutputStream} (uncompressed).
  <p>
  This method writes the uncompressed JSON to an OutputStream.
  
  @param dest Destination {@link OutputStream}
  @param set  {@link AceDataset} to write.
  @param closeStream close stream after writing.
  @throws IOException if there is an I/O error