List of usage examples for com.fasterxml.jackson.core JsonGenerator writeEndObject
public abstract void writeEndObject() throws IOException, JsonGenerationException;
From source file:com.basho.riak.client.query.MapReduce.java
/** * Creates the JSON string of the M/R job for submitting to the * {@link RawClient}// w ww.j a v a2 s . c o m * * Uses Jackson to write out the JSON string. I'm not very happy with this * method, it is a candidate for change. * * TODO re-evaluate this method, look for something smaller and more elegant. * * @return a String of JSON * @throws RiakException * if, for some reason, we can't create a JSON string. */ private String writeSpec() throws RiakException { final ByteArrayOutputStream out = new ByteArrayOutputStream(); try { JsonGenerator jg = new JsonFactory().createJsonGenerator(out, JsonEncoding.UTF8); jg.setCodec(new ObjectMapper()); jg.writeStartObject(); jg.writeFieldName("inputs"); writeInput(jg); jg.writeFieldName("query"); jg.writeStartArray(); writePhases(jg); jg.writeEndArray(); if (timeout != null) { jg.writeNumberField("timeout", timeout); } jg.writeEndObject(); jg.flush(); return out.toString("UTF8"); } catch (IOException e) { throw new RiakException(e); } }
From source file:com.codealot.url2text.Response.java
/** * Convenience method for writing header and metadata lists. * /*from w w w . j a v a2 s .c o m*/ * @param jsonGenerator * @param header * @param array * @throws JsonGenerationException * @throws IOException */ private void outputNameAndValueArray(final JsonGenerator jsonGenerator, final String header, final List<NameAndValue> array) throws JsonGenerationException, IOException { jsonGenerator.writeFieldName(header); jsonGenerator.writeStartObject(); for (final NameAndValue nameAndValue : array) { jsonGenerator.writeStringField(nameAndValue.getName(), nameAndValue.getValue()); } jsonGenerator.writeEndObject(); }
From source file:org.neo4j.ontology.server.unmanaged.AnnotationResource.java
private void writeJsonNodeObjectifiedObject(JsonGenerator jg, Node term, Label annotationLabel) 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.writeStartObject(); // { jg.writeEndObject(); // } writeJsonNodeObjectifiedObjectParents(jg, term, annotationLabel); jg.writeEndObject(); // } }
From source file:data.DefaultExchanger.java
public void exportData(String dbName, String catalogName, final JsonGenerator generator, JdbcTemplate jdbcTemplate) throws IOException { generator.writeFieldName(getTable()); generator.writeStartArray();// w w w .ja va 2 s. c o m final int[] rowCount = { 0 }; jdbcTemplate.query(getSelectSql(), new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { try { generator.writeStartObject(); setNode(generator, rs); generator.writeEndObject(); rowCount[0]++; } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); } } }); generator.writeEndArray(); play.Logger.info("exported {{}} {}", rowCount[0], getTable()); if (hasSequence()) { String sequenceName = sequenceName(); long sequenceValue = 0; if (dbName.equalsIgnoreCase("MySQL")) { String sql = String.format("SELECT `AUTO_INCREMENT` FROM INFORMATION_SCHEMA.TABLES " + "WHERE TABLE_SCHEMA = '%s' AND TABLE_NAME = '%s'", catalogName, getTable()); sequenceValue = jdbcTemplate.queryForObject(sql, Long.class); } else if (dbName.equalsIgnoreCase("H2")) { sequenceValue = jdbcTemplate.queryForObject("CALL NEXT VALUE FOR " + sequenceName, Long.class); } generator.writeFieldName(sequenceName); generator.writeNumber(sequenceValue); play.Logger.info("exported sequence {{}}", sequenceName()); } }
From source file:com.attribyte.essem.ESReporter.java
static final void generateHistogram(final JsonGenerator generator, final ReportProtos.EssemReport.Histogram histogram, final String application, final String host, final String instance, final long timestamp) throws IOException { generator.writeStartObject();/*w w w .j a v a2 s.com*/ writeStringField(generator, Fields.APPLICATION_FIELD, application); writeStringField(generator, Fields.HOST_FIELD, host); writeStringField(generator, Fields.INSTANCE_FIELD, instance); writeStringField(generator, Fields.NAME_FIELD, histogram.getName().trim()); generator.writeNumberField(Fields.COUNT_FIELD, histogram.getCount()); generator.writeNumberField(Fields.MAX_FIELD, histogram.getMax()); generator.writeNumberField(Fields.MIN_FIELD, histogram.getMin()); generator.writeNumberField(Fields.MEAN_FIELD, histogram.getMean()); generator.writeNumberField(Fields.P50_FIELD, histogram.getMedian()); generator.writeNumberField(Fields.P75_FIELD, histogram.getPercentile75()); generator.writeNumberField(Fields.P95_FIELD, histogram.getPercentile95()); generator.writeNumberField(Fields.P98_FIELD, histogram.getPercentile98()); generator.writeNumberField(Fields.P99_FIELD, histogram.getPercentile99()); generator.writeNumberField(Fields.P999_FIELD, histogram.getPercentile999()); generator.writeNumberField(Fields.STD_FIELD, histogram.getStd()); generator.writeNumberField(Fields.TIMESTAMP_FIELD, timestamp); generator.writeEndObject(); generator.flush(); }
From source file:com.neoteric.starter.metrics.report.elastic.ElasticsearchReporter.java
private void checkForIndexTemplate() { try {// ww w . j a v a 2s . c om HttpURLConnection connection = openConnection("/_template/metrics_template", "HEAD"); connection.disconnect(); boolean isTemplateMissing = connection.getResponseCode() == HttpURLConnection.HTTP_NOT_FOUND; // nothing there, lets create it if (isTemplateMissing) { LOGGER.debug("No metrics template found in elasticsearch. Adding..."); HttpURLConnection putTemplateConnection = openConnection("/_template/metrics_template", "PUT"); JsonGenerator json = new JsonFactory().createGenerator(putTemplateConnection.getOutputStream()); json.writeStartObject(); json.writeStringField("template", index + "*"); json.writeObjectFieldStart("mappings"); json.writeObjectFieldStart("_default_"); json.writeObjectFieldStart("_all"); json.writeBooleanField("enabled", false); json.writeEndObject(); json.writeObjectFieldStart("properties"); json.writeObjectFieldStart("name"); json.writeObjectField("type", "string"); json.writeObjectField("index", "not_analyzed"); json.writeEndObject(); json.writeEndObject(); json.writeEndObject(); json.writeEndObject(); json.writeEndObject(); json.flush(); putTemplateConnection.disconnect(); if (putTemplateConnection.getResponseCode() != HttpStatus.OK.value()) { LOGGER.error( "Error adding metrics template to elasticsearch: {}/{}" + putTemplateConnection.getResponseCode(), putTemplateConnection.getResponseMessage()); } } checkedForIndexTemplate = true; } catch (IOException e) { LOGGER.error("Error when checking/adding metrics template to elasticsearch", e); } }
From source file:com.attribyte.essem.es.DateHistogramAggregation.java
@Override public void generate(final JsonGenerator generator) throws IOException { generator.writeObjectFieldStart(name); {// w w w . j av a 2s . c om if (filter != null) { generator.writeFieldName("filter"); filter.generate(generator); } generator.writeObjectFieldStart(type); { generator.writeStringField("field", field); generator.writeStringField("interval", interval); generator.writeNumberField("min_doc_count", 0); switch (order) { //Key ascending is default... case DOC_COUNT_ASC: generator.writeObjectFieldStart("order"); generator.writeStringField("_count", "asc"); generator.writeEndObject(); break; case DOC_COUNT_DESC: generator.writeObjectFieldStart("order"); generator.writeStringField("_count", "desc"); generator.writeEndObject(); break; case KEY_DESC: generator.writeObjectFieldStart("order"); generator.writeStringField("_key", "desc"); generator.writeEndObject(); break; } } generator.writeEndObject(); if (subs != null && subs.size() > 0) { generator.writeObjectFieldStart(AGGREGATION_OBJECT_NAME); for (Aggregation sub : subs) { sub.generate(generator); } generator.writeEndObject(); } } generator.writeEndObject(); }
From source file:org.lamop.riche.model.RelationSourcePersonSerializer.java
@Override public void serialize(RelationSourcePerson relation, JsonGenerator jsonGenerator, SerializerProvider sp) throws IOException, JsonProcessingException { jsonGenerator.writeStartObject();/* ww w . j ava 2 s.co m*/ jsonGenerator.writeStringField("rolePublication", relation.getRolePublication()); Source sourceSer = new Source(); sourceSer.setId(relation.getSource().getId()); sourceSer.setTitle(relation.getSource().getTitle()); // relation.getSource().getRelationPerson().clear(); // relation.getSource().getRelationWorkSource().clear(); jsonGenerator.writeObjectField("source", sourceSer); // // relation.getPerson().getRelationSource().clear(); Person p = new Person(); p.setId(relation.getPerson().getId()); p.setLabel(relation.getPerson().getLabel()); jsonGenerator.writeObjectField("person", p); jsonGenerator.writeEndObject(); // jsonGenerator.writeStringField("username", user.getUsername()); // jsonGenerator.writeEndObject(); // throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. }
From source file:de.fraunhofer.iosb.ilt.sta.serialize.DataArrayValueSerializer.java
@Override public void serialize(DataArrayValue value, JsonGenerator gen, SerializerProvider serializers) throws IOException, JsonProcessingException { gen.writeStartObject();//w ww .ja va2s .c o m Datastream datastream = value.getDatastream(); if (datastream != null) { gen.writeStringField("Datastream@iot.navigationLink", datastream.getNavigationLink()); } MultiDatastream multiDatastream = value.getMultiDatastream(); if (multiDatastream != null) { gen.writeStringField("MultiDatastream@iot.navigationLink", multiDatastream.getNavigationLink()); } gen.writeObjectField("components", value.getComponents()); int count = value.getDataArray().size(); if (count >= 0) { gen.writeNumberField("dataArray@iot.count", count); } gen.writeFieldName("dataArray"); gen.writeObject(value.getDataArray()); gen.writeEndObject(); }
From source file:com.github.lynxdb.server.api.http.handlers.EpQuery.java
private void saveResponse(OutputStream _output, List<Query> _queries) throws IOException { JsonFactory jFactory = new JsonFactory(); JsonGenerator jGenerator; jGenerator = jFactory.createGenerator(_output, JsonEncoding.UTF8); jGenerator.writeStartArray();/*from ww w . jav a 2 s.c om*/ for (Query q : _queries) { TimeSerie ts; ts = engine.query(q); jGenerator.writeStartObject(); jGenerator.writeStringField("metric", q.getName()); //tags jGenerator.writeObjectFieldStart("tags"); if (q.getTags() != null) { for (String tagk : q.getTags().keySet()) { jGenerator.writeStringField(tagk, q.getTags().get(tagk)); } } jGenerator.writeEndObject(); //dps jGenerator.writeObjectFieldStart("dps"); while (ts.hasNext()) { Entry e = ts.next(); jGenerator.writeNumberField(String.valueOf(e.getTime()), e.getValue()); } jGenerator.writeEndObject(); //endQuery jGenerator.writeEndObject(); } jGenerator.writeEndArray(); jGenerator.close(); _output.flush(); _output.close(); }