Package io.protostuff

Class XmlXOutput

All Implemented Interfaces:
Output, StatefulOutput

public final class XmlXOutput extends WriteSession implements Output, StatefulOutput
Optimized xml output. The string values are not escaped (its assumed are no xml control chars or that they've been validated and xml-escaped on input).
  • Nested Class Summary

    Nested classes/interfaces inherited from class io.protostuff.WriteSession

    WriteSession.FlushHandler
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    (package private) static final byte
     
    (package private) static final byte[]
     
    private Schema<?>
     
    (package private) static final byte
     
    (package private) static final byte[]
     
    (package private) static final byte
     
    (package private) static final byte[]
     

    Fields inherited from class io.protostuff.WriteSession

    flushHandler, head, nextBufferSize, out, sink, size, tail
  • Constructor Summary

    Constructors
    Constructor
    Description
    XmlXOutput(LinkedBuffer head, Schema<?> schema)
     
    XmlXOutput(LinkedBuffer head, OutputStream out, Schema<?> schema)
     
    XmlXOutput(LinkedBuffer head, OutputStream out, WriteSession.FlushHandler flushHandler, int nextBufferSize, Schema<?> schema)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    The buffer will be cleared (tail will point to the head) and the size will be reset to zero.
    void
    updateLast(Schema<?> schema, Schema<?> lastSchema)
    Updates the schema if lastSchema was indeed the last schema used.
    use(Schema<?> schema)
    Before serializing a message/object tied to a schema, this should be called.
    private void
    writeB64(String name, byte[] value, int offset, int length, boolean repeated)
     
    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, ByteBuffer value, boolean repeated)
    Writes a ByteBuffer field.
    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, 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.

    Methods inherited from class io.protostuff.WriteSession

    flush, flush, flush, getSize, reset, toByteArray

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • START_TAG

      static final byte START_TAG
      See Also:
    • END_TAG

      static final byte END_TAG
      See Also:
    • SLASH

      static final byte SLASH
      See Also:
    • START_SLASH_TAG

      static final byte[] START_SLASH_TAG
    • TRUE

      static final byte[] TRUE
    • FALSE

      static final byte[] FALSE
    • schema

      private Schema<?> schema
  • Constructor Details

  • Method Details

    • clear

      public XmlXOutput clear()
      Description copied from class: WriteSession
      The buffer will be cleared (tail will point to the head) and the size will be reset to zero.
      Overrides:
      clear in class WriteSession
    • use

      public XmlXOutput use(Schema<?> schema)
      Before serializing a message/object tied to a schema, this should be called.
    • updateLast

      public void updateLast(Schema<?> schema, Schema<?> lastSchema)
      Description copied from interface: StatefulOutput
      Updates the schema if lastSchema was indeed the last schema used.
      Specified by:
      updateLast in interface StatefulOutput
    • writeBool

      public void writeBool(int fieldNumber, boolean value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a boolean field.
      Specified by:
      writeBool in interface Output
      Throws:
      IOException
    • writeDouble

      public void writeDouble(int fieldNumber, double value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a double field.
      Specified by:
      writeDouble in interface Output
      Throws:
      IOException
    • writeFloat

      public void writeFloat(int fieldNumber, float value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a float field.
      Specified by:
      writeFloat in interface Output
      Throws:
      IOException
    • writeEnum

      public void writeEnum(int fieldNumber, int value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a enum(its number) field.
      Specified by:
      writeEnum in interface Output
      Throws:
      IOException
    • writeFixed32

      public void writeFixed32(int fieldNumber, int value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a fixed int(4 bytes) field.
      Specified by:
      writeFixed32 in interface Output
      Throws:
      IOException
    • writeInt32

      public void writeInt32(int fieldNumber, int value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a variable int field.
      Specified by:
      writeInt32 in interface Output
      Throws:
      IOException
    • writeSFixed32

      public void writeSFixed32(int fieldNumber, int value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a signed+fixed int(4 bytes) field.
      Specified by:
      writeSFixed32 in interface Output
      Throws:
      IOException
    • writeUInt32

      public void writeUInt32(int fieldNumber, int value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes an unsigned int field.
      Specified by:
      writeUInt32 in interface Output
      Throws:
      IOException
    • writeSInt32

      public void writeSInt32(int fieldNumber, int value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a signed int field.
      Specified by:
      writeSInt32 in interface Output
      Throws:
      IOException
    • writeFixed64

      public void writeFixed64(int fieldNumber, long value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a fixed long(8 bytes) field.
      Specified by:
      writeFixed64 in interface Output
      Throws:
      IOException
    • writeInt64

      public void writeInt64(int fieldNumber, long value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a variable long field.
      Specified by:
      writeInt64 in interface Output
      Throws:
      IOException
    • writeSFixed64

      public void writeSFixed64(int fieldNumber, long value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a signed+fixed long(8 bytes) field.
      Specified by:
      writeSFixed64 in interface Output
      Throws:
      IOException
    • writeSInt64

      public void writeSInt64(int fieldNumber, long value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a signed long field.
      Specified by:
      writeSInt64 in interface Output
      Throws:
      IOException
    • writeUInt64

      public void writeUInt64(int fieldNumber, long value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes an unsigned long field.
      Specified by:
      writeUInt64 in interface Output
      Throws:
      IOException
    • writeString

      public void writeString(int fieldNumber, CharSequence value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a String field.
      Specified by:
      writeString in interface Output
      Throws:
      IOException
    • writeByteRange

      public void writeByteRange(boolean utf8String, int fieldNumber, byte[] value, int offset, int length, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a binary or a pre-encoded utf8 string.
      Specified by:
      writeByteRange in interface Output
      Throws:
      IOException
    • writeB64

      private void writeB64(String name, byte[] value, int offset, int length, boolean repeated) throws IOException
      Throws:
      IOException
    • writeBytes

      public void writeBytes(int fieldNumber, ByteString value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a ByteString(wraps byte array) field.
      Specified by:
      writeBytes in interface Output
      Throws:
      IOException
    • writeByteArray

      public void writeByteArray(int fieldNumber, byte[] value, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes a byte array field.
      Specified by:
      writeByteArray in interface Output
      Throws:
      IOException
    • writeObject

      public <T> void writeObject(int fieldNumber, T value, Schema<T> schema, boolean repeated) throws IOException
      Description copied from interface: Output
      Writes an object(using its schema) field.
      Specified by:
      writeObject in interface Output
      Throws:
      IOException
    • writeBytes

      public void writeBytes(int fieldNumber, ByteBuffer value, boolean repeated) throws IOException
      Writes a ByteBuffer field.
      Specified by:
      writeBytes in interface Output
      Throws:
      IOException