Package akka.protobuf
Class CodedOutputStream
- java.lang.Object
-
- akka.protobuf.CodedOutputStream
-
public final class CodedOutputStream extends java.lang.Object
Encodes and writes protocol message fields.This class contains two kinds of methods: methods that write specific protocol message constructs and field types (e.g.
writeTag(int, int)
andwriteInt32(int, int)
) and methods that write low-level values (e.g.writeRawVarint32(int)
andwriteRawBytes(akka.protobuf.ByteString)
). If you are writing encoded protocol messages, you should use the former methods, but if you are writing some other format of your own design, use the latter.This class is totally unsynchronized.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CodedOutputStream.OutOfSpaceException
If you create a CodedOutputStream around a simple flat array, you must not attempt to write more bytes than the array has space.
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_BUFFER_SIZE
The buffer size used innewInstance(OutputStream)
.static int
LITTLE_ENDIAN_32_SIZE
static int
LITTLE_ENDIAN_64_SIZE
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
checkNoSpaceLeft()
Verifies thatspaceLeft()
returns zero.static int
computeBoolSize(int fieldNumber, boolean value)
Compute the number of bytes that would be needed to encode abool
field, including tag.static int
computeBoolSizeNoTag(boolean value)
Compute the number of bytes that would be needed to encode abool
field.static int
computeBytesSize(int fieldNumber, ByteString value)
Compute the number of bytes that would be needed to encode abytes
field, including tag.static int
computeBytesSizeNoTag(ByteString value)
Compute the number of bytes that would be needed to encode abytes
field.static int
computeDoubleSize(int fieldNumber, double value)
Compute the number of bytes that would be needed to encode adouble
field, including tag.static int
computeDoubleSizeNoTag(double value)
Compute the number of bytes that would be needed to encode adouble
field, including tag.static int
computeEnumSize(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode an enum field, including tag.static int
computeEnumSizeNoTag(int value)
Compute the number of bytes that would be needed to encode an enum field.static int
computeFixed32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode afixed32
field, including tag.static int
computeFixed32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode afixed32
field.static int
computeFixed64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode afixed64
field, including tag.static int
computeFixed64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode afixed64
field.static int
computeFloatSize(int fieldNumber, float value)
Compute the number of bytes that would be needed to encode afloat
field, including tag.static int
computeFloatSizeNoTag(float value)
Compute the number of bytes that would be needed to encode afloat
field, including tag.static int
computeGroupSize(int fieldNumber, MessageLite value)
Compute the number of bytes that would be needed to encode agroup
field, including tag.static int
computeGroupSizeNoTag(MessageLite value)
Compute the number of bytes that would be needed to encode agroup
field.static int
computeInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode anint32
field, including tag.static int
computeInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode anint32
field, including tag.static int
computeInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode anint64
field, including tag.static int
computeInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode anint64
field, including tag.static int
computeLazyFieldMessageSetExtensionSize(int fieldNumber, akka.protobuf.LazyField value)
Compute the number of bytes that would be needed to encode an lazily parsed MessageSet extension field to the stream.static int
computeLazyFieldSize(int fieldNumber, akka.protobuf.LazyField value)
Compute the number of bytes that would be needed to encode an embedded message in lazy field, including tag.static int
computeLazyFieldSizeNoTag(akka.protobuf.LazyField value)
Compute the number of bytes that would be needed to encode an embedded message stored in lazy field.static int
computeMessageSetExtensionSize(int fieldNumber, MessageLite value)
Compute the number of bytes that would be needed to encode a MessageSet extension to the stream.static int
computeMessageSize(int fieldNumber, MessageLite value)
Compute the number of bytes that would be needed to encode an embedded message field, including tag.static int
computeMessageSizeNoTag(MessageLite value)
Compute the number of bytes that would be needed to encode an embedded message field.static int
computeRawMessageSetExtensionSize(int fieldNumber, ByteString value)
Compute the number of bytes that would be needed to encode an unparsed MessageSet extension field to the stream.static int
computeRawVarint32Size(int value)
Compute the number of bytes that would be needed to encode a varint.static int
computeRawVarint64Size(long value)
Compute the number of bytes that would be needed to encode a varint.static int
computeSFixed32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode ansfixed32
field, including tag.static int
computeSFixed32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode ansfixed32
field.static int
computeSFixed64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode ansfixed64
field, including tag.static int
computeSFixed64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode ansfixed64
field.static int
computeSInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode ansint32
field, including tag.static int
computeSInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode ansint32
field.static int
computeSInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode ansint64
field, including tag.static int
computeSInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode ansint64
field.static int
computeStringSize(int fieldNumber, java.lang.String value)
Compute the number of bytes that would be needed to encode astring
field, including tag.static int
computeStringSizeNoTag(java.lang.String value)
Compute the number of bytes that would be needed to encode astring
field.static int
computeTagSize(int fieldNumber)
Compute the number of bytes that would be needed to encode a tag.static int
computeUInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode auint32
field, including tag.static int
computeUInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode auint32
field.static int
computeUInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode auint64
field, including tag.static int
computeUInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode auint64
field, including tag.static int
computeUnknownGroupSize(int fieldNumber, MessageLite value)
Deprecated.UnknownFieldSet now implements MessageLite, so you can just callcomputeGroupSize(int, akka.protobuf.MessageLite)
.static int
computeUnknownGroupSizeNoTag(MessageLite value)
Deprecated.UnknownFieldSet now implements MessageLite, so you can just callcomputeUnknownGroupSizeNoTag(akka.protobuf.MessageLite)
.static int
encodeZigZag32(int n)
Encode a ZigZag-encoded 32-bit value.static long
encodeZigZag64(long n)
Encode a ZigZag-encoded 64-bit value.void
flush()
Flushes the stream and forces any buffered bytes to be written.static CodedOutputStream
newInstance(byte[] flatArray)
Create a newCodedOutputStream
that writes directly to the given byte array.static CodedOutputStream
newInstance(byte[] flatArray, int offset, int length)
Create a newCodedOutputStream
that writes directly to the given byte array slice.static CodedOutputStream
newInstance(java.io.OutputStream output)
Create a newCodedOutputStream
wrapping the givenOutputStream
.static CodedOutputStream
newInstance(java.io.OutputStream output, int bufferSize)
Create a newCodedOutputStream
wrapping the givenOutputStream
with a given buffer size.int
spaceLeft()
If writing to a flat array, return the space left in the array.void
writeBool(int fieldNumber, boolean value)
Write abool
field, including tag, to the stream.void
writeBoolNoTag(boolean value)
Write abool
field to the stream.void
writeBytes(int fieldNumber, ByteString value)
Write abytes
field, including tag, to the stream.void
writeBytesNoTag(ByteString value)
Write abytes
field to the stream.void
writeDouble(int fieldNumber, double value)
Write adouble
field, including tag, to the stream.void
writeDoubleNoTag(double value)
Write adouble
field to the stream.void
writeEnum(int fieldNumber, int value)
Write an enum field, including tag, to the stream.void
writeEnumNoTag(int value)
Write an enum field to the stream.void
writeFixed32(int fieldNumber, int value)
Write afixed32
field, including tag, to the stream.void
writeFixed32NoTag(int value)
Write afixed32
field to the stream.void
writeFixed64(int fieldNumber, long value)
Write afixed64
field, including tag, to the stream.void
writeFixed64NoTag(long value)
Write afixed64
field to the stream.void
writeFloat(int fieldNumber, float value)
Write afloat
field, including tag, to the stream.void
writeFloatNoTag(float value)
Write afloat
field to the stream.void
writeGroup(int fieldNumber, MessageLite value)
Write agroup
field, including tag, to the stream.void
writeGroupNoTag(MessageLite value)
Write agroup
field to the stream.void
writeInt32(int fieldNumber, int value)
Write anint32
field, including tag, to the stream.void
writeInt32NoTag(int value)
Write anint32
field to the stream.void
writeInt64(int fieldNumber, long value)
Write anint64
field, including tag, to the stream.void
writeInt64NoTag(long value)
Write anint64
field to the stream.void
writeMessage(int fieldNumber, MessageLite value)
Write an embedded message field, including tag, to the stream.void
writeMessageNoTag(MessageLite value)
Write an embedded message field to the stream.void
writeMessageSetExtension(int fieldNumber, MessageLite value)
Write a MessageSet extension field to the stream.void
writeRawByte(byte value)
Write a single byte.void
writeRawByte(int value)
Write a single byte, represented by an integer value.void
writeRawBytes(byte[] value)
Write an array of bytes.void
writeRawBytes(byte[] value, int offset, int length)
Write part of an array of bytes.void
writeRawBytes(ByteString value)
Write a byte string.void
writeRawBytes(ByteString value, int offset, int length)
Write part of a byte string.void
writeRawLittleEndian32(int value)
Write a little-endian 32-bit integer.void
writeRawLittleEndian64(long value)
Write a little-endian 64-bit integer.void
writeRawMessageSetExtension(int fieldNumber, ByteString value)
Write an unparsed MessageSet extension field to the stream.void
writeRawVarint32(int value)
Encode and write a varint.void
writeRawVarint64(long value)
Encode and write a varint.void
writeSFixed32(int fieldNumber, int value)
Write ansfixed32
field, including tag, to the stream.void
writeSFixed32NoTag(int value)
Write ansfixed32
field to the stream.void
writeSFixed64(int fieldNumber, long value)
Write ansfixed64
field, including tag, to the stream.void
writeSFixed64NoTag(long value)
Write ansfixed64
field to the stream.void
writeSInt32(int fieldNumber, int value)
Write ansint32
field, including tag, to the stream.void
writeSInt32NoTag(int value)
Write ansint32
field to the stream.void
writeSInt64(int fieldNumber, long value)
Write ansint64
field, including tag, to the stream.void
writeSInt64NoTag(long value)
Write ansint64
field to the stream.void
writeString(int fieldNumber, java.lang.String value)
Write astring
field, including tag, to the stream.void
writeStringNoTag(java.lang.String value)
Write astring
field to the stream.void
writeTag(int fieldNumber, int wireType)
Encode and write a tag.void
writeUInt32(int fieldNumber, int value)
Write auint32
field, including tag, to the stream.void
writeUInt32NoTag(int value)
Write auint32
field to the stream.void
writeUInt64(int fieldNumber, long value)
Write auint64
field, including tag, to the stream.void
writeUInt64NoTag(long value)
Write auint64
field to the stream.void
writeUnknownGroup(int fieldNumber, MessageLite value)
Deprecated.UnknownFieldSet now implements MessageLite, so you can just callwriteGroup(int, akka.protobuf.MessageLite)
.void
writeUnknownGroupNoTag(MessageLite value)
Deprecated.UnknownFieldSet now implements MessageLite, so you can just callwriteGroupNoTag(akka.protobuf.MessageLite)
.
-
-
-
Field Detail
-
DEFAULT_BUFFER_SIZE
public static final int DEFAULT_BUFFER_SIZE
The buffer size used innewInstance(OutputStream)
.- See Also:
- Constant Field Values
-
LITTLE_ENDIAN_32_SIZE
public static final int LITTLE_ENDIAN_32_SIZE
- See Also:
- Constant Field Values
-
LITTLE_ENDIAN_64_SIZE
public static final int LITTLE_ENDIAN_64_SIZE
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
public static CodedOutputStream newInstance(java.io.OutputStream output)
Create a newCodedOutputStream
wrapping the givenOutputStream
.
-
newInstance
public static CodedOutputStream newInstance(java.io.OutputStream output, int bufferSize)
Create a newCodedOutputStream
wrapping the givenOutputStream
with a given buffer size.
-
newInstance
public static CodedOutputStream newInstance(byte[] flatArray)
Create a newCodedOutputStream
that writes directly to the given byte array. If more bytes are written than fit in the array,CodedOutputStream.OutOfSpaceException
will be thrown. Writing directly to a flat array is faster than writing to anOutputStream
. See alsoByteString.newCodedBuilder(int)
.
-
newInstance
public static CodedOutputStream newInstance(byte[] flatArray, int offset, int length)
Create a newCodedOutputStream
that writes directly to the given byte array slice. If more bytes are written than fit in the slice,CodedOutputStream.OutOfSpaceException
will be thrown. Writing directly to a flat array is faster than writing to anOutputStream
. See alsoByteString.newCodedBuilder(int)
.
-
writeDouble
public void writeDouble(int fieldNumber, double value) throws java.io.IOException
Write adouble
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeFloat
public void writeFloat(int fieldNumber, float value) throws java.io.IOException
Write afloat
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeUInt64
public void writeUInt64(int fieldNumber, long value) throws java.io.IOException
Write auint64
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeInt64
public void writeInt64(int fieldNumber, long value) throws java.io.IOException
Write anint64
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeInt32
public void writeInt32(int fieldNumber, int value) throws java.io.IOException
Write anint32
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeFixed64
public void writeFixed64(int fieldNumber, long value) throws java.io.IOException
Write afixed64
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeFixed32
public void writeFixed32(int fieldNumber, int value) throws java.io.IOException
Write afixed32
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeBool
public void writeBool(int fieldNumber, boolean value) throws java.io.IOException
Write abool
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeString
public void writeString(int fieldNumber, java.lang.String value) throws java.io.IOException
Write astring
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeGroup
public void writeGroup(int fieldNumber, MessageLite value) throws java.io.IOException
Write agroup
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeUnknownGroup
@Deprecated public void writeUnknownGroup(int fieldNumber, MessageLite value) throws java.io.IOException
Deprecated.UnknownFieldSet now implements MessageLite, so you can just callwriteGroup(int, akka.protobuf.MessageLite)
.Write a group represented by anUnknownFieldSet
.- Throws:
java.io.IOException
-
writeMessage
public void writeMessage(int fieldNumber, MessageLite value) throws java.io.IOException
Write an embedded message field, including tag, to the stream.- Throws:
java.io.IOException
-
writeBytes
public void writeBytes(int fieldNumber, ByteString value) throws java.io.IOException
Write abytes
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeUInt32
public void writeUInt32(int fieldNumber, int value) throws java.io.IOException
Write auint32
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeEnum
public void writeEnum(int fieldNumber, int value) throws java.io.IOException
Write an enum field, including tag, to the stream. Caller is responsible for converting the enum value to its numeric value.- Throws:
java.io.IOException
-
writeSFixed32
public void writeSFixed32(int fieldNumber, int value) throws java.io.IOException
Write ansfixed32
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeSFixed64
public void writeSFixed64(int fieldNumber, long value) throws java.io.IOException
Write ansfixed64
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeSInt32
public void writeSInt32(int fieldNumber, int value) throws java.io.IOException
Write ansint32
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeSInt64
public void writeSInt64(int fieldNumber, long value) throws java.io.IOException
Write ansint64
field, including tag, to the stream.- Throws:
java.io.IOException
-
writeMessageSetExtension
public void writeMessageSetExtension(int fieldNumber, MessageLite value) throws java.io.IOException
Write a MessageSet extension field to the stream. For historical reasons, the wire format differs from normal fields.- Throws:
java.io.IOException
-
writeRawMessageSetExtension
public void writeRawMessageSetExtension(int fieldNumber, ByteString value) throws java.io.IOException
Write an unparsed MessageSet extension field to the stream. For historical reasons, the wire format differs from normal fields.- Throws:
java.io.IOException
-
writeDoubleNoTag
public void writeDoubleNoTag(double value) throws java.io.IOException
Write adouble
field to the stream.- Throws:
java.io.IOException
-
writeFloatNoTag
public void writeFloatNoTag(float value) throws java.io.IOException
Write afloat
field to the stream.- Throws:
java.io.IOException
-
writeUInt64NoTag
public void writeUInt64NoTag(long value) throws java.io.IOException
Write auint64
field to the stream.- Throws:
java.io.IOException
-
writeInt64NoTag
public void writeInt64NoTag(long value) throws java.io.IOException
Write anint64
field to the stream.- Throws:
java.io.IOException
-
writeInt32NoTag
public void writeInt32NoTag(int value) throws java.io.IOException
Write anint32
field to the stream.- Throws:
java.io.IOException
-
writeFixed64NoTag
public void writeFixed64NoTag(long value) throws java.io.IOException
Write afixed64
field to the stream.- Throws:
java.io.IOException
-
writeFixed32NoTag
public void writeFixed32NoTag(int value) throws java.io.IOException
Write afixed32
field to the stream.- Throws:
java.io.IOException
-
writeBoolNoTag
public void writeBoolNoTag(boolean value) throws java.io.IOException
Write abool
field to the stream.- Throws:
java.io.IOException
-
writeStringNoTag
public void writeStringNoTag(java.lang.String value) throws java.io.IOException
Write astring
field to the stream.- Throws:
java.io.IOException
-
writeGroupNoTag
public void writeGroupNoTag(MessageLite value) throws java.io.IOException
Write agroup
field to the stream.- Throws:
java.io.IOException
-
writeUnknownGroupNoTag
@Deprecated public void writeUnknownGroupNoTag(MessageLite value) throws java.io.IOException
Deprecated.UnknownFieldSet now implements MessageLite, so you can just callwriteGroupNoTag(akka.protobuf.MessageLite)
.Write a group represented by anUnknownFieldSet
.- Throws:
java.io.IOException
-
writeMessageNoTag
public void writeMessageNoTag(MessageLite value) throws java.io.IOException
Write an embedded message field to the stream.- Throws:
java.io.IOException
-
writeBytesNoTag
public void writeBytesNoTag(ByteString value) throws java.io.IOException
Write abytes
field to the stream.- Throws:
java.io.IOException
-
writeUInt32NoTag
public void writeUInt32NoTag(int value) throws java.io.IOException
Write auint32
field to the stream.- Throws:
java.io.IOException
-
writeEnumNoTag
public void writeEnumNoTag(int value) throws java.io.IOException
Write an enum field to the stream. Caller is responsible for converting the enum value to its numeric value.- Throws:
java.io.IOException
-
writeSFixed32NoTag
public void writeSFixed32NoTag(int value) throws java.io.IOException
Write ansfixed32
field to the stream.- Throws:
java.io.IOException
-
writeSFixed64NoTag
public void writeSFixed64NoTag(long value) throws java.io.IOException
Write ansfixed64
field to the stream.- Throws:
java.io.IOException
-
writeSInt32NoTag
public void writeSInt32NoTag(int value) throws java.io.IOException
Write ansint32
field to the stream.- Throws:
java.io.IOException
-
writeSInt64NoTag
public void writeSInt64NoTag(long value) throws java.io.IOException
Write ansint64
field to the stream.- Throws:
java.io.IOException
-
computeDoubleSize
public static int computeDoubleSize(int fieldNumber, double value)
Compute the number of bytes that would be needed to encode adouble
field, including tag.
-
computeFloatSize
public static int computeFloatSize(int fieldNumber, float value)
Compute the number of bytes that would be needed to encode afloat
field, including tag.
-
computeUInt64Size
public static int computeUInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode auint64
field, including tag.
-
computeInt64Size
public static int computeInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode anint64
field, including tag.
-
computeInt32Size
public static int computeInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode anint32
field, including tag.
-
computeFixed64Size
public static int computeFixed64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode afixed64
field, including tag.
-
computeFixed32Size
public static int computeFixed32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode afixed32
field, including tag.
-
computeBoolSize
public static int computeBoolSize(int fieldNumber, boolean value)
Compute the number of bytes that would be needed to encode abool
field, including tag.
-
computeStringSize
public static int computeStringSize(int fieldNumber, java.lang.String value)
Compute the number of bytes that would be needed to encode astring
field, including tag.
-
computeGroupSize
public static int computeGroupSize(int fieldNumber, MessageLite value)
Compute the number of bytes that would be needed to encode agroup
field, including tag.
-
computeUnknownGroupSize
@Deprecated public static int computeUnknownGroupSize(int fieldNumber, MessageLite value)
Deprecated.UnknownFieldSet now implements MessageLite, so you can just callcomputeGroupSize(int, akka.protobuf.MessageLite)
.Compute the number of bytes that would be needed to encode agroup
field represented by anUnknownFieldSet
, including tag.
-
computeMessageSize
public static int computeMessageSize(int fieldNumber, MessageLite value)
Compute the number of bytes that would be needed to encode an embedded message field, including tag.
-
computeBytesSize
public static int computeBytesSize(int fieldNumber, ByteString value)
Compute the number of bytes that would be needed to encode abytes
field, including tag.
-
computeLazyFieldSize
public static int computeLazyFieldSize(int fieldNumber, akka.protobuf.LazyField value)
Compute the number of bytes that would be needed to encode an embedded message in lazy field, including tag.
-
computeUInt32Size
public static int computeUInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode auint32
field, including tag.
-
computeEnumSize
public static int computeEnumSize(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode an enum field, including tag. Caller is responsible for converting the enum value to its numeric value.
-
computeSFixed32Size
public static int computeSFixed32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode ansfixed32
field, including tag.
-
computeSFixed64Size
public static int computeSFixed64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode ansfixed64
field, including tag.
-
computeSInt32Size
public static int computeSInt32Size(int fieldNumber, int value)
Compute the number of bytes that would be needed to encode ansint32
field, including tag.
-
computeSInt64Size
public static int computeSInt64Size(int fieldNumber, long value)
Compute the number of bytes that would be needed to encode ansint64
field, including tag.
-
computeMessageSetExtensionSize
public static int computeMessageSetExtensionSize(int fieldNumber, MessageLite value)
Compute the number of bytes that would be needed to encode a MessageSet extension to the stream. For historical reasons, the wire format differs from normal fields.
-
computeRawMessageSetExtensionSize
public static int computeRawMessageSetExtensionSize(int fieldNumber, ByteString value)
Compute the number of bytes that would be needed to encode an unparsed MessageSet extension field to the stream. For historical reasons, the wire format differs from normal fields.
-
computeLazyFieldMessageSetExtensionSize
public static int computeLazyFieldMessageSetExtensionSize(int fieldNumber, akka.protobuf.LazyField value)
Compute the number of bytes that would be needed to encode an lazily parsed MessageSet extension field to the stream. For historical reasons, the wire format differs from normal fields.
-
computeDoubleSizeNoTag
public static int computeDoubleSizeNoTag(double value)
Compute the number of bytes that would be needed to encode adouble
field, including tag.
-
computeFloatSizeNoTag
public static int computeFloatSizeNoTag(float value)
Compute the number of bytes that would be needed to encode afloat
field, including tag.
-
computeUInt64SizeNoTag
public static int computeUInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode auint64
field, including tag.
-
computeInt64SizeNoTag
public static int computeInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode anint64
field, including tag.
-
computeInt32SizeNoTag
public static int computeInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode anint32
field, including tag.
-
computeFixed64SizeNoTag
public static int computeFixed64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode afixed64
field.
-
computeFixed32SizeNoTag
public static int computeFixed32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode afixed32
field.
-
computeBoolSizeNoTag
public static int computeBoolSizeNoTag(boolean value)
Compute the number of bytes that would be needed to encode abool
field.
-
computeStringSizeNoTag
public static int computeStringSizeNoTag(java.lang.String value)
Compute the number of bytes that would be needed to encode astring
field.
-
computeGroupSizeNoTag
public static int computeGroupSizeNoTag(MessageLite value)
Compute the number of bytes that would be needed to encode agroup
field.
-
computeUnknownGroupSizeNoTag
@Deprecated public static int computeUnknownGroupSizeNoTag(MessageLite value)
Deprecated.UnknownFieldSet now implements MessageLite, so you can just callcomputeUnknownGroupSizeNoTag(akka.protobuf.MessageLite)
.Compute the number of bytes that would be needed to encode agroup
field represented by anUnknownFieldSet
, including tag.
-
computeMessageSizeNoTag
public static int computeMessageSizeNoTag(MessageLite value)
Compute the number of bytes that would be needed to encode an embedded message field.
-
computeLazyFieldSizeNoTag
public static int computeLazyFieldSizeNoTag(akka.protobuf.LazyField value)
Compute the number of bytes that would be needed to encode an embedded message stored in lazy field.
-
computeBytesSizeNoTag
public static int computeBytesSizeNoTag(ByteString value)
Compute the number of bytes that would be needed to encode abytes
field.
-
computeUInt32SizeNoTag
public static int computeUInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode auint32
field.
-
computeEnumSizeNoTag
public static int computeEnumSizeNoTag(int value)
Compute the number of bytes that would be needed to encode an enum field. Caller is responsible for converting the enum value to its numeric value.
-
computeSFixed32SizeNoTag
public static int computeSFixed32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode ansfixed32
field.
-
computeSFixed64SizeNoTag
public static int computeSFixed64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode ansfixed64
field.
-
computeSInt32SizeNoTag
public static int computeSInt32SizeNoTag(int value)
Compute the number of bytes that would be needed to encode ansint32
field.
-
computeSInt64SizeNoTag
public static int computeSInt64SizeNoTag(long value)
Compute the number of bytes that would be needed to encode ansint64
field.
-
flush
public void flush() throws java.io.IOException
Flushes the stream and forces any buffered bytes to be written. This does not flush the underlying OutputStream.- Throws:
java.io.IOException
-
spaceLeft
public int spaceLeft()
If writing to a flat array, return the space left in the array. Otherwise, throwsUnsupportedOperationException
.
-
checkNoSpaceLeft
public void checkNoSpaceLeft()
Verifies thatspaceLeft()
returns zero. It's common to create a byte array that is exactly big enough to hold a message, then write to it with aCodedOutputStream
. CallingcheckNoSpaceLeft()
after writing verifies that the message was actually as big as expected, which can help catch bugs.
-
writeRawByte
public void writeRawByte(byte value) throws java.io.IOException
Write a single byte.- Throws:
java.io.IOException
-
writeRawByte
public void writeRawByte(int value) throws java.io.IOException
Write a single byte, represented by an integer value.- Throws:
java.io.IOException
-
writeRawBytes
public void writeRawBytes(ByteString value) throws java.io.IOException
Write a byte string.- Throws:
java.io.IOException
-
writeRawBytes
public void writeRawBytes(byte[] value) throws java.io.IOException
Write an array of bytes.- Throws:
java.io.IOException
-
writeRawBytes
public void writeRawBytes(byte[] value, int offset, int length) throws java.io.IOException
Write part of an array of bytes.- Throws:
java.io.IOException
-
writeRawBytes
public void writeRawBytes(ByteString value, int offset, int length) throws java.io.IOException
Write part of a byte string.- Throws:
java.io.IOException
-
writeTag
public void writeTag(int fieldNumber, int wireType) throws java.io.IOException
Encode and write a tag.- Throws:
java.io.IOException
-
computeTagSize
public static int computeTagSize(int fieldNumber)
Compute the number of bytes that would be needed to encode a tag.
-
writeRawVarint32
public void writeRawVarint32(int value) throws java.io.IOException
Encode and write a varint.value
is treated as unsigned, so it won't be sign-extended if negative.- Throws:
java.io.IOException
-
computeRawVarint32Size
public static int computeRawVarint32Size(int value)
Compute the number of bytes that would be needed to encode a varint.value
is treated as unsigned, so it won't be sign-extended if negative.
-
writeRawVarint64
public void writeRawVarint64(long value) throws java.io.IOException
Encode and write a varint.- Throws:
java.io.IOException
-
computeRawVarint64Size
public static int computeRawVarint64Size(long value)
Compute the number of bytes that would be needed to encode a varint.
-
writeRawLittleEndian32
public void writeRawLittleEndian32(int value) throws java.io.IOException
Write a little-endian 32-bit integer.- Throws:
java.io.IOException
-
writeRawLittleEndian64
public void writeRawLittleEndian64(long value) throws java.io.IOException
Write a little-endian 64-bit integer.- Throws:
java.io.IOException
-
encodeZigZag32
public static int encodeZigZag32(int n)
Encode a ZigZag-encoded 32-bit value. ZigZag encodes signed integers into values that can be efficiently encoded with varint. (Otherwise, negative values must be sign-extended to 64 bits to be varint encoded, thus always taking 10 bytes on the wire.)- Parameters:
n
- A signed 32-bit integer.- Returns:
- An unsigned 32-bit integer, stored in a signed int because Java has no explicit unsigned support.
-
encodeZigZag64
public static long encodeZigZag64(long n)
Encode a ZigZag-encoded 64-bit value. ZigZag encodes signed integers into values that can be efficiently encoded with varint. (Otherwise, negative values must be sign-extended to 64 bits to be varint encoded, thus always taking 10 bytes on the wire.)- Parameters:
n
- A signed 64-bit integer.- Returns:
- An unsigned 64-bit integer, stored in a signed int because Java has no explicit unsigned support.
-
-