@Override public StructuredJsonGenerator writeFieldName(String fieldName) { writer.setFieldName(fieldName); return this; }
@Override public StructuredJsonGenerator writeStartArray() { try { writer.stepIn(IonType.LIST); } catch (IOException e) { throw new SdkClientException(e); } return this; }
@Override public StructuredJsonGenerator writeEndObject() { try { writer.stepOut(); } catch (IOException e) { throw new SdkClientException(e); } return this; }
private static void doPrintVersion() throws IOException { IonTextWriterBuilder b = IonTextWriterBuilder.pretty(); b.setCharset(IonTextWriterBuilder.ASCII); IonWriter w = b.build((Appendable)System.out); w.stepIn(IonType.STRUCT); { w.setFieldName("version"); w.writeString(info.getProjectVersion()); w.setFieldName("build_time"); w.writeTimestamp(info.getBuildTime()); } w.stepOut(); w.finish(); System.out.println(); } }
/** * writes an IonList with a series of IonInt values. This * starts a List, writes the values (without any annoations) * and closes the list. For text and tree writers this is * just a convienience, but for the binary writer it can be * optimized internally. * @param values signed short values to populate the lists int's with */ public static void writeIntList(IonWriter writer, short[] values) throws IOException { if (writer instanceof PrivateListWriter) { ((PrivateListWriter)writer).writeIntList(values); return; } writer.stepIn(IonType.LIST); for (int ii=0; ii<values.length; ii++) { writer.writeInt(values[ii]); } writer.stepOut(); }
writer.setTypeAnnotationSymbols(systemSymbol(ION_SHARED_SYMBOL_TABLE_SID)); writer.setTypeAnnotationSymbols(systemSymbol(ION_SYMBOL_TABLE_SID)); writer.stepIn(STRUCT); writer.setFieldNameSymbol(systemSymbol(NAME_SID)); writer.writeString(name); writer.setFieldNameSymbol(systemSymbol(VERSION_SID)); writer.writeInt(version); writer.setFieldNameSymbol(systemSymbol(IMPORTS_SID)); writer.stepIn(LIST); for (final SymbolTable st : imports) writer.stepIn(STRUCT); writer.setFieldNameSymbol(systemSymbol(NAME_SID)); writer.writeString(st.getName()); writer.setFieldNameSymbol(systemSymbol(VERSION_SID)); writer.writeInt(st.getVersion()); writer.setFieldNameSymbol(systemSymbol(MAX_ID_SID)); writer.writeInt(st.getMaxId()); writer.stepOut(); writer.stepOut(); writer.setFieldNameSymbol(systemSymbol(SYMBOLS_SID));
/** * writes an IonList with a series of IonBool values. This * starts a List, writes the values (without any annoations) * and closes the list. For text and tree writers this is * just a convienience, but for the binary writer it can be * optimized internally. * @param values boolean values to populate the list with */ public static void writeBoolList(IonWriter writer, boolean[] values) throws IOException { if (writer instanceof PrivateListWriter) { ((PrivateListWriter)writer).writeBoolList(values); return; } writer.stepIn(IonType.LIST); for (int ii=0; ii<values.length; ii++) { writer.writeBool(values[ii]); } writer.stepOut(); }
/** * writes an IonList with a series of IonFloat values. This * starts a List, writes the values (without any annoations) * and closes the list. For text and tree writers this is * just a convienience, but for the binary writer it can be * optimized internally. * @param values 64 bit float values to populate the lists IonFloat's with */ public static void writeFloatList(IonWriter writer, double[] values) throws IOException { if (writer instanceof PrivateListWriter) { ((PrivateListWriter)writer).writeFloatList(values); return; } writer.stepIn(IonType.LIST); for (int ii=0; ii<values.length; ii++) { writer.writeFloat(values[ii]); } writer.stepOut(); }
/** * writes an IonList with a series of IonString values. This * starts a List, writes the values (without any annoations) * and closes the list. For text and tree writers this is * just a convienience, but for the binary writer it can be * optimized internally. * @param values Java String to populate the lists IonString's from */ public static void writeStringList(IonWriter writer, String[] values) throws IOException { if (writer instanceof PrivateListWriter) { ((PrivateListWriter)writer).writeStringList(values); return; } writer.stepIn(IonType.LIST); for (int ii=0; ii<values.length; ii++) { writer.writeString(values[ii]); } writer.stepOut(); } }
@Override public StructuredJsonGenerator writeValue(float val) { try { writer.writeFloat(val); } catch (IOException e) { throw new SdkClientException(e); } return this; }
@Override public StructuredJsonGenerator writeValue(int val) { try { writer.writeInt(val); } catch (IOException e) { throw new SdkClientException(e); } return this; }
@Override public StructuredJsonGenerator writeNull() { try { writer.writeNull(); } catch (IOException e) { throw new SdkClientException(e); } return this; }
@Override public StructuredJsonGenerator writeValue(ByteBuffer bytes) { try { writer.writeBlob(BinaryUtils.copyAllBytesFrom(bytes)); } catch (IOException e) { throw new SdkClientException(e); } return this; }
@Override public StructuredJsonGenerator writeValue(BigDecimal value) { try { writer.writeDecimal(value); } catch (IOException e) { throw new SdkClientException(e); } return this; }
@Override public StructuredJsonGenerator writeValue(String val) { try { writer.writeString(val); } catch (IOException e) { throw new SdkClientException(e); } return this; }
@Override final void writeBodyTo(IonWriter writer, SymbolTableProvider symbolTableProvider) throws IOException { if (isNullValue()) { writer.writeNull(IonType.FLOAT); } else { writer.writeFloat(_float_value); } }
@Override public StructuredJsonGenerator writeValue(boolean bool) { try { writer.writeBool(bool); } catch (IOException e) { throw new SdkClientException(e); } return this; }