List of usage examples for com.fasterxml.jackson.core JsonGenerator writeString
public abstract void writeString(SerializableString text) throws IOException, JsonGenerationException;
From source file:org.cloudcoder.dataanalysis.ProgsnapExport.java
private void writeJsonFieldValue(JsonGenerator jg, Object value) throws IOException { if (value instanceof String) { jg.writeString((String) value); } else if (value instanceof Integer) { jg.writeNumber(((Integer) value).intValue()); } else if (value instanceof Long) { jg.writeNumber(((Long) value).longValue()); } else if (value instanceof Double) { jg.writeNumber(((Double) value).doubleValue()); } else if (value instanceof Map) { jg.writeStartObject();/*from w ww. j a va 2 s.c o m*/ for (Map.Entry<?, ?> entry : ((Map<?, ?>) value).entrySet()) { jg.writeFieldName(entry.getKey().toString()); writeJsonFieldValue(jg, entry.getValue()); } jg.writeEndObject(); } else if (value instanceof Boolean) { jg.writeBoolean(((Boolean) value).booleanValue()); } else { throw new IllegalArgumentException( "Don't know how to encode " + value.getClass().getSimpleName() + " as JSON value"); } }
From source file:org.jongo.query.BsonQueryFactoryTest.java
@Test public void canHandlePOJOSerializedAsString() throws Exception { Mapping mapping = new Mapping.Builder().addSerializer(Friend.class, new JsonSerializer<Friend>() { @Override/*from w ww.ja v a 2 s . c om*/ public void serialize(Friend friend, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeString(friend.getName()); } }).build(); QueryFactory customFactory = new BsonQueryFactory(new JacksonEngine(mapping)); DBObject query = customFactory.createQuery("{friend:#}", new Friend("Robert")).toDBObject(); assertThat(query.get("friend")).isEqualTo("Robert"); }
From source file:be.dnsbelgium.rdap.jackson.ContactSerializer.java
@Override public void serialize(Contact contact, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { jsonGenerator.writeStartArray();//from w w w .j av a2s . c om // start write version jsonGenerator.writeStartArray(); jsonGenerator.writeString("version"); jsonGenerator.writeStartObject(); jsonGenerator.writeEndObject(); jsonGenerator.writeString("text"); jsonGenerator.writeString("4.0"); jsonGenerator.writeEndArray(); // end write version for (Contact.Property property : contact.getProperties()) { // start write property jsonGenerator.writeStartArray(); // start write property name String key = (property.getGroup() == null) ? property.getName() : property.getGroup() + "." + property.getName(); jsonGenerator.writeString(property.getName().toLowerCase(Locale.ENGLISH)); // end write property name // start write property parameters jsonGenerator.writeStartObject(); if (property.getGroup() != null) { jsonGenerator.writeFieldName("group"); jsonGenerator.writeString(property.getGroup()); } if (property.getParameters() != null) { Iterator<String> it = property.getParameters().keys(); while (it.hasNext()) { String k = it.next(); if (k.equalsIgnoreCase("value")) { continue; } Set<String> values = property.getParameters().get(k); if (values.size() == 0) { // no parameters for this property, skip this step continue; } jsonGenerator.writeFieldName(k.toLowerCase(Locale.ENGLISH)); if (values.size() == 1) { jsonGenerator.writeString(values.toArray(new String[values.size()])[0]); continue; } // start write all property parameter values (array) jsonGenerator.writeStartArray(); for (String str : property.getParameters().get(k)) { jsonGenerator.writeString(str); } jsonGenerator.writeEndArray(); // end write all property parameter values (array) } } jsonGenerator.writeEndObject(); // end write property parameters // start write property type String value = "text"; if (property.getParameters() != null) { Set<String> types = property.getParameters().get("VALUE"); if (types != null) { value = types.iterator().next(); } } jsonGenerator.writeString(value); // end write property type // start write property value JsonSerializer s = serializerProvider.findValueSerializer(property.getValue().getClass(), null); s.serialize(property.getValue(), jsonGenerator, serializerProvider); // end write property value jsonGenerator.writeEndArray(); // end write property } jsonGenerator.writeEndArray(); }
From source file:io.debezium.document.JacksonWriter.java
protected void writeValue(Value value, JsonGenerator generator) throws IOException { switch (value.getType()) { case NULL:/*from w w w. jav a2 s . co m*/ generator.writeNull(); break; case STRING: generator.writeString(value.asString()); break; case BOOLEAN: generator.writeBoolean(value.asBoolean()); break; case BINARY: generator.writeBinary(value.asBytes()); break; case INTEGER: generator.writeNumber(value.asInteger()); break; case LONG: generator.writeNumber(value.asLong()); break; case FLOAT: generator.writeNumber(value.asFloat()); break; case DOUBLE: generator.writeNumber(value.asDouble()); break; case BIG_INTEGER: generator.writeNumber(value.asBigInteger()); break; case DECIMAL: generator.writeNumber(value.asBigDecimal()); break; case DOCUMENT: writeDocument(value.asDocument(), generator); break; case ARRAY: writeArray(value.asArray(), generator); break; } }
From source file:nl.talsmasoftware.enumerables.support.json.jackson2.EnumerableSerializer.java
@Override public void serialize(Enumerable value, JsonGenerator jgen, SerializerProvider provider) throws IOException { if (value == null) { jgen.writeNull();/*from w ww . j ava 2 s .c om*/ } else if (serializationMethod.serializeAsJsonObject(value.getClass())) { serializeObject(value, jgen, provider.getConfig()); } else { jgen.writeString(Enumerable.print(value)); } }
From source file:DataTools.ConvertObjectToJson.java
private void addCustomSerializing(ObjectMapper mapper) { //custom serializer to help parsing dates class dateSerializer extends JsonSerializer<DateTime> { @Override//from w w w . ja va 2 s . c o m public void serialize(DateTime dateTime, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { jsonGenerator.writeString(cleanupDate(dateTime)); } } //custom serializer to help parsing dates class zoneDateSerializer extends JsonSerializer<ZonedDateTime> { @Override public void serialize(ZonedDateTime dateTime, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { jsonGenerator.writeString(cleanupDate(dateTime)); } } class utilDateSerializer extends JsonSerializer<Date> { @Override public void serialize(Date dateTime, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { jsonGenerator.writeString(dateTime.toString()); } } class JsonObjectSerializer extends JsonSerializer<JSONObject> { @Override public void serialize(JSONObject jsonObject, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException { jsonGenerator.writeString(jsonObject.toString()); } } class JsonArraySerializer extends JsonSerializer<JSONArray> { @Override public void serialize(JSONArray jsonArray, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException { jsonGenerator.writeString(jsonArray.toString()); } } class StorageSerializer extends JsonSerializer<Storage> { @Override public void serialize(Storage storage, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException { jsonGenerator.writeString(storage.toString()); } } //setup new serializer SimpleModule simpleModule = new SimpleModule(); simpleModule.addSerializer(DateTime.class, new dateSerializer()); simpleModule.addSerializer(ZonedDateTime.class, new zoneDateSerializer()); simpleModule.addSerializer(Date.class, new utilDateSerializer()); simpleModule.addSerializer(JSONObject.class, new JsonObjectSerializer()); simpleModule.addSerializer(JSONArray.class, new JsonArraySerializer()); simpleModule.addSerializer(Storage.class, new StorageSerializer()); mapper.registerModule(simpleModule); }
From source file:org.killbill.billing.plugin.meter.timeline.consumer.TimelineChunkDecoded.java
@JsonValue @Override/*from w w w.j a va2 s .co m*/ public String toString() { try { final ByteArrayOutputStream out = new ByteArrayOutputStream(); final JsonGenerator generator = objectMapper.getJsonFactory().createJsonGenerator(out); generator.writeStartObject(); generator.writeFieldName("metric"); generator.writeNumber(chunk.getMetricId()); generator.writeFieldName("decodedSamples"); generator.writeString(getDecodedSamples()); generator.writeEndObject(); generator.close(); return out.toString(); } catch (IOException e) { log.error("IOException in toString()", e); } return null; }
From source file:io.gravitee.definition.jackson.datatype.services.healthcheck.ser.ExpectationSerializer.java
@Override public void serialize(Expectation expectation, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeStartObject();// w w w. ja v a 2s. c om jgen.writeArrayFieldStart("assertions"); if (expectation.getAssertions() != null && !expectation.getAssertions().isEmpty()) { expectation.getAssertions().forEach(assertion -> { try { jgen.writeString(assertion); } catch (IOException e) { e.printStackTrace(); } }); } else { jgen.writeString(Expectation.DEFAULT_ASSERTION); } jgen.writeEndArray(); jgen.writeEndObject(); }
From source file:org.brutusin.json.impl.JacksonCodec.java
@Override public void registerStringFormat(Class clazz, String format) { this.schemaFactory.registerStringFormat(clazz, format); SimpleModule testModule = new SimpleModule("json-provider-module:" + format, new Version(1, 0, 0, null, "org.brutusin", "json-provider:" + format)); testModule.addSerializer(new StdSerializer(clazz) { @Override/*from ww w . j a v a2s .c o m*/ public void serialize(Object value, JsonGenerator gen, SerializerProvider provider) throws IOException { gen.writeString(value.toString()); } }); mapper.registerModule(testModule); }
From source file:org.dbrain.data.jackson.serializers.JsonBigDecimalSerializer.java
@Override public void serialize(BigDecimal value, JsonGenerator jgen, SerializerProvider provider) throws IOException { if (value != null) { // Does it have more that 15 significant digits ? BigInteger unscaled = value.unscaledValue(); if (unscaled.compareTo(MIN_VALUE) >= 0 && unscaled.compareTo(MAX_VALUE) <= 0) { jgen.writeNumber(value);//from w w w . ja va 2s . c om } else { jgen.writeString(value.toString()); } } else { jgen.writeNull(); } }