private static JsonGenerator getJsonGenerator(OutputStream out, boolean pretty) throws IOException { if (null == out) throw new NullPointerException("OutputStream cannot be null"); JsonGenerator g = new JsonFactory().createJsonGenerator(out, JsonEncoding.UTF8); if (pretty) { DefaultPrettyPrinter pp = new DefaultPrettyPrinter() { //@Override public void writeRootValueSeparator(JsonGenerator jg) throws IOException { jg.writeRaw(LINE_SEPARATOR); } }; g.setPrettyPrinter(pp); } else { MinimalPrettyPrinter pp = new MinimalPrettyPrinter(); pp.setRootValueSeparator(LINE_SEPARATOR); g.setPrettyPrinter(pp); } return g; }
public WriteJsonResult(final ComponentLog logger, final RecordSchema recordSchema, final SchemaAccessWriter schemaAccess, final OutputStream out, final boolean prettyPrint, final NullSuppression nullSuppression, final OutputGrouping outputGrouping, final String dateFormat, final String timeFormat, final String timestampFormat, final String mimeType) throws IOException { super(out); this.logger = logger; this.recordSchema = recordSchema; this.schemaAccess = schemaAccess; this.nullSuppression = nullSuppression; this.outputGrouping = outputGrouping; this.mimeType = mimeType; final DateFormat df = dateFormat == null ? null : DataTypeUtils.getDateFormat(dateFormat); final DateFormat tf = timeFormat == null ? null : DataTypeUtils.getDateFormat(timeFormat); final DateFormat tsf = timestampFormat == null ? null : DataTypeUtils.getDateFormat(timestampFormat); LAZY_DATE_FORMAT = () -> df; LAZY_TIME_FORMAT = () -> tf; LAZY_TIMESTAMP_FORMAT = () -> tsf; this.generator = factory.createJsonGenerator(out); if (prettyPrint) { generator.useDefaultPrettyPrinter(); } else if (OutputGrouping.OUTPUT_ONELINE.equals(outputGrouping)) { // Use a minimal pretty printer with a newline object separator, will output one JSON object per line generator.setPrettyPrinter(new MinimalPrettyPrinter("\n")); } }
JsonFactory jfactory = new JsonFactory(); JsonGenerator jGenerator = jfactory.createJsonGenerator(new File("test.json"), JsonEncoding.UTF8); jGenerator.setPrettyPrinter(new MinimalPrettyPrinter("")); for(int i=0;i<4;i++) { jGenerator.writeStartObject(); jGenerator.writeStringField("name" , "test"); jGenerator.writeEndObject(); jGenerator.writeRaw('\n'); } jGenerator.close();
private static JsonGenerator getJsonGenerator(OutputStream out) throws IOException { if (null == out) { throw new NullPointerException("OutputStream cannot be null"); } JsonGenerator g = new JsonFactory().createJsonGenerator(out, JsonEncoding.UTF8); MinimalPrettyPrinter pp = new MinimalPrettyPrinter(); pp.setRootValueSeparator(System.getProperty("line.separator")); g.setPrettyPrinter(pp); return g; }
public AvroFileInputStream(FileStatus status) throws IOException { pos = 0; buffer = new byte[0]; GenericDatumReader<Object> reader = new GenericDatumReader<Object>(); FileContext fc = FileContext.getFileContext(new Configuration()); fileReader = DataFileReader.openReader(new AvroFSInput(fc, status.getPath()),reader); Schema schema = fileReader.getSchema(); writer = new GenericDatumWriter<Object>(schema); output = new ByteArrayOutputStream(); JsonGenerator generator = new JsonFactory().createJsonGenerator(output, JsonEncoding.UTF8); MinimalPrettyPrinter prettyPrinter = new MinimalPrettyPrinter(); prettyPrinter.setRootValueSeparator(System.getProperty("line.separator")); generator.setPrettyPrinter(prettyPrinter); encoder = EncoderFactory.get().jsonEncoder(schema, generator); }
public AvroFileInputStream(FileStatus status) throws IOException { pos = 0; buffer = new byte[0]; GenericDatumReader<Object> reader = new GenericDatumReader<Object>(); FileContext fc = FileContext.getFileContext(new Configuration()); fileReader = DataFileReader.openReader(new AvroFSInput(fc, status.getPath()),reader); Schema schema = fileReader.getSchema(); writer = new GenericDatumWriter<Object>(schema); output = new ByteArrayOutputStream(); JsonGenerator generator = new JsonFactory().createJsonGenerator(output, JsonEncoding.UTF8); MinimalPrettyPrinter prettyPrinter = new MinimalPrettyPrinter(); prettyPrinter.setRootValueSeparator(System.getProperty("line.separator")); generator.setPrettyPrinter(prettyPrinter); encoder = EncoderFactory.get().jsonEncoder(schema, generator); }
public AvroFileInputStream(FileStatus status) throws IOException { pos = 0; buffer = new byte[0]; GenericDatumReader<Object> reader = new GenericDatumReader<Object>(); FileContext fc = FileContext.getFileContext(new Configuration()); fileReader = DataFileReader.openReader(new AvroFSInput(fc, status.getPath()),reader); Schema schema = fileReader.getSchema(); writer = new GenericDatumWriter<Object>(schema); output = new ByteArrayOutputStream(); JsonGenerator generator = new JsonFactory().createJsonGenerator(output, JsonEncoding.UTF8); MinimalPrettyPrinter prettyPrinter = new MinimalPrettyPrinter(); prettyPrinter.setRootValueSeparator(System.getProperty("line.separator")); generator.setPrettyPrinter(prettyPrinter); encoder = EncoderFactory.get().jsonEncoder(schema, generator); }
private static JsonGenerator getJsonGenerator(OutputStream out, boolean pretty) throws IOException { if (null == out) throw new NullPointerException("OutputStream cannot be null"); JsonGenerator g = new JsonFactory().createJsonGenerator(out, JsonEncoding.UTF8); if (pretty) { DefaultPrettyPrinter pp = new DefaultPrettyPrinter() { //@Override public void writeRootValueSeparator(JsonGenerator jg) throws IOException { jg.writeRaw(LINE_SEPARATOR); } }; g.setPrettyPrinter(pp); } else { MinimalPrettyPrinter pp = new MinimalPrettyPrinter(); pp.setRootValueSeparator(LINE_SEPARATOR); g.setPrettyPrinter(pp); } return g; }
generator.useDefaultPrettyPrinter(); } else { // ensure newline separation MinimalPrettyPrinter pp = new MinimalPrettyPrinter(); pp.setRootValueSeparator(System.getProperty("line.separator")); generator.setPrettyPrinter(pp);
generator.useDefaultPrettyPrinter(); } else { // ensure newline separation MinimalPrettyPrinter pp = new MinimalPrettyPrinter(); pp.setRootValueSeparator(System.getProperty("line.separator")); generator.setPrettyPrinter(pp);
/** Read a Trevni file and print each row as a JSON object. */ public void dump(Input input, PrintStream out, boolean pretty) throws IOException { this.generator = FACTORY.createJsonGenerator(out, JsonEncoding.UTF8); if (pretty) { generator.useDefaultPrettyPrinter(); } else { // ensure newline separation MinimalPrettyPrinter pp = new MinimalPrettyPrinter(); pp.setRootValueSeparator(System.getProperty("line.separator")); generator.setPrettyPrinter(pp); } this.reader = new ColumnFileReader(input); generator.writeStartObject(); generator.writeNumberField("rowCount", reader.getRowCount()); generator.writeNumberField("columnCount", reader.getColumnCount()); generator.writeFieldName("metadata"); dump(reader.getMetaData()); generator.writeFieldName("columns"); generator.writeStartArray(); for (ColumnMetaData c : reader.getColumnMetaData()) dump(c); generator.writeEndArray(); generator.writeEndObject(); generator.flush(); out.println(); reader.close(); }
/** Read a Trevni file and print each row as a JSON object. */ public void dump(Input input, PrintStream out, boolean pretty) throws IOException { this.generator = FACTORY.createJsonGenerator(out, JsonEncoding.UTF8); if (pretty) { generator.useDefaultPrettyPrinter(); } else { // ensure newline separation MinimalPrettyPrinter pp = new MinimalPrettyPrinter(); pp.setRootValueSeparator(System.getProperty("line.separator")); generator.setPrettyPrinter(pp); } this.reader = new ColumnFileReader(input); generator.writeStartObject(); generator.writeNumberField("rowCount", reader.getRowCount()); generator.writeNumberField("columnCount", reader.getColumnCount()); generator.writeFieldName("metadata"); dump(reader.getMetaData()); generator.writeFieldName("columns"); generator.writeStartArray(); for (ColumnMetaData c : reader.getColumnMetaData()) dump(c); generator.writeEndArray(); generator.writeEndObject(); generator.flush(); out.println(); reader.close(); }