Class ParametersSerializer<ParametersT extends Parameters,​SerializationT extends Serialization>


  • public abstract class ParametersSerializer<ParametersT extends Parameters,​SerializationT extends Serialization>
    extends java.lang.Object
    Serializes Parameters objects into Serialization objects of a certain kind.

    This class should eventually be in Tinks public API -- however, it might still change before that.

    • Method Detail

      • serializeParameters

        public abstract SerializationT serializeParameters​(ParametersT parameters)
                                                    throws java.security.GeneralSecurityException
        Throws:
        java.security.GeneralSecurityException
      • getParametersClass

        public java.lang.Class<ParametersT> getParametersClass()
      • getSerializationClass

        public java.lang.Class<SerializationT> getSerializationClass()
      • create

        public static <ParametersT extends Parameters,​SerializationT extends SerializationParametersSerializer<ParametersT,​SerializationT> create​(ParametersSerializer.ParametersSerializationFunction<ParametersT,​SerializationT> function,
                                                                                                                                                                java.lang.Class<ParametersT> parametersClass,
                                                                                                                                                                java.lang.Class<SerializationT> serializationClass)
        Creates a ParametersSerializer object.

        In order to create a ParametersSerializer object, one typically writes a function

        
         class MyClass {
           private static MySerialization serializeParameters(MyParameters Parameters)
                     throws GeneralSecurityException {
             ...
           }
         }
         
        This function can then be used to create a ParametersSerializer:
        
         ParametersSerializer<MyParameters, MySerialization> serializer =
               ParametersSerializer.create(MyClass::serializeParameters, MyParameters.class,
                                          MySerialization.class);