package com.fasterxml.jackson.databind.jsonFormatVisitors;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.SerializerProvider;
Interface for visitor callbacks, when type in question can be any of
legal JSON types.
In most cases it will make more sense to extend Base
instead of directly implementing this interface.
/**
* Interface for visitor callbacks, when type in question can be any of
* legal JSON types.
*<p>
* In most cases it will make more sense to extend {@link JsonFormatVisitorWrapper.Base}
* instead of directly implementing this interface.
*/
public interface JsonFormatVisitorWrapper extends JsonFormatVisitorWithSerializerProvider
{
Params: - type – Declared type of visited property (or List element) in Java
/**
* @param type Declared type of visited property (or List element) in Java
*/
public JsonObjectFormatVisitor expectObjectFormat(JavaType type) throws JsonMappingException;
Params: - type – Declared type of visited property (or List element) in Java
/**
* @param type Declared type of visited property (or List element) in Java
*/
public JsonArrayFormatVisitor expectArrayFormat(JavaType type) throws JsonMappingException;
Params: - type – Declared type of visited property (or List element) in Java
/**
* @param type Declared type of visited property (or List element) in Java
*/
public JsonStringFormatVisitor expectStringFormat(JavaType type) throws JsonMappingException;
Params: - type – Declared type of visited property (or List element) in Java
/**
* @param type Declared type of visited property (or List element) in Java
*/
public JsonNumberFormatVisitor expectNumberFormat(JavaType type) throws JsonMappingException;
Params: - type – Declared type of visited property (or List element) in Java
/**
* @param type Declared type of visited property (or List element) in Java
*/
public JsonIntegerFormatVisitor expectIntegerFormat(JavaType type) throws JsonMappingException;
Params: - type – Declared type of visited property (or List element) in Java
/**
* @param type Declared type of visited property (or List element) in Java
*/
public JsonBooleanFormatVisitor expectBooleanFormat(JavaType type) throws JsonMappingException;
Params: - type – Declared type of visited property (or List element) in Java
/**
* @param type Declared type of visited property (or List element) in Java
*/
public JsonNullFormatVisitor expectNullFormat(JavaType type) throws JsonMappingException;
Params: - type – Declared type of visited property (or List element) in Java
/**
* @param type Declared type of visited property (or List element) in Java
*/
public JsonAnyFormatVisitor expectAnyFormat(JavaType type) throws JsonMappingException;
Method called when type is of Java Map
type, and will be serialized as a JSON Object. Since: 2.2
/**
* Method called when type is of Java {@link java.util.Map} type, and will
* be serialized as a JSON Object.
*
* @since 2.2
*/
public JsonMapFormatVisitor expectMapFormat(JavaType type) throws JsonMappingException;
Empty "no-op" implementation of JsonFormatVisitorWrapper
, suitable for sub-classing. Does implement setProvider(SerializerProvider)
and getProvider()
as expected; other methods simply return null and do nothing. Since: 2.5
/**
* Empty "no-op" implementation of {@link JsonFormatVisitorWrapper}, suitable for
* sub-classing. Does implement {@link #setProvider(SerializerProvider)} and
* {@link #getProvider()} as expected; other methods simply return null
* and do nothing.
*
* @since 2.5
*/
public static class Base implements JsonFormatVisitorWrapper {
protected SerializerProvider _provider;
public Base() { }
public Base(SerializerProvider p) {
_provider = p;
}
@Override
public SerializerProvider getProvider() {
return _provider;
}
@Override
public void setProvider(SerializerProvider p) {
_provider = p;
}
@Override
public JsonObjectFormatVisitor expectObjectFormat(JavaType type)
throws JsonMappingException {
return null;
}
@Override
public JsonArrayFormatVisitor expectArrayFormat(JavaType type)
throws JsonMappingException {
return null;
}
@Override
public JsonStringFormatVisitor expectStringFormat(JavaType type)
throws JsonMappingException {
return null;
}
@Override
public JsonNumberFormatVisitor expectNumberFormat(JavaType type)
throws JsonMappingException {
return null;
}
@Override
public JsonIntegerFormatVisitor expectIntegerFormat(JavaType type)
throws JsonMappingException {
return null;
}
@Override
public JsonBooleanFormatVisitor expectBooleanFormat(JavaType type)
throws JsonMappingException {
return null;
}
@Override
public JsonNullFormatVisitor expectNullFormat(JavaType type)
throws JsonMappingException {
return null;
}
@Override
public JsonAnyFormatVisitor expectAnyFormat(JavaType type)
throws JsonMappingException {
return null;
}
@Override
public JsonMapFormatVisitor expectMapFormat(JavaType type)
throws JsonMappingException {
return null;
}
}
}