Class TernaryMethodMarshaller<T,M1,M2,M3>

Type Parameters:
T - the target type of this marshaller
M1 - the first component accessor method return type
M2 - the second component accessor method return type
M3 - the third component accessor method return type
All Implemented Interfaces:
Function<Object[],T>, org.infinispan.protostream.BaseMarshaller<T>, org.infinispan.protostream.ProtobufTagMarshaller<T>, Marshallable<T>, ProtoStreamMarshaller<T>, Readable<T>, Writable<T>

public class TernaryMethodMarshaller<T,M1,M2,M3> extends TernaryMemberMarshaller<T,Method,M1,M2,M3>
Generic marshaller based on three non-public accessor methods.
Author:
Paul Ferraro
  • Constructor Details

    • TernaryMethodMarshaller

      public TernaryMethodMarshaller(Class<? extends T> type, Class<M1> member1Type, Class<M2> member2Type, Class<M3> member3Type, TriFunction<M1,M2,M3,T> factory)
      Creates a marshaller for the specified methods.
      Parameters:
      type - the marshalled object type
      member1Type - the former member type
      member2Type - the latter member type
      member3Type - the latter member type
      factory - the marshalled object factory