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 org.openrdf.model.Statement; 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 StatementSerializer extends JsonSerializer<Statement> { @Override public void serializeWithType(Statement 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(Statement st, JsonGenerator generator, SerializerProvider provider) throws IOException, JsonProcessingException { generator.writeStartObject(); generator.writeStringField("subject", st.getSubject().toString()); generator.writeStringField("predicate", st.getPredicate().toString()); generator.writeStringField("object", st.getObject().toString()); generator.writeStringField("subjectBI", ""); generator.writeStringField("predicateBI", ""); generator.writeStringField("objectBI", ""); generator.writeEndObject(); generator.close(); } }