下面列出了com.fasterxml.jackson.core.JsonGenerator#canOmitFields ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public void serializeAsField(
final Object object,
final JsonGenerator generator,
final SerializerProvider provider,
final PropertyWriter writer) throws Exception {
if (generator.canOmitFields()) {
final Object value = writer.getMember().getValue(object);
if (value instanceof RntbdToken && !((RntbdToken) value).isPresent()) {
return;
}
}
writer.serializeAsField(object, generator, provider);
}
@Override
public void serializeAsOmittedField(Object map, JsonGenerator gen,
SerializerProvider provider) throws Exception
{
if (!gen.canOmitFields()) {
gen.writeOmittedField(getName());
}
}
/**
* Method called to indicate that serialization of a field was omitted due
* to filtering, in cases where backend data format does not allow basic
* omission.
*
* @since 2.3
*/
@Override
public void serializeAsOmittedField(Object bean, JsonGenerator gen,
SerializerProvider prov) throws Exception {
if (!gen.canOmitFields()) {
gen.writeOmittedField(_name.getValue());
}
}
@Deprecated
@Override
public void serializeAsField(Object bean, JsonGenerator jgen,
SerializerProvider provider, BeanPropertyWriter writer) throws Exception
{
if (include(writer)) {
writer.serializeAsField(bean, jgen, provider);
} else if (!jgen.canOmitFields()) { // since 2.3
writer.serializeAsOmittedField(bean, jgen, provider);
}
}
@Override
public void serializeAsField(Object pojo, JsonGenerator jgen,
SerializerProvider provider, PropertyWriter writer)
throws Exception
{
if (include(writer)) {
writer.serializeAsField(pojo, jgen, provider);
} else if (!jgen.canOmitFields()) { // since 2.3
writer.serializeAsOmittedField(pojo, jgen, provider);
}
}