Package io.protostuff
Class XmlOutput
- java.lang.Object
-
- io.protostuff.XmlOutput
-
- All Implemented Interfaces:
Output
,StatefulOutput
public final class XmlOutput extends java.lang.Object implements Output, StatefulOutput
An output used for writing data with xml format.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
updateLast(Schema<?> schema, Schema<?> lastSchema)
Updates the schema iflastSchema
was indeed the last schema used.XmlOutput
use(Schema<?> schema)
private static void
write(javax.xml.stream.XMLStreamWriter writer, java.lang.String name, java.lang.String value)
private static void
writeB64Encoded(javax.xml.stream.XMLStreamWriter writer, java.lang.String name, char[] value)
void
writeBool(int fieldNumber, boolean value, boolean repeated)
Writes a boolean field.void
writeByteArray(int fieldNumber, byte[] value, boolean repeated)
Writes a byte array field.void
writeByteRange(boolean utf8String, int fieldNumber, byte[] value, int offset, int length, boolean repeated)
Writes a binary or a pre-encoded utf8 string.void
writeBytes(int fieldNumber, ByteString value, boolean repeated)
Writes a ByteString(wraps byte array) field.void
writeBytes(int fieldNumber, java.nio.ByteBuffer value, boolean repeated)
void
writeDouble(int fieldNumber, double value, boolean repeated)
Writes a double field.void
writeEnum(int fieldNumber, int value, boolean repeated)
Writes a enum(its number) field.void
writeFixed32(int fieldNumber, int value, boolean repeated)
Writes a fixed int(4 bytes) field.void
writeFixed64(int fieldNumber, long value, boolean repeated)
Writes a fixed long(8 bytes) field.void
writeFloat(int fieldNumber, float value, boolean repeated)
Writes a float field.void
writeInt32(int fieldNumber, int value, boolean repeated)
Writes a variable int field.void
writeInt64(int fieldNumber, long value, boolean repeated)
Writes a variable long field.<T> void
writeObject(int fieldNumber, T value, Schema<T> schema, boolean repeated)
Writes an object(using its schema) field.void
writeSFixed32(int fieldNumber, int value, boolean repeated)
Writes a signed+fixed int(4 bytes) field.void
writeSFixed64(int fieldNumber, long value, boolean repeated)
Writes a signed+fixed long(8 bytes) field.void
writeSInt32(int fieldNumber, int value, boolean repeated)
Writes a signed int field.void
writeSInt64(int fieldNumber, long value, boolean repeated)
Writes a signed long field.void
writeString(int fieldNumber, java.lang.CharSequence value, boolean repeated)
Writes a String field.void
writeUInt32(int fieldNumber, int value, boolean repeated)
Writes an unsigned int field.void
writeUInt64(int fieldNumber, long value, boolean repeated)
Writes an unsigned long field.
-
-
-
Field Detail
-
EMPTY
static final char[] EMPTY
-
writer
private final javax.xml.stream.XMLStreamWriter writer
-
schema
private Schema<?> schema
-
-
Constructor Detail
-
XmlOutput
public XmlOutput(javax.xml.stream.XMLStreamWriter writer)
-
XmlOutput
public XmlOutput(javax.xml.stream.XMLStreamWriter writer, Schema<?> schema)
-
-
Method Detail
-
updateLast
public void updateLast(Schema<?> schema, Schema<?> lastSchema)
Description copied from interface:StatefulOutput
Updates the schema iflastSchema
was indeed the last schema used.- Specified by:
updateLast
in interfaceStatefulOutput
-
write
private static void write(javax.xml.stream.XMLStreamWriter writer, java.lang.String name, java.lang.String value) throws java.io.IOException
- Throws:
java.io.IOException
-
writeB64Encoded
private static void writeB64Encoded(javax.xml.stream.XMLStreamWriter writer, java.lang.String name, char[] value) throws java.io.IOException
- Throws:
java.io.IOException
-
writeInt32
public void writeInt32(int fieldNumber, int value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a variable int field.- Specified by:
writeInt32
in interfaceOutput
- Throws:
java.io.IOException
-
writeUInt32
public void writeUInt32(int fieldNumber, int value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes an unsigned int field.- Specified by:
writeUInt32
in interfaceOutput
- Throws:
java.io.IOException
-
writeSInt32
public void writeSInt32(int fieldNumber, int value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a signed int field.- Specified by:
writeSInt32
in interfaceOutput
- Throws:
java.io.IOException
-
writeFixed32
public void writeFixed32(int fieldNumber, int value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a fixed int(4 bytes) field.- Specified by:
writeFixed32
in interfaceOutput
- Throws:
java.io.IOException
-
writeSFixed32
public void writeSFixed32(int fieldNumber, int value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a signed+fixed int(4 bytes) field.- Specified by:
writeSFixed32
in interfaceOutput
- Throws:
java.io.IOException
-
writeInt64
public void writeInt64(int fieldNumber, long value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a variable long field.- Specified by:
writeInt64
in interfaceOutput
- Throws:
java.io.IOException
-
writeUInt64
public void writeUInt64(int fieldNumber, long value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes an unsigned long field.- Specified by:
writeUInt64
in interfaceOutput
- Throws:
java.io.IOException
-
writeSInt64
public void writeSInt64(int fieldNumber, long value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a signed long field.- Specified by:
writeSInt64
in interfaceOutput
- Throws:
java.io.IOException
-
writeFixed64
public void writeFixed64(int fieldNumber, long value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a fixed long(8 bytes) field.- Specified by:
writeFixed64
in interfaceOutput
- Throws:
java.io.IOException
-
writeSFixed64
public void writeSFixed64(int fieldNumber, long value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a signed+fixed long(8 bytes) field.- Specified by:
writeSFixed64
in interfaceOutput
- Throws:
java.io.IOException
-
writeFloat
public void writeFloat(int fieldNumber, float value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a float field.- Specified by:
writeFloat
in interfaceOutput
- Throws:
java.io.IOException
-
writeDouble
public void writeDouble(int fieldNumber, double value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a double field.- Specified by:
writeDouble
in interfaceOutput
- Throws:
java.io.IOException
-
writeBool
public void writeBool(int fieldNumber, boolean value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a boolean field.
-
writeEnum
public void writeEnum(int fieldNumber, int value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a enum(its number) field.
-
writeString
public void writeString(int fieldNumber, java.lang.CharSequence value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a String field.- Specified by:
writeString
in interfaceOutput
- Throws:
java.io.IOException
-
writeBytes
public void writeBytes(int fieldNumber, ByteString value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a ByteString(wraps byte array) field.- Specified by:
writeBytes
in interfaceOutput
- Throws:
java.io.IOException
-
writeByteArray
public void writeByteArray(int fieldNumber, byte[] value, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a byte array field.- Specified by:
writeByteArray
in interfaceOutput
- Throws:
java.io.IOException
-
writeByteRange
public void writeByteRange(boolean utf8String, int fieldNumber, byte[] value, int offset, int length, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes a binary or a pre-encoded utf8 string.- Specified by:
writeByteRange
in interfaceOutput
- Throws:
java.io.IOException
-
writeObject
public <T> void writeObject(int fieldNumber, T value, Schema<T> schema, boolean repeated) throws java.io.IOException
Description copied from interface:Output
Writes an object(using its schema) field.- Specified by:
writeObject
in interfaceOutput
- Throws:
java.io.IOException
-
writeBytes
public void writeBytes(int fieldNumber, java.nio.ByteBuffer value, boolean repeated) throws java.io.IOException
- Specified by:
writeBytes
in interfaceOutput
- Throws:
java.io.IOException
-
-