Java tutorial
/******************************************************************************* * Copyright (c) 2010-2014, Daniel Stein, Istvan Rath and Daniel Varro * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Daniel Stein - implementation for Mongo *******************************************************************************/ package eu.mondo.driver.mongo.util; import java.io.IOException; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.SerializerProvider; import com.fasterxml.jackson.databind.jsontype.TypeSerializer; /** * * @author Dniel Stein * */ public class MStatementSerializer extends JsonSerializer<MStatement> { @Override public void serializeWithType(MStatement statement, JsonGenerator generator, SerializerProvider provider, TypeSerializer serializer) throws IOException, JsonProcessingException { serializer.writeTypePrefixForScalar(statement, generator); serialize(statement, generator, provider); serializer.writeTypeSuffixForScalar(statement, generator); } @Override public void serialize(MStatement st, JsonGenerator generator, SerializerProvider provider) throws IOException, JsonProcessingException { generator.writeStartObject(); generator.writeStringField("subject", st.getSubject()); generator.writeStringField("predicate", st.getPredicate()); generator.writeStringField("object", st.getObject()); generator.writeStringField("subjectBI", st.getSubjectBI().toString(10)); generator.writeStringField("predicateBI", st.getPredicateBI().toString(10)); generator.writeStringField("objectBI", st.getObjectBI().toString(10)); generator.writeEndObject(); generator.close(); } }