Konwersja/modyfikacja obiektów przy serializacji. Pozwala na podmianę obiektu na obiekt innego typu przed serializacją albo na modyfikację jego wartości.
package amage.rest.dto.v1;
import amage.rest.dto.v1.WrappedObject.WrappedObjectSerializationConverter;
import amage.rest.util.v1.MapperProvider;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonView;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.util.StdConverter;
import java.io.IOException;
@JsonSerialize(converter = FooSerializationConverter.class)
public class Foo {
@JsonIgnore
private Object originalObject;
private String serializedObject;
//whatever
public static class FooSerializationConverter extends StdConverter<Foo,Foo> {
@Override
public Foo convert(Foo value) {
try {
value.serializedObject="whatever";
return value;
}
catch (JsonProcessingException ex) {
throw new ConverterException(ex);
}
}
}
}