Package org.infinispan.protostream
Interface ProtobufTagMarshaller<T>
-
- All Superinterfaces:
BaseMarshaller<T>
- All Known Subinterfaces:
RawProtobufMarshaller<T>
public interface ProtobufTagMarshaller<T> extends BaseMarshaller<T>
A marshaller for message types that has direct access to the low level Protobuf streams (TagReader/TagWriter) to freely read and write tags. Cannot be used for enums because enums are not top level objects. The read/write access to the tag stream is not verified against a Protobuf schema definition as it would normally happen in case ofMessageMarshallerso the implementer must take care to follow the schema. This can also be used to provide more flexible or generic marshallers that are able to handle multiple types.- Since:
- 4.4
- Author:
- anistor@redhat.com
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceProtobufTagMarshaller.OperationContextBase interface for marshalling operation contexts.static interfaceProtobufTagMarshaller.ReadContextOperation context of unmarshalling operations.static interfaceProtobufTagMarshaller.WriteContextOperation context of marshalling operations.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Tread(ProtobufTagMarshaller.ReadContext ctx)voidwrite(ProtobufTagMarshaller.WriteContext ctx, T t)-
Methods inherited from interface org.infinispan.protostream.BaseMarshaller
getJavaClass, getTypeName
-
-
-
-
Method Detail
-
read
T read(ProtobufTagMarshaller.ReadContext ctx) throws IOException
- Throws:
IOException
-
write
void write(ProtobufTagMarshaller.WriteContext ctx, T t) throws IOException
- Throws:
IOException
-
-