All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
io.prestosql.jdbc.$internal.jackson.datatype.guava.ser.GuavaOptionalSerializer Maven / Gradle / Ivy
package io.prestosql.jdbc.$internal.jackson.datatype.guava.ser;
import io.prestosql.jdbc.$internal.jackson.databind.*;
import io.prestosql.jdbc.$internal.jackson.databind.jsontype.TypeSerializer;
import io.prestosql.jdbc.$internal.jackson.databind.ser.std.ReferenceTypeSerializer;
import io.prestosql.jdbc.$internal.jackson.databind.type.ReferenceType;
import io.prestosql.jdbc.$internal.jackson.databind.util.NameTransformer;
import io.prestosql.jdbc.$internal.guava.base.Optional;
public class GuavaOptionalSerializer
extends ReferenceTypeSerializer> // since 2.9
{
private static final long serialVersionUID = 1L;
/*
/**********************************************************
/* Life-cycle
/**********************************************************
*/
public GuavaOptionalSerializer(ReferenceType fullType, boolean staticTyping,
TypeSerializer vts, JsonSerializer ser)
{
super(fullType, staticTyping, vts, ser);
}
public GuavaOptionalSerializer(GuavaOptionalSerializer base, BeanProperty property,
TypeSerializer vts, JsonSerializer valueSer, NameTransformer unwrapper,
Object suppressableValue, boolean suppressNulls)
{
super(base, property, vts, valueSer, unwrapper,
suppressableValue, suppressNulls);
}
@Override
protected ReferenceTypeSerializer> withResolved(BeanProperty prop,
TypeSerializer vts, JsonSerializer valueSer,
NameTransformer unwrapper)
{
if ((_property == prop)
&& (_valueTypeSerializer == vts) && (_valueSerializer == valueSer)
&& (_unwrapper == unwrapper)) {
return this;
}
return new GuavaOptionalSerializer(this, prop, vts, valueSer, unwrapper,
_suppressableValue, _suppressNulls);
}
@Override
public ReferenceTypeSerializer> withContentInclusion(Object suppressableValue,
boolean suppressNulls)
{
return new GuavaOptionalSerializer(this, _property, _valueTypeSerializer,
_valueSerializer, _unwrapper,
suppressableValue, suppressNulls);
}
/*
/**********************************************************
/* Abstract method impls
/**********************************************************
*/
@Override
protected boolean _isValuePresent(Optional value) {
return value.isPresent();
}
@Override
protected Object _getReferenced(Optional value) {
return value.get();
}
@Override
protected Object _getReferencedIfPresent(Optional value) {
return value.isPresent() ? value.get() : null;
}
}