List of usage examples for com.fasterxml.jackson.core JsonGenerator writeNumber
public abstract void writeNumber(String encodedValue) throws IOException, JsonGenerationException, UnsupportedOperationException;
From source file:com.netflix.spectator.tdigest.Json.java
/** Encode the measurement using the generator. */ void encode(Map<String, String> commonTags, TDigestMeasurement m, JsonGenerator gen) throws IOException { TDigest digest = m.value();//from ww w . j a va 2 s . co m digest.compress(); ByteBuffer buf = ByteBuffer.allocate(digest.byteSize()); digest.asBytes(buf); gen.writeStartArray(); gen.writeStartObject(); gen.writeStringField("name", m.id().name()); for (Map.Entry<String, String> e : commonTags.entrySet()) { gen.writeStringField(e.getKey(), e.getValue()); } for (Tag t : m.id().tags()) { gen.writeStringField(t.key(), t.value()); } gen.writeEndObject(); gen.writeNumber(m.timestamp()); gen.writeBinary(buf.array()); gen.writeEndArray(); }
From source file:com.acmemotors.batch.LoaderJobConfiguration.java
@Bean @StepScope//from w ww .j a v a 2 s . c o m public ItemProcessor<Map<String, Object>, String> processor( @Value("#{jobParameters['delay']}") final long delay) { return item -> { DefaultSerializerProvider provider = new DefaultSerializerProvider.Impl(); provider.setNullValueSerializer(new JsonSerializer<Object>() { @Override public void serialize(Object value, JsonGenerator jgen, SerializerProvider provider) throws IOException { if (value == null) { jgen.writeString(""); } else { if (value instanceof String) { jgen.writeString((String) value); } else { if (value instanceof Integer) { jgen.writeNumber((Integer) value); } else { jgen.writeNumber((Double) value); } } } } }); ObjectMapper mapper = new ObjectMapper(); mapper.setSerializerProvider(provider); String processedItem = mapper.writeValueAsString(item); Thread.sleep(delay); return processedItem; }; }
From source file:org.apache.airavata.db.AbstractThriftSerializer.java
@Override public void serialize(final T value, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject();/* ww w .j av a2s . co m*/ for (final E field : getFieldValues()) { if (value.isSet(field)) { final Object fieldValue = value.getFieldValue(field); if (fieldValue != null) { log.debug("Adding field {} to the JSON string...", CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_CAMEL, field.getFieldName())); jgen.writeFieldName(CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_CAMEL, field.getFieldName())); if (fieldValue instanceof Short) { jgen.writeNumber((Short) fieldValue); } else if (fieldValue instanceof Integer) { jgen.writeNumber((Integer) fieldValue); } else if (fieldValue instanceof Long) { jgen.writeNumber((Long) fieldValue); } else if (fieldValue instanceof Double) { jgen.writeNumber((Double) fieldValue); } else if (fieldValue instanceof Float) { jgen.writeNumber((Float) fieldValue); } else if (fieldValue instanceof Boolean) { jgen.writeBoolean((Boolean) fieldValue); } else if (fieldValue instanceof String) { jgen.writeString(fieldValue.toString()); } else if (fieldValue instanceof Collection) { log.debug("Array opened for field {}.", CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_CAMEL, field.getFieldName())); jgen.writeStartArray(); for (final Object arrayObject : (Collection<?>) fieldValue) { jgen.writeObject(arrayObject); } jgen.writeEndArray(); log.debug("Array closed for field {}.", CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_CAMEL, field.getFieldName())); } else { jgen.writeObject(fieldValue); } } else { log.debug("Skipping converting field {} to JSON: value is null!", CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_CAMEL, field.getFieldName())); } } else { log.debug("Skipping converting field {} to JSON: field has not been set!", CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_CAMEL, field.getFieldName())); } } jgen.writeEndObject(); }
From source file:eu.project.ttc.models.index.JsonTermIndexIO.java
public static void save(Writer writer, TermIndex termIndex, JsonOptions options) throws IOException { JsonFactory jsonFactory = new JsonFactory(); // or, for data binding, org.codehaus.jackson.mapper.MappingJsonFactory // jsonFactory.configure(f, state) JsonGenerator jg = jsonFactory.createGenerator(writer); // or Stream, Reader jg.useDefaultPrettyPrinter();//from ww w. j a v a2 s .com jg.writeStartObject(); jg.writeFieldName(METADATA); jg.writeStartObject(); jg.writeFieldName(NAME); jg.writeString(termIndex.getName()); jg.writeFieldName(LANG); jg.writeString(termIndex.getLang().getCode()); if (termIndex.getCorpusId() != null) { jg.writeFieldName(CORPUS_ID); jg.writeString(termIndex.getCorpusId()); } jg.writeFieldName(OCCURRENCE_STORAGE); if (options.isMongoDBOccStore()) { jg.writeString(OCCURRENCE_STORAGE_MONGODB); jg.writeFieldName(OCCURRENCE_MONGODB_STORE_URI); jg.writeString(options.getMongoDBOccStore()); } else if (options.isEmbeddedOccurrences()) jg.writeString(OCCURRENCE_STORAGE_EMBEDDED); else throw new IllegalStateException("Unknown storage mode"); jg.writeFieldName(NB_WORD_ANNOTATIONS); jg.writeNumber(termIndex.getWordAnnotationsNum()); jg.writeFieldName(NB_SPOTTED_TERMS); jg.writeNumber(termIndex.getSpottedTermsNum()); jg.writeEndObject(); jg.writeFieldName(INPUT_SOURCES); int idCnt = 0; Map<String, Integer> inputSources = Maps.newTreeMap(); for (Document d : termIndex.getDocuments()) if (!inputSources.containsKey(d.getUrl())) inputSources.put(d.getUrl(), ++idCnt); jg.writeStartObject(); for (String uri : inputSources.keySet()) { jg.writeFieldName(inputSources.get(uri).toString()); jg.writeString(uri); } jg.writeEndObject(); jg.writeFieldName(WORDS); jg.writeStartArray(); for (Word w : termIndex.getWords()) { jg.writeStartObject(); jg.writeFieldName(LEMMA); jg.writeString(w.getLemma()); jg.writeFieldName(STEM); jg.writeString(w.getStem()); if (w.isCompound()) { jg.writeFieldName(COMPOUND_TYPE); jg.writeString(w.getCompoundType().name()); jg.writeFieldName(COMPONENTS); jg.writeStartArray(); for (Component c : w.getComponents()) { jg.writeStartObject(); jg.writeFieldName(LEMMA); jg.writeString(c.getLemma()); jg.writeFieldName(BEGIN); jg.writeNumber(c.getBegin()); jg.writeFieldName(END); jg.writeNumber(c.getEnd()); jg.writeEndObject(); } jg.writeEndArray(); } jg.writeEndObject(); } jg.writeEndArray(); Set<TermVariation> termVariations = Sets.newHashSet(); jg.writeFieldName(TERMS); jg.writeStartArray(); for (Term t : termIndex.getTerms()) { termVariations.addAll(t.getVariations()); jg.writeStartObject(); jg.writeFieldName(ID); jg.writeNumber(t.getId()); jg.writeFieldName(RANK); jg.writeNumber(t.getRank()); jg.writeFieldName(GROUPING_KEY); jg.writeString(t.getGroupingKey()); jg.writeFieldName(WORDS); jg.writeStartArray(); for (TermWord tw : t.getWords()) { jg.writeStartObject(); jg.writeFieldName(SYN); jg.writeString(tw.getSyntacticLabel()); jg.writeFieldName(LEMMA); jg.writeString(tw.getWord().getLemma()); jg.writeEndObject(); } jg.writeEndArray(); jg.writeFieldName(FREQUENCY); jg.writeNumber(t.getFrequency()); jg.writeFieldName(FREQ_NORM); jg.writeNumber(t.getFrequencyNorm()); jg.writeFieldName(GENERAL_FREQ_NORM); jg.writeNumber(t.getGeneralFrequencyNorm()); jg.writeFieldName(SPECIFICITY); jg.writeNumber(t.getSpecificity()); jg.writeFieldName(SPOTTING_RULE); jg.writeString(t.getSpottingRule()); if (options.withOccurrences() && options.isEmbeddedOccurrences()) { jg.writeFieldName(OCCURRENCES); jg.writeStartArray(); for (TermOccurrence termOcc : t.getOccurrences()) { jg.writeStartObject(); jg.writeFieldName(BEGIN); jg.writeNumber(termOcc.getBegin()); jg.writeFieldName(END); jg.writeNumber(termOcc.getEnd()); jg.writeFieldName(TEXT); jg.writeString(termOcc.getCoveredText()); jg.writeFieldName(FILE); jg.writeNumber(inputSources.get(termOcc.getSourceDocument().getUrl())); jg.writeEndObject(); } jg.writeEndArray(); } if (options.isWithContexts() && t.isContextVectorComputed()) { jg.writeFieldName(CONTEXT); jg.writeStartObject(); jg.writeFieldName(TOTAL_COOCCURRENCES); jg.writeNumber(t.getContextVector().getTotalCoccurrences()); jg.writeFieldName(CO_OCCURRENCES); jg.writeStartArray(); if (t.isContextVectorComputed()) { for (ContextVector.Entry contextEntry : t.getContextVector().getEntries()) { jg.writeStartObject(); jg.writeFieldName(CO_TERM); jg.writeString(contextEntry.getCoTerm().getGroupingKey()); jg.writeFieldName(NB_COCCS); jg.writeNumber(contextEntry.getNbCooccs()); jg.writeFieldName(ASSOC_RATE); jg.writeNumber(contextEntry.getAssocRate()); jg.writeEndObject(); } } jg.writeEndArray(); jg.writeEndObject(); } jg.writeEndObject(); } jg.writeEndArray(); /* Variants */ jg.writeFieldName(TERM_VARIATIONS); jg.writeStartArray(); for (TermVariation v : termVariations) { jg.writeStartObject(); jg.writeFieldName(BASE); jg.writeString(v.getBase().getGroupingKey()); jg.writeFieldName(VARIANT); jg.writeString(v.getVariant().getGroupingKey()); jg.writeFieldName(VARIANT_TYPE); jg.writeString(v.getVariationType().getShortName()); jg.writeFieldName(INFO); jg.writeString(v.getInfo().toString()); jg.writeFieldName(VARIANT_SCORE); jg.writeNumber(v.getScore()); jg.writeEndObject(); } jg.writeEndArray(); jg.writeEndObject(); jg.close(); }
From source file:com.streamsets.datacollector.http.JMXJsonServlet.java
private void writeObject(JsonGenerator jg, Object value) throws IOException { if (value == null) { jg.writeNull();//from w w w. j av a 2 s. com } else { Class<?> c = value.getClass(); if (c.isArray()) { jg.writeStartArray(); int len = Array.getLength(value); for (int j = 0; j < len; j++) { Object item = Array.get(value, j); writeObject(jg, item); } jg.writeEndArray(); } else if (value instanceof Number) { Number n = (Number) value; jg.writeNumber(n.toString()); } else if (value instanceof Boolean) { Boolean b = (Boolean) value; jg.writeBoolean(b); } else if (value instanceof CompositeData) { CompositeData cds = (CompositeData) value; CompositeType comp = cds.getCompositeType(); Set<String> keys = comp.keySet(); jg.writeStartObject(); for (String key : keys) { writeAttribute(jg, key, cds.get(key)); } jg.writeEndObject(); } else if (value instanceof TabularData) { TabularData tds = (TabularData) value; jg.writeStartArray(); for (Object entry : tds.values()) { writeObject(jg, entry); } jg.writeEndArray(); } else if (value instanceof GaugeValue) { ((GaugeValue) value).serialize(jg); } else { jg.writeString(value.toString()); } } }
From source file:org.neo4j.ontology.server.unmanaged.AnnotationResource.java
private void writeJsonNodeObject(JsonGenerator jg, Node term, Label annotationLabel, List<Long> dataSetsId) throws IOException { jg.writeStartObject(); // { jg.writeStringField("uri", term.getProperty("uri").toString()); // uri: "http://www.w3.org/2002/07/owl#Thing" jg.writeStringField("ontId", term.getProperty("name").toString()); // ontId: "OWL:Thing" jg.writeStringField("label", term.getProperty("rdfs:label", term.getProperty("name")).toString()); // ontId: "OWL:Thing" jg.writeFieldName("dataSets"); // dataSets: jg.writeStartArray(); // [ for (Long dataSetId : dataSetsId) { jg.writeNumber(dataSetId); // 123 }//www. java2s . c o m jg.writeEndArray(); // ] writeJsonNodeObjectParents(jg, term, annotationLabel); jg.writeEndObject(); // } }
From source file:com.streamsets.datacollector.bundles.content.SdcInfoContentGenerator.java
private void writeObject(JsonGenerator jg, Object value) throws IOException { if (value == null) { jg.writeNull();/*from w ww.j av a2 s .c o m*/ } else { Class<?> c = value.getClass(); if (c.isArray()) { jg.writeStartArray(); int len = Array.getLength(value); for (int j = 0; j < len; j++) { Object item = Array.get(value, j); writeObject(jg, item); } jg.writeEndArray(); } else if (value instanceof Number) { Number n = (Number) value; if (value instanceof Double && (((Double) value).isInfinite() || ((Double) value).isNaN())) { jg.writeString(n.toString()); } else { jg.writeNumber(n.toString()); } } else if (value instanceof Boolean) { Boolean b = (Boolean) value; jg.writeBoolean(b); } else if (value instanceof CompositeData) { CompositeData cds = (CompositeData) value; CompositeType comp = cds.getCompositeType(); Set<String> keys = comp.keySet(); jg.writeStartObject(); for (String key : keys) { writeAttribute(jg, key, cds.get(key)); } jg.writeEndObject(); } else if (value instanceof TabularData) { TabularData tds = (TabularData) value; jg.writeStartArray(); for (Object entry : tds.values()) { writeObject(jg, entry); } jg.writeEndArray(); } else if (value instanceof GaugeValue) { ((GaugeValue) value).serialize(jg); } else { jg.writeString(value.toString()); } } }
From source file:com.jxt.web.vo.AgentActiveThreadCountList.java
@Override public void serialize(AgentActiveThreadCountList agentActiveThreadStatusList, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException { List<AgentActiveThreadCount> agentActiveThreadRepository = agentActiveThreadStatusList .getAgentActiveThreadRepository(); jgen.writeStartObject();/*from w w w . j a va 2 s .c om*/ for (AgentActiveThreadCount agentActiveThread : agentActiveThreadRepository) { jgen.writeFieldName(agentActiveThread.getAgentId()); jgen.writeStartObject(); jgen.writeNumberField("code", agentActiveThread.getCode()); jgen.writeStringField("message", agentActiveThread.getCodeMessage()); TCmdActiveThreadCountRes activeThreadCount = agentActiveThread.getActiveThreadCount(); if (activeThreadCount != null) { if (activeThreadCount.getActiveThreadCountSize() >= 4) { List<Integer> values = activeThreadCount.getActiveThreadCount(); jgen.writeFieldName("status"); jgen.writeStartArray(); jgen.writeNumber(values.get(0)); jgen.writeNumber(values.get(1)); jgen.writeNumber(values.get(2)); jgen.writeNumber(values.get(3)); jgen.writeEndArray(); } } jgen.writeEndObject(); } jgen.writeEndObject(); }
From source file:ijfx.service.overlay.io.OverlaySerializer.java
private void saveLineOverlay(LineOverlay overlay, JsonGenerator jg) throws IOException { jg.writeStartObject();//from www . ja va2 s .c om jg.writeStringField(JsonOverlayToken.OVERLAY_TYPE, JsonOverlayToken.LINE_OVERLAY); Double[] lineStart = Utils.extractArray(overlay::getLineStart, overlay.numDimensions()); Double[] lineEnd = Utils.extractArray(overlay::getLineEnd, overlay.numDimensions()); writeNumberArray(jg, JsonOverlayToken.BEGIN, lineStart); writeNumberArray(jg, JsonOverlayToken.END, lineEnd); ColorRGB fcolor = overlay.getFillColor(); ColorRGB lcolor = overlay.getLineColor(); Integer[] fill_color = { fcolor.getRed(), fcolor.getGreen(), fcolor.getBlue() }; Integer[] line_color = { lcolor.getRed(), lcolor.getGreen(), lcolor.getBlue() }; double width = overlay.getLineWidth(); writeNumberArray(jg, JsonOverlayToken.FILL_COLOR, fill_color); writeNumberArray(jg, JsonOverlayToken.LINE_COLOR, line_color); jg.writeFieldName(JsonOverlayToken.LINE_WIDTH); jg.writeNumber(width); jg.writeEndObject(); }