Interface ProtoStreamReader
- All Superinterfaces:
ProtoStreamOperation, org.infinispan.protostream.TagReader
- All Known Implementing Classes:
DefaultProtoStreamReader, OffsetProtoStreamReader
public interface ProtoStreamReader
extends ProtoStreamOperation, org.infinispan.protostream.TagReader
A
TagReader with the additional ability to read an arbitrary embedded object.- Author:
- Paul Ferraro
-
Nested Class Summary
Nested classes/interfaces inherited from interface ProtoStreamOperation
ProtoStreamOperation.Context -
Method Summary
Modifier and TypeMethodDescription<T> FieldSetReader<T> createFieldSetReader(FieldReadable<T> reader, int startIndex) Returns a reader for a field set whose fields start at the specified index.intReturns the tag of the current field, or 0 ifTagReader.readTag()was not yet called for the next field.readAny()Reads an object of an arbitrary type from this reader.default <T> TReads an object of an arbitrary type from this reader, cast to the specified type.default <E extends Enum<E>>
EReads an num of the specified type from this reader.intDeprecated.longDeprecated.UseTagReader.readSFixed64()instead.intDeprecated.UseTagReader.readUInt32()orTagReader.readSInt32()longDeprecated.UseTagReader.readUInt64()orTagReader.readSInt64()<T> TreadObject(Class<T> targetClass) Reads an object of the specified type from this reader.default booleanskipField(org.infinispan.protostream.descriptors.WireType type) Skips over the field of the specified wire type.Methods inherited from interface ProtoStreamOperation
findMarshaller, getContext, getSerializationContextMethods inherited from interface org.infinispan.protostream.TagReader
checkLastTagWas, fullBufferArray, fullBufferInputStream, isAtEnd, isInputStream, popLimit, pushLimit, readBool, readByteArray, readByteBuffer, readByteTag, readDouble, readEnum, readFloat, readSFixed32, readSFixed64, readSInt32, readSInt64, readString, readTag, readUInt32, readUInt64, skipField
-
Method Details
-
getCurrentTag
int getCurrentTag()Returns the tag of the current field, or 0 ifTagReader.readTag()was not yet called for the next field.- Returns:
- the tag of the current field.
-
skipField
Skips over the field of the specified wire type.- Parameters:
type- the expected wire type of the field to skip.- Returns:
- true, if the current tag is a normal field, false otherwise
- Throws:
IOException- if the stream does not conform to the wire type of the skipped field.
-
createFieldSetReader
Returns a reader for a field set whose fields start at the specified index.- Type Parameters:
T- the field builder type- Parameters:
reader- a field readerstartIndex- the start index for the field set- Returns:
- a field set reader
-
readAny
Reads an object of an arbitrary type from this reader.- Returns:
- a supplier of the unmarshalled object
- Throws:
IOException- if the object could not be read with the associated marshaller.
-
readAny
Reads an object of an arbitrary type from this reader, cast to the specified type.- Type Parameters:
T- the target type- Parameters:
targetClass- the target type- Returns:
- a supplier of the unmarshalled object
- Throws:
IOException- if the object could not be read with the associated marshaller.
-
readObject
Reads an object of the specified type from this reader.- Type Parameters:
T- the type of the associated marshaller- Parameters:
targetClass- the class of the associated marshaller- Returns:
- the unmarshalled object
- Throws:
IOException- if no marshaller is associated with the specified class, or if the object could not be read with the associated marshaller.
-
readEnum
Reads an num of the specified type from this reader.- Type Parameters:
E- the enum type of the associated marshaller- Parameters:
enumClass- the class of the associated marshaller- Returns:
- the unmarshalled enum
- Throws:
IOException- if no marshaller is associated with the specified enum class, or if the enum could not be read with the associated marshaller.
-
readInt32
Deprecated.UseTagReader.readUInt32()orTagReader.readSInt32()Deprecated to discourage use.- Specified by:
readInt32in interfaceorg.infinispan.protostream.TagReader- Throws:
IOException
-
readFixed32
Deprecated.UseTagReader.readSFixed32()instead.Deprecated to discourage use.- Specified by:
readFixed32in interfaceorg.infinispan.protostream.TagReader- Throws:
IOException
-
readInt64
Deprecated.UseTagReader.readUInt64()orTagReader.readSInt64()Deprecated to discourage use.- Specified by:
readInt64in interfaceorg.infinispan.protostream.TagReader- Throws:
IOException
-
readFixed64
Deprecated.UseTagReader.readSFixed64()instead.Deprecated to discourage use.- Specified by:
readFixed64in interfaceorg.infinispan.protostream.TagReader- Throws:
IOException
-
TagReader.readSFixed32()instead.