| package org.codehaus.jackson.node; |
| |
| import java.io.IOException; |
| |
| import org.codehaus.jackson.*; |
| import org.codehaus.jackson.map.SerializerProvider; |
| |
| /** |
| * This singleton value class is used to contain explicit JSON null |
| * value. |
| */ |
| public final class NullNode |
| extends ValueNode |
| { |
| // // Just need a fly-weight singleton |
| |
| public final static NullNode instance = new NullNode(); |
| |
| private NullNode() { } |
| |
| public static NullNode getInstance() { return instance; } |
| |
| @Override public JsonToken asToken() { return JsonToken.VALUE_NULL; } |
| |
| @Override |
| public boolean isNull() { return true; } |
| |
| @Override |
| public String asText() { |
| return "null"; |
| } |
| |
| @Override |
| public int asInt(int defaultValue) { |
| return 0; |
| } |
| @Override |
| public long asLong(long defaultValue) { |
| return 0L; |
| } |
| @Override |
| public double asDouble(double defaultValue) { |
| return 0.0; |
| } |
| |
| @Override |
| public final void serialize(JsonGenerator jg, SerializerProvider provider) |
| throws IOException, JsonProcessingException |
| { |
| jg.writeNull(); |
| } |
| |
| @Override |
| public boolean equals(Object o) |
| { |
| return (o == this); |
| } |
| } |