public abstract class ParametersSerializer<ParametersT extends Parameters,SerializationT extends Serialization> extends Object
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.
| Modifier and Type | Class and Description |
|---|---|
static interface |
ParametersSerializer.ParametersSerializationFunction<ParametersT extends Parameters,SerializationT extends Serialization>
A function which serializes a Parameters object.
|
| Modifier and Type | Method and Description |
|---|---|
static <ParametersT extends Parameters,SerializationT extends Serialization> |
create(ParametersSerializer.ParametersSerializationFunction<ParametersT,SerializationT> function,
Class<ParametersT> parametersClass,
Class<SerializationT> serializationClass)
Creates a ParametersSerializer object.
|
Class<ParametersT> |
getParametersClass() |
Class<SerializationT> |
getSerializationClass() |
abstract SerializationT |
serializeParameters(ParametersT parameters) |
public abstract SerializationT serializeParameters(ParametersT parameters) throws GeneralSecurityException
GeneralSecurityExceptionpublic Class<ParametersT> getParametersClass()
public Class<SerializationT> getSerializationClass()
public static <ParametersT extends Parameters,SerializationT extends Serialization> ParametersSerializer<ParametersT,SerializationT> create(ParametersSerializer.ParametersSerializationFunction<ParametersT,SerializationT> function, Class<ParametersT> parametersClass, Class<SerializationT> serializationClass)
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);