com.vaadin.flow.component.charts.model.serializers.TitleBeanSerializer Maven / Gradle / Ivy
package com.vaadin.flow.component.charts.model.serializers;
/*
* #%L
* Vaadin Charts
* %%
* Copyright (C) 2014 Vaadin Ltd
* %%
* This program is available under Commercial Vaadin Add-On License 3.0
* (CVALv3).
*
* See the file licensing.txt distributed with this software for more
* information about licensing.
*
* You should have received a copy of the CVALv3 along with this program.
* If not, see .
* #L%
*/
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.vaadin.flow.component.charts.model.Title;
import java.io.IOException;
/**
* Serializer for {@link Title}
*/
public class TitleBeanSerializer extends BeanSerializationDelegate {
@Override
public void serialize(Title bean, BeanSerializerDelegator serializer,
JsonGenerator jgen, SerializerProvider provider)
throws IOException {
jgen.writeStartObject();
if (bean != null && bean.getText() == null) {
jgen.writeNullField("text");
} else {
// write fields as per normal serialization rules
serializer.serializeFields(bean, jgen, provider);
}
jgen.writeEndObject();
}
@Override
public Class getBeanClass() {
return Title.class;
}
}