com.google.protobuf
Class AbstractParser<MessageType extends MessageLite>

java.lang.Object
  extended by com.google.protobuf.AbstractParser<MessageType>
All Implemented Interfaces:
Parser<MessageType>
Direct Known Subclasses:
UnknownFieldSet.Parser

public abstract class AbstractParser<MessageType extends MessageLite>
extends java.lang.Object
implements Parser<MessageType>

A partial implementation of the Parser interface which implements as many methods of that interface as possible in terms of other methods. Note: This class implements all the convenience methods in the Parser interface. See Parser for related javadocs. Subclasses need to implement Parser.parsePartialFrom(CodedInputStream, ExtensionRegistryLite)

Author:
liujisi@google.com (Pherl Liu)

Constructor Summary
AbstractParser()
           
 
Method Summary
 MessageType parseDelimitedFrom(java.io.InputStream input)
          Like Parser.parseFrom(InputStream), but does not read util EOF.
 MessageType parseDelimitedFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)
          Like Parser.parseDelimitedFrom(InputStream) but supporting extensions.
 MessageType parseFrom(byte[] data)
          Parses data as a message of MessageType.
 MessageType parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
          Parses data as a message of MessageType.
 MessageType parseFrom(byte[] data, int off, int len)
          Parses data as a message of MessageType.
 MessageType parseFrom(byte[] data, int off, int len, ExtensionRegistryLite extensionRegistry)
          Parses data as a message of MessageType.
 MessageType parseFrom(ByteString data)
          Parses data as a message of MessageType.
 MessageType parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
          Parses data as a message of MessageType.
 MessageType parseFrom(CodedInputStream input)
          Parses a message of MessageType from the input.
 MessageType parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
          Like Parser.parseFrom(CodedInputStream), but also parses extensions.
 MessageType parseFrom(java.io.InputStream input)
          Parse a message of MessageType from input.
 MessageType parseFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)
          Parses a message of MessageType from input.
 MessageType parsePartialDelimitedFrom(java.io.InputStream input)
          Like Parser.parseDelimitedFrom(InputStream), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialDelimitedFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)
          Like Parser.parseDelimitedFrom(InputStream, ExtensionRegistryLite), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(byte[] data)
          Like Parser.parseFrom(byte[]), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
          Like Parser.parseFrom(byte[], ExtensionRegistryLite), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(byte[] data, int off, int len)
          Like Parser.parseFrom(byte[], int, int), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(byte[] data, int off, int len, ExtensionRegistryLite extensionRegistry)
          Like Parser.parseFrom(ByteString, ExtensionRegistryLite), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(ByteString data)
          Like Parser.parseFrom(ByteString), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
          Like Parser.parseFrom(ByteString, ExtensionRegistryLite), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(CodedInputStream input)
          Like Parser.parseFrom(CodedInputStream), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(java.io.InputStream input)
          Like Parser.parseFrom(InputStream), but does not throw an exception if the message is missing required fields.
 MessageType parsePartialFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)
          Like Parser.parseFrom(InputStream, ExtensionRegistryLite), but does not throw an exception if the message is missing required fields.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.google.protobuf.Parser
parsePartialFrom
 

Constructor Detail

AbstractParser

public AbstractParser()
Method Detail

parsePartialFrom

public MessageType parsePartialFrom(CodedInputStream input)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(CodedInputStream), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(CodedInputStream input,
                             ExtensionRegistryLite extensionRegistry)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(CodedInputStream), but also parses extensions. The extensions that you want to be able to parse must be registered in extensionRegistry. Extensions not in the registry will be treated as unknown fields.

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(CodedInputStream input)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parses a message of MessageType from the input.

Note: The caller should call CodedInputStream.checkLastTagWas(int) after calling this to verify that the last tag seen was the appropriate end-group tag, or zero for EOF.

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialFrom

public MessageType parsePartialFrom(ByteString data,
                                    ExtensionRegistryLite extensionRegistry)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(ByteString, ExtensionRegistryLite), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialFrom

public MessageType parsePartialFrom(ByteString data)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(ByteString), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(ByteString data,
                             ExtensionRegistryLite extensionRegistry)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parses data as a message of MessageType. This is just a small wrapper around Parser.parseFrom(CodedInputStream, ExtensionRegistryLite).

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(ByteString data)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parses data as a message of MessageType. This is just a small wrapper around Parser.parseFrom(CodedInputStream).

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialFrom

public MessageType parsePartialFrom(byte[] data,
                                    int off,
                                    int len,
                                    ExtensionRegistryLite extensionRegistry)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(ByteString, ExtensionRegistryLite), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialFrom

public MessageType parsePartialFrom(byte[] data,
                                    int off,
                                    int len)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(byte[], int, int), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialFrom

public MessageType parsePartialFrom(byte[] data,
                                    ExtensionRegistryLite extensionRegistry)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(byte[], ExtensionRegistryLite), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialFrom

public MessageType parsePartialFrom(byte[] data)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(byte[]), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(byte[] data,
                             int off,
                             int len,
                             ExtensionRegistryLite extensionRegistry)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parses data as a message of MessageType. This is just a small wrapper around Parser.parseFrom(CodedInputStream, ExtensionRegistryLite).

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(byte[] data,
                             int off,
                             int len)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parses data as a message of MessageType. This is just a small wrapper around Parser.parseFrom(CodedInputStream).

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(byte[] data,
                             ExtensionRegistryLite extensionRegistry)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parses data as a message of MessageType. This is just a small wrapper around Parser.parseFrom(CodedInputStream, ExtensionRegistryLite).

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(byte[] data)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parses data as a message of MessageType. This is just a small wrapper around Parser.parseFrom(CodedInputStream).

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialFrom

public MessageType parsePartialFrom(java.io.InputStream input,
                                    ExtensionRegistryLite extensionRegistry)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(InputStream, ExtensionRegistryLite), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialFrom

public MessageType parsePartialFrom(java.io.InputStream input)
                                                 throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(InputStream), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(java.io.InputStream input,
                             ExtensionRegistryLite extensionRegistry)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parses a message of MessageType from input. This is just a small wrapper around Parser.parseFrom(CodedInputStream, ExtensionRegistryLite).

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseFrom

public MessageType parseFrom(java.io.InputStream input)
                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Parse a message of MessageType from input. This is just a small wrapper around Parser.parseFrom(CodedInputStream). Note that this method always reads the entire input (unless it throws an exception). If you want it to stop earlier, you will need to wrap your input in some wrapper stream that limits reading. Or, use MessageLite.writeDelimitedTo(java.io.OutputStream) to write your message and Parser.parseDelimitedFrom(InputStream) to read it.

Despite usually reading the entire input, this does not close the stream.

Specified by:
parseFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialDelimitedFrom

public MessageType parsePartialDelimitedFrom(java.io.InputStream input,
                                             ExtensionRegistryLite extensionRegistry)
                                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseDelimitedFrom(InputStream, ExtensionRegistryLite), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialDelimitedFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parsePartialDelimitedFrom

public MessageType parsePartialDelimitedFrom(java.io.InputStream input)
                                                          throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseDelimitedFrom(InputStream), but does not throw an exception if the message is missing required fields. Instead, a partial message is returned.

Specified by:
parsePartialDelimitedFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseDelimitedFrom

public MessageType parseDelimitedFrom(java.io.InputStream input,
                                      ExtensionRegistryLite extensionRegistry)
                                                   throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseDelimitedFrom(InputStream) but supporting extensions.

Specified by:
parseDelimitedFrom in interface Parser<MessageType extends MessageLite>
Throws:
InvalidProtocolBufferException

parseDelimitedFrom

public MessageType parseDelimitedFrom(java.io.InputStream input)
                                                   throws InvalidProtocolBufferException
Description copied from interface: Parser
Like Parser.parseFrom(InputStream), but does not read util EOF. Instead, the size of message (encoded as a varint) is read first, then the message data. Use MessageLite.writeDelimitedTo(java.io.OutputStream) to write messages in this format.

Specified by:
parseDelimitedFrom in interface Parser<MessageType extends MessageLite>
Returns:
True if successful, or false if the stream is at EOF when the method starts. Any other error (including reaching EOF during parsing) will cause an exception to be thrown.
Throws:
InvalidProtocolBufferException