Class UnknownFieldSet

  • All Implemented Interfaces:
    MessageLite, MessageLiteOrBuilder

    public final class UnknownFieldSet
    extends java.lang.Object
    implements MessageLite
    UnknownFieldSet keeps track of fields which were seen when parsing a protocol message but whose field numbers or types are unrecognized. This most frequently occurs when new fields are added to a message type and then messages containing those fields are read by old software that was compiled before the new types were added.

    Every Message contains an UnknownFieldSet (and every Message.Builder contains a UnknownFieldSet.Builder).

    Most users will never need to use this class.

    • Method Detail

      • getDefaultInstance

        public static UnknownFieldSet getDefaultInstance()
        Get an empty UnknownFieldSet.
      • getDefaultInstanceForType

        public UnknownFieldSet getDefaultInstanceForType()
        Description copied from interface: MessageLiteOrBuilder
        Get an instance of the type with no fields set. Because no fields are set, all getters for singular fields will return default values and repeated fields will appear empty. This may or may not be a singleton. This differs from the getDefaultInstance() method of generated message classes in that this method is an abstract method of the MessageLite interface whereas getDefaultInstance() is a static method of a specific class. They return the same thing.
        Specified by:
        getDefaultInstanceForType in interface MessageLiteOrBuilder
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • asMap

        public java.util.Map<java.lang.Integer,​UnknownFieldSet.Field> asMap()
        Get a map of fields in the set by number.
      • hasField

        public boolean hasField​(int number)
        Check if the given field number is present in the set.
      • getField

        public UnknownFieldSet.Field getField​(int number)
        Get a field by number. Returns an empty field if not present. Never returns null.
      • writeTo

        public void writeTo​(CodedOutputStream output)
                     throws java.io.IOException
        Serializes the set and writes it to output.
        Specified by:
        writeTo in interface MessageLite
        Throws:
        java.io.IOException
      • toString

        public java.lang.String toString()
        Converts the set to a string in protocol buffer text format. This is just a trivial wrapper around TextFormat.Printer.printToString(UnknownFieldSet).
        Overrides:
        toString in class java.lang.Object
      • writeTo

        public void writeTo​(java.io.OutputStream output)
                     throws java.io.IOException
        Serializes the message and writes it to output. This is just a trivial wrapper around writeTo(CodedOutputStream).
        Specified by:
        writeTo in interface MessageLite
        Throws:
        java.io.IOException
      • writeDelimitedTo

        public void writeDelimitedTo​(java.io.OutputStream output)
                              throws java.io.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:
        java.io.IOException
      • getSerializedSize

        public int getSerializedSize()
        Get the number of bytes required to encode this set.
        Specified by:
        getSerializedSize in interface MessageLite
      • writeAsMessageSetTo

        public void writeAsMessageSetTo​(CodedOutputStream output)
                                 throws java.io.IOException
        Serializes the set and writes it to output using MessageSet wire format.
        Throws:
        java.io.IOException
      • getSerializedSizeAsMessageSet

        public int getSerializedSizeAsMessageSet()
        Get the number of bytes required to encode this set using MessageSet wire format.
      • parseFrom

        public static UnknownFieldSet parseFrom​(CodedInputStream input)
                                         throws java.io.IOException
        Parse an UnknownFieldSet from the given input stream.
        Throws:
        java.io.IOException
      • parseFrom

        public static UnknownFieldSet parseFrom​(java.io.InputStream input)
                                         throws java.io.IOException
        Parse an UnknownFieldSet from input and return it.
        Throws:
        java.io.IOException