1 package com.fasterxml.jackson.databind.ser.std;
2
3 import java.lang.reflect.Type;
4 import java.io.IOException;
5
6 import com.fasterxml.jackson.core.*;
7 import com.fasterxml.jackson.databind.*;
8 import com.fasterxml.jackson.databind.annotation.JacksonStdImpl;
9 import com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper;
10 import com.fasterxml.jackson.databind.jsontype.TypeSerializer;
11
12
19 @JacksonStdImpl
20 @SuppressWarnings("serial")
21 public class NullSerializer
22 extends StdSerializer<Object>
23 {
24 public final static NullSerializer instance = new NullSerializer();
25
26 private NullSerializer() { super(Object.class); }
27
28 @Override
29 public void serialize(Object value, JsonGenerator gen, SerializerProvider provider) throws IOException {
30 gen.writeNull();
31 }
32
33
39 @Override
40 public void serializeWithType(Object value, JsonGenerator gen, SerializerProvider serializers,
41 TypeSerializer typeSer)
42 throws IOException
43 {
44 gen.writeNull();
45 }
46
47 @Override
48 public JsonNode getSchema(SerializerProvider provider, Type typeHint) throws JsonMappingException {
49 return createSchemaNode("null");
50 }
51
52 @Override
53 public void acceptJsonFormatVisitor(JsonFormatVisitorWrapper visitor, JavaType typeHint) throws JsonMappingException {
54 visitor.expectNullFormat(typeHint);
55 }
56 }
57