Class AbstractMessageLite<MessageType extends AbstractMessageLite<MessageType,BuilderType>,BuilderType extends AbstractMessageLite.Builder<MessageType,BuilderType>>

java.lang.Object
com.google.protobuf.AbstractMessageLite<MessageType,BuilderType>
All Implemented Interfaces:
MessageLite, MessageLiteOrBuilder
Direct Known Subclasses:
AbstractMessage, GeneratedMessageLite

public abstract class AbstractMessageLite<MessageType extends AbstractMessageLite<MessageType,BuilderType>,BuilderType extends AbstractMessageLite.Builder<MessageType,BuilderType>> extends Object implements MessageLite
A partial implementation of the MessageLite interface which implements as many methods of that interface as possible in terms of other methods.
  • Field Details

    • memoizedHashCode

      protected int memoizedHashCode
  • Constructor Details

    • AbstractMessageLite

      public AbstractMessageLite()
  • Method Details

    • toByteString

      public ByteString toByteString()
      Description copied from interface: MessageLite
      Serializes the message to a ByteString and returns it. This is just a trivial wrapper around MessageLite.writeTo(CodedOutputStream). If this message requires more than Integer.MAX_VALUE bytes to encode, the behavior is unpredictable. It may throw a runtime exception or truncate or slice the data.
      Specified by:
      toByteString in interface MessageLite
    • toByteArray

      public byte[] toByteArray()
      Description copied from interface: MessageLite
      Serializes the message to a byte array and returns it. This is just a trivial wrapper around MessageLite.writeTo(CodedOutputStream). If this message requires more than Integer.MAX_VALUE bytes to encode, the behavior is unpredictable. It may throw a runtime exception or truncate or slice the data.
      Specified by:
      toByteArray in interface MessageLite
    • writeTo

      public void writeTo(OutputStream output) throws IOException
      Description copied from interface: MessageLite
      Serializes the message and writes it to 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, for instance, by writing the size of the message before the data, then making sure to limit the input to that size on the receiving end by wrapping the InputStream in one which limits the input. Alternatively, just use MessageLite.writeDelimitedTo(OutputStream).

      Specified by:
      writeTo in interface MessageLite
      Throws:
      IOException
    • writeDelimitedTo

      public void writeDelimitedTo(OutputStream output) throws IOException
      Description copied from interface: MessageLite
      Like 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.
      Specified by:
      writeDelimitedTo in interface MessageLite
      Throws:
      IOException
    • checkByteStringIsUtf8

      protected static void checkByteStringIsUtf8(ByteString byteString) throws IllegalArgumentException
      Throws:
      IllegalArgumentException
    • addAll

      protected static <T> void addAll(Iterable<T> values, List<? super T> list)