Package com.google.protobuf
Interface Reader
- All Known Implementing Classes:
BinaryReader,BinaryReader.SafeHeapReader,CodedInputStreamReader
A reader of fields from a serialized protobuf message.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intValue used to indicate that the end of input has been reached.static final intValue used to indicate that the reader does not know the tag about the field. -
Method Summary
Modifier and TypeMethodDescriptionintGets the field number for the current field being read.intgetTag()Gets the wire tag of the current field.<T> voidmergeGroupField(T target, Schema<T> schema, ExtensionRegistryLite extensionRegistry) Read a group field from the wire format and merge the results into the given target.<T> voidmergeMessageField(T target, Schema<T> schema, ExtensionRegistryLite extensionRegistry) Read a message field from the wire format and merge the results into the given target.booleanreadBool()Reads and returns the next field of typeBOOLand advances the reader to the next field.voidreadBoolList(List<Boolean> target) Reads the next field of typeBOOL_LISTorBOOL_LIST_PACKEDand advances the reader to the next field.Reads and returns the next field of typeBYTESand advances the reader to the next field.voidreadBytesList(List<ByteString> target) Reads the next field of typeBYTES_LISTand advances the reader to the next field.doubleReads and returns the next field of typeDOUBLEand advances the reader to the next field.voidreadDoubleList(List<Double> target) Reads the next field of typeDOUBLE_LISTorDOUBLE_LIST_PACKEDand advances the reader to the next field.intreadEnum()Reads and returns the next field of typeENUMand advances the reader to the next field.voidreadEnumList(List<Integer> target) Reads the next field of typeENUM_LISTorENUM_LIST_PACKEDand advances the reader to the next field.intReads and returns the next field of typeFIXED32and advances the reader to the next field.voidreadFixed32List(List<Integer> target) Reads the next field of typeFIXED32_LISTorFIXED32_LIST_PACKEDand advances the reader to the next field.longReads and returns the next field of typeFIXED64and advances the reader to the next field.voidreadFixed64List(List<Long> target) Reads the next field of typeFIXED64_LISTorFIXED64_LIST_PACKEDand advances the reader to the next field.floatReads and returns the next field of typeFLOATand advances the reader to the next field.voidreadFloatList(List<Float> target) Reads the next field of typeFLOAT_LISTorFLOAT_LIST_PACKEDand advances the reader to the next field.<T> TreadGroup(Class<T> clazz, ExtensionRegistryLite extensionRegistry) Deprecated.groups fields are deprecated.<T> TreadGroupBySchemaWithCheck(Schema<T> schema, ExtensionRegistryLite extensionRegistry) Deprecated.<T> voidreadGroupList(List<T> target, Schema<T> targetType, ExtensionRegistryLite extensionRegistry) Deprecated.<T> voidreadGroupList(List<T> target, Class<T> targetType, ExtensionRegistryLite extensionRegistry) Deprecated.groups fields are deprecated.intReads and returns the next field of typeINT32and advances the reader to the next field.voidreadInt32List(List<Integer> target) Reads the next field of typeINT32_LISTorINT32_LIST_PACKEDand advances the reader to the next field.longReads and returns the next field of typeINT64and advances the reader to the next field.voidreadInt64List(List<Long> target) Reads the next field of typeINT64_LISTorINT64_LIST_PACKEDand advances the reader to the next field.<K,V> void readMap(Map<K, V> target, MapEntryLite.Metadata<K, V> mapDefaultEntry, ExtensionRegistryLite extensionRegistry) Reads the next field of typeMAPand advances the reader to the next field.<T> TreadMessage(Class<T> clazz, ExtensionRegistryLite extensionRegistry) Reads and returns the next field of typeMESSAGEand advances the reader to the next field.<T> TreadMessageBySchemaWithCheck(Schema<T> schema, ExtensionRegistryLite extensionRegistry) <T> voidreadMessageList(List<T> target, Schema<T> schema, ExtensionRegistryLite extensionRegistry) Reads the next field of typeMESSAGE_LISTand advances the reader to the next field.<T> voidreadMessageList(List<T> target, Class<T> targetType, ExtensionRegistryLite extensionRegistry) intReads and returns the next field of typeSFIXED32and advances the reader to the next field.voidreadSFixed32List(List<Integer> target) Reads the next field of typeSFIXED32_LISTorSFIXED32_LIST_PACKEDand advances the reader to the next field.longReads and returns the next field of typeSFIXED64and advances the reader to the next field.voidreadSFixed64List(List<Long> target) Reads the next field of typeSFIXED64_LISTorSFIXED64_LIST_PACKEDand advances the reader to the next field.intReads and returns the next field of typeSINT32and advances the reader to the next field.voidreadSInt32List(List<Integer> target) Reads the next field of typeSINT32_LISTorSINT32_LIST_PACKEDand advances the reader to the next field.longReads and returns the next field of typeSINT64and advances the reader to the next field.voidreadSInt64List(List<Long> target) Reads the next field of typeSINT64_LISTorSINT64_LIST_PACKEDand advances the reader to the next field.Reads and returns the next field of typeSTRINGand advances the reader to the next field.voidreadStringList(List<String> target) Reads the next field of typeSTRING_LISTand advances the reader to the next field.voidreadStringListRequireUtf8(List<String> target) Reads the next field of typeSTRING_LISTand advances the reader to the next field.Reads and returns the next field of typeSTRINGand advances the reader to the next field.intReads and returns the next field of typeUINT32and advances the reader to the next field.voidreadUInt32List(List<Integer> target) Reads the next field of typeUINT32_LISTorUINT32_LIST_PACKEDand advances the reader to the next field.longReads and returns the next field of typeUINT64and advances the reader to the next field.voidreadUInt64List(List<Long> target) Reads the next field of typeUINT64_LISTorUINT64_LIST_PACKEDand advances the reader to the next field.booleanbooleanSkips the current field and advances the reader to the next field.
-
Field Details
-
READ_DONE
static final int READ_DONEValue used to indicate that the end of input has been reached.- See Also:
-
TAG_UNKNOWN
static final int TAG_UNKNOWNValue used to indicate that the reader does not know the tag about the field.- See Also:
-
-
Method Details
-
shouldDiscardUnknownFields
boolean shouldDiscardUnknownFields() -
getFieldNumber
Gets the field number for the current field being read.TODO: Rename it to make it more explicit about the side effect on the underlying buffer.
- Returns:
- the current field number or
READ_DONEif the end of input has been reached. - Throws:
IOException
-
getTag
int getTag()Gets the wire tag of the current field.- Returns:
- the current wire tag or
TAG_UNKNOWNif the reader does not know the tag of the current field.
-
skipField
Skips the current field and advances the reader to the next field.- Returns:
trueif there are more fields orfalseif the end of input has been reached.- Throws:
IOException
-
readDouble
Reads and returns the next field of typeDOUBLEand advances the reader to the next field.- Throws:
IOException
-
readFloat
Reads and returns the next field of typeFLOATand advances the reader to the next field.- Throws:
IOException
-
readUInt64
Reads and returns the next field of typeUINT64and advances the reader to the next field.- Throws:
IOException
-
readInt64
Reads and returns the next field of typeINT64and advances the reader to the next field.- Throws:
IOException
-
readInt32
Reads and returns the next field of typeINT32and advances the reader to the next field.- Throws:
IOException
-
readFixed64
Reads and returns the next field of typeFIXED64and advances the reader to the next field.- Throws:
IOException
-
readFixed32
Reads and returns the next field of typeFIXED32and advances the reader to the next field.- Throws:
IOException
-
readBool
Reads and returns the next field of typeBOOLand advances the reader to the next field.- Throws:
IOException
-
readString
Reads and returns the next field of typeSTRINGand advances the reader to the next field. If the stream contains malformed UTF-8, replace the offending bytes with the standard UTF-8 replacement character.- Throws:
IOException
-
readStringRequireUtf8
Reads and returns the next field of typeSTRINGand advances the reader to the next field. If the stream contains malformed UTF-8, throw exceptionInvalidProtocolBufferException.- Throws:
IOException
-
readMessageBySchemaWithCheck
<T> T readMessageBySchemaWithCheck(Schema<T> schema, ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
readMessage
Reads and returns the next field of typeMESSAGEand advances the reader to the next field.- Throws:
IOException
-
readGroup
@Deprecated <T> T readGroup(Class<T> clazz, ExtensionRegistryLite extensionRegistry) throws IOException Deprecated.groups fields are deprecated.Reads and returns the next field of typeGROUPand advances the reader to the next field.- Throws:
IOException
-
readGroupBySchemaWithCheck
@Deprecated <T> T readGroupBySchemaWithCheck(Schema<T> schema, ExtensionRegistryLite extensionRegistry) throws IOException Deprecated.- Throws:
IOException
-
mergeMessageField
<T> void mergeMessageField(T target, Schema<T> schema, ExtensionRegistryLite extensionRegistry) throws IOException Read a message field from the wire format and merge the results into the given target.- Throws:
IOException
-
mergeGroupField
<T> void mergeGroupField(T target, Schema<T> schema, ExtensionRegistryLite extensionRegistry) throws IOException Read a group field from the wire format and merge the results into the given target.- Throws:
IOException
-
readBytes
Reads and returns the next field of typeBYTESand advances the reader to the next field.- Throws:
IOException
-
readUInt32
Reads and returns the next field of typeUINT32and advances the reader to the next field.- Throws:
IOException
-
readEnum
Reads and returns the next field of typeENUMand advances the reader to the next field.- Throws:
IOException
-
readSFixed32
Reads and returns the next field of typeSFIXED32and advances the reader to the next field.- Throws:
IOException
-
readSFixed64
Reads and returns the next field of typeSFIXED64and advances the reader to the next field.- Throws:
IOException
-
readSInt32
Reads and returns the next field of typeSINT32and advances the reader to the next field.- Throws:
IOException
-
readSInt64
Reads and returns the next field of typeSINT64and advances the reader to the next field.- Throws:
IOException
-
readDoubleList
Reads the next field of typeDOUBLE_LISTorDOUBLE_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readFloatList
Reads the next field of typeFLOAT_LISTorFLOAT_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readUInt64List
Reads the next field of typeUINT64_LISTorUINT64_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readInt64List
Reads the next field of typeINT64_LISTorINT64_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readInt32List
Reads the next field of typeINT32_LISTorINT32_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readFixed64List
Reads the next field of typeFIXED64_LISTorFIXED64_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readFixed32List
Reads the next field of typeFIXED32_LISTorFIXED32_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readBoolList
Reads the next field of typeBOOL_LISTorBOOL_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readStringList
Reads the next field of typeSTRING_LISTand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readStringListRequireUtf8
Reads the next field of typeSTRING_LISTand advances the reader to the next field. If the stream contains malformed UTF-8, throw exceptionInvalidProtocolBufferException.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readMessageList
<T> void readMessageList(List<T> target, Schema<T> schema, ExtensionRegistryLite extensionRegistry) throws IOException Reads the next field of typeMESSAGE_LISTand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.targetType- the type of the elements stored in thetargetlist.- Throws:
IOException
-
readMessageList
<T> void readMessageList(List<T> target, Class<T> targetType, ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
readGroupList
@Deprecated <T> void readGroupList(List<T> target, Class<T> targetType, ExtensionRegistryLite extensionRegistry) throws IOException Deprecated.groups fields are deprecated.Reads the next field of typeGROUP_LISTand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.targetType- the type of the elements stored in thetargetlist.- Throws:
IOException
-
readGroupList
@Deprecated <T> void readGroupList(List<T> target, Schema<T> targetType, ExtensionRegistryLite extensionRegistry) throws IOException Deprecated.- Throws:
IOException
-
readBytesList
Reads the next field of typeBYTES_LISTand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readUInt32List
Reads the next field of typeUINT32_LISTorUINT32_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readEnumList
Reads the next field of typeENUM_LISTorENUM_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readSFixed32List
Reads the next field of typeSFIXED32_LISTorSFIXED32_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readSFixed64List
Reads the next field of typeSFIXED64_LISTorSFIXED64_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readSInt32List
Reads the next field of typeSINT32_LISTorSINT32_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readSInt64List
Reads the next field of typeSINT64_LISTorSINT64_LIST_PACKEDand advances the reader to the next field.- Parameters:
target- the list that will receive the read values.- Throws:
IOException
-
readMap
<K,V> void readMap(Map<K, V> target, MapEntryLite.Metadata<K, throws IOExceptionV> mapDefaultEntry, ExtensionRegistryLite extensionRegistry) Reads the next field of typeMAPand advances the reader to the next field.- Parameters:
target- the mutable map that will receive the read values.mapDefaultEntry- the default entry of the map field.extensionRegistry- the extension registry for parsing message value fields.- Throws:
IOException
-