public abstract class AbstractMessageLite extends Objectimplements MessageLite
MessageLite interface which implements as many methods of that interface as possible in terms of other methods.
| Modifier and Type | Class and Description |
|---|---|
static class |
AbstractMessageLite
A partial implementation of the
Message.Builder interface which implements as many methods of that interface as possible in terms of other methods.
|
| Modifier and Type | Field and Description |
|---|---|
protected int |
memoizedHashCode
|
| Constructor and Description |
|---|
AbstractMessageLite()
|
| Modifier and Type | Method and Description |
|---|---|
protected static void |
checkByteStringIsUtf8(ByteString
|
byte[] |
toByteArray()
Serializes the message to a
byte array and returns it.
|
ByteString |
toByteString()
Serializes the message to a
ByteString and returns it.
|
void |
writeDelimitedTo(OutputStream
Like
MessageLite, but writes the size of the message as a varint before writing the data.
|
void |
writeTo(OutputStream
Serializes the message and writes it to
output.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetParserForType, getSerializedSize, newBuilderForType, toBuilder, writeTogetDefaultInstanceForType, isInitializedpublic ByteStringtoByteString()
MessageLite
ByteString and returns it. This is just a trivial wrapper around
MessageLite.writeTo(CodedOutputStream) .
public byte[] toByteArray()
MessageLite
byte array and returns it. This is just a trivial wrapper around
MessageLite.writeTo(CodedOutputStream) .
public void writeTo(OutputStreamoutput) throws IOException
MessageLite
output. This is just a trivial wrapper around
MessageLite.writeTo(CodedOutputStream) . This does not flush or close the stream.
NOTE: Protocol Buffers are not self-delimiting. Therefore, if you write any more data to the stream after the message, you must somehow ensure that the parser on the receiving end does not interpret this as being part of the protocol message. This can be done e.g. by writing the size of the message before the data, then making sure to limit the input to that size on the receiving end (e.g. by wrapping the InputStream in one which limits the input). Alternatively, just use MessageLite.
writeTo in interface
MessageLite
IOException
public void writeDelimitedTo(OutputStreamoutput) throws IOException
MessageLite
MessageLite.writeTo(OutputStream) , but writes the size of the message as a varint before writing the data. This allows more data to be written to the stream after the message without the need to delimit the message data yourself. Use
MessageLite.Builder.mergeDelimitedFrom(InputStream) (or the static method
YourMessageType.parseDelimitedFrom(InputStream)) to parse messages written by this method.
writeDelimitedTo in interface
MessageLite
IOException
protected static void checkByteStringIsUtf8(ByteStringbyteString) throws IllegalArgumentException
IllegalArgumentException