Class FieldMarshaller<T>
java.lang.Object
org.wildfly.clustering.marshalling.protostream.reflect.FieldMarshaller<T>
- Type Parameters:
T- the target type of this marshaller
- All Implemented Interfaces:
org.infinispan.protostream.BaseMarshaller<T>, org.infinispan.protostream.ProtobufTagMarshaller<T>, Marshallable<T>, ProtoStreamMarshaller<T>, Readable<T>, Writable<T>
A very generic marshaller for use with classes whose state is not publicly available for reading or writing except by pure reflection.
- Author:
- Paul Ferraro
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.infinispan.protostream.ProtobufTagMarshaller
org.infinispan.protostream.ProtobufTagMarshaller.OperationContext, org.infinispan.protostream.ProtobufTagMarshaller.ReadContext, org.infinispan.protostream.ProtobufTagMarshaller.WriteContext -
Field Summary
Fields inherited from interface org.infinispan.protostream.BaseMarshaller
EMPTY -
Constructor Summary
ConstructorsConstructorDescriptionFieldMarshaller(Class<? extends T> type, Class<?>... memberTypes) Creates a marshaller for the specified fields of the specified class.Creates a field marshaller for the specified fields of the specified class using the specified factory -
Method Summary
Modifier and TypeMethodDescriptionReturns the type of object handled by this marshallable instance.readFrom(ProtoStreamReader reader) Reads an object from the specified reader.voidwriteTo(ProtoStreamWriter writer, T source) Writes the specified object to the specified writer.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.infinispan.protostream.BaseMarshaller
getSubClassNamesMethods inherited from interface Marshallable
sizeMethods inherited from interface ProtoStreamMarshaller
getTypeName, read, wrap, wrap, write
-
Constructor Details
-
FieldMarshaller
-
FieldMarshaller
public FieldMarshaller(Class<? extends T> type, Supplier<? extends T> factory, Class<?>... memberTypes) Creates a field marshaller for the specified fields of the specified class using the specified factory- Parameters:
type- a marshalled object typefactory- a factory for creating the fieldmemberTypes- the member types
-
-
Method Details
-
getJavaClass
Description copied from interface:MarshallableReturns the type of object handled by this marshallable instance.- Specified by:
getJavaClassin interfaceorg.infinispan.protostream.BaseMarshaller<T>- Specified by:
getJavaClassin interfaceMarshallable<T>- Returns:
- the type of object handled by this marshallable instance.
-
readFrom
Description copied from interface:ReadableReads an object from the specified reader.- Specified by:
readFromin interfaceReadable<T>- Parameters:
reader- a ProtoStream reader- Returns:
- the read object
- Throws:
IOException- if the object could not be read
-
writeTo
Description copied from interface:WritableWrites the specified object to the specified writer.- Specified by:
writeToin interfaceWritable<T>- Parameters:
writer- a ProtoStream writersource- the object to be written- Throws:
IOException- if the object could not be written
-