Example usage for com.fasterxml.jackson.databind.util TokenBuffer getCodec

List of usage examples for com.fasterxml.jackson.databind.util TokenBuffer getCodec

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind.util TokenBuffer getCodec.

Prototype

public abstract ObjectCodec getCodec();

Source Link

Document

Method for accessing the object used for writing Java object as Json content (using method #writeObject ).

Usage

From source file:org.mongojack.internal.EmbeddedObjectSerializer.java

protected void writeEmbeddedObject(T value, JsonGenerator jgen) throws IOException {
    if (jgen instanceof BsonObjectGenerator || jgen instanceof DBEncoderBsonGenerator) {
        jgen.writeObject(value);/*from w  ww .j  ava 2  s  . co  m*/
    } else if (jgen instanceof TokenBuffer) {
        TokenBuffer buffer = (TokenBuffer) jgen;
        ObjectCodec codec = buffer.getCodec();
        buffer.setCodec(null);
        buffer.writeObject(value);
        buffer.setCodec(codec);
    } else {
        String message = "JsonGenerator of type " + jgen.getClass().getName() + " not supported: "
                + getClass().getName() + " is designed for use only with " + BsonObjectGenerator.class.getName()
                + " or " + DBEncoderBsonGenerator.class.getName() + " or " + TokenBuffer.class.getName();
        throw new IllegalArgumentException(message);
    }
}