List of usage examples for com.fasterxml.jackson.core JsonEncoding UTF8
JsonEncoding UTF8
To view the source code for com.fasterxml.jackson.core JsonEncoding UTF8.
Click Source Link
From source file:org.killbill.billing.plugin.meter.timeline.persistent.FileBackedBuffer.java
private void recycle() throws IOException { synchronized (recyclingMonitor) { if (out != null && !out.isEmpty()) { out.close();//from w w w. j a v a 2s. c o m } out = new StreamyBytesPersistentOutputStream(basePath, prefix, inputBuffer, deleteFilesOnClose); smileGenerator = smileFactory.createJsonGenerator(out, JsonEncoding.UTF8); // Drop the Smile header smileGenerator.flush(); out.reset(); samplesforTimestampWritten.set(0); } }
From source file:com.googlecode.jmxtrans.model.output.SensuWriter.java
private void serialize(Server server, Query query, List<Result> results, OutputStream outputStream) throws IOException { JsonGenerator g = jsonFactory.createGenerator(outputStream, JsonEncoding.UTF8); g.useDefaultPrettyPrinter();/* w w w . j av a 2 s . c o m*/ g.writeStartObject(); g.writeStringField("name", "jmxtrans"); g.writeStringField("type", "metric"); g.writeStringField("handler", handler); StringBuilder jsonoutput = new StringBuilder(); List<String> typeNames = getTypeNames(); for (Result result : results) { for (Map.Entry<String, Object> values : result.getValues().entrySet()) { if (isNumeric(values.getValue())) { Object value = values.getValue(); jsonoutput.append(KeyUtils.getKeyString(server, query, result, values, typeNames, null)) .append(" ").append(value).append(" ") .append(TimeUnit.SECONDS.convert(result.getEpoch(), TimeUnit.MILLISECONDS)) .append(System.getProperty("line.separator")); } } } g.writeStringField("output", jsonoutput.toString()); g.writeEndObject(); g.flush(); g.close(); }
From source file:com.meetingninja.csse.database.ProjectDatabaseAdapter.java
public static void updateProject(Project p) throws IOException { ByteArrayOutputStream json = new ByteArrayOutputStream(); // this type of print stream allows us to get a string easily PrintStream ps = new PrintStream(json); JsonGenerator jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8); // Build JSON Object for Title jgen.writeStartObject();//from w w w . j a v a2s . co m jgen.writeStringField(Keys.Project.ID, p.getProjectID()); jgen.writeStringField("field", Keys.Project.TITLE); jgen.writeStringField("value", p.getProjectTitle()); jgen.writeEndObject(); jgen.close(); String payloadTitle = json.toString("UTF8"); ps.close(); json = new ByteArrayOutputStream(); // this type of print stream allows us to get a string easily ps = new PrintStream(json); jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8); // Build JSON Object for Project members jgen.writeStartObject(); jgen.writeStringField(Keys.Project.ID, p.getProjectID()); jgen.writeStringField("field", Keys.Project.MEETINGS); jgen.writeArrayFieldStart("value"); for (Meeting meeting : p.getMeetings()) { jgen.writeStartObject(); jgen.writeStringField(Keys.Meeting.ID, meeting.getID()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeEndObject(); jgen.close(); String payloadMeetings = json.toString("UTF8"); ps.close(); json = new ByteArrayOutputStream(); // this type of print stream allows us to get a string easily ps = new PrintStream(json); jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8); // Build JSON Object for Project members jgen.writeStartObject(); jgen.writeStringField(Keys.Project.ID, p.getProjectID()); jgen.writeStringField("field", Keys.Project.NOTES); jgen.writeArrayFieldStart("value"); for (Note note : p.getNotes()) { jgen.writeStartObject(); jgen.writeStringField(Keys.Note.ID, note.getID()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeEndObject(); jgen.close(); String payloadNotes = json.toString("UTF8"); ps.close(); json = new ByteArrayOutputStream(); // this type of print stream allows us to get a string easily ps = new PrintStream(json); jgen = JFACTORY.createGenerator(ps, JsonEncoding.UTF8); // Build JSON Object for Project members jgen.writeStartObject(); jgen.writeStringField(Keys.Project.ID, p.getProjectID()); jgen.writeStringField("field", Keys.Project.MEMBERS); jgen.writeArrayFieldStart("value"); for (User member : p.getMembers()) { jgen.writeStartObject(); jgen.writeStringField(Keys.User.ID, member.getID()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeEndObject(); jgen.close(); String payloadMembers = json.toString("UTF8"); ps.close(); // Establish connection updateHelper(payloadTitle); updateHelper(payloadMeetings); updateHelper(payloadNotes); System.out.println(updateHelper(payloadMembers)); }
From source file:org.h2gis.drivers.geojson.GeoJsonWriteDriver.java
/** * Write the spatial table to GeoJSON format. * * @param progress/*from www.j a v a 2s. co m*/ * @throws SQLException */ private void writeGeoJson(ProgressVisitor progress) throws SQLException, IOException { FileOutputStream fos = null; try { fos = new FileOutputStream(fileName); // Read Geometry Index and type final TableLocation parse = TableLocation.parse(tableName, JDBCUtilities.isH2DataBase(connection.getMetaData())); List<String> spatialFieldNames = SFSUtilities.getGeometryFields(connection, parse); if (spatialFieldNames.isEmpty()) { throw new SQLException(String.format("The table %s does not contain a geometry field", tableName)); } // Read table content Statement st = connection.createStatement(); try { JsonFactory jsonFactory = new JsonFactory(); JsonGenerator jsonGenerator = jsonFactory.createGenerator(new BufferedOutputStream(fos), JsonEncoding.UTF8); // header of the GeoJSON file jsonGenerator.writeStartObject(); jsonGenerator.writeStringField("type", "FeatureCollection"); writeCRS(jsonGenerator, SFSUtilities.getAuthorityAndSRID(connection, parse, spatialFieldNames.get(0))); jsonGenerator.writeArrayFieldStart("features"); ResultSet rs = st.executeQuery(String.format("select * from `%s`", tableName)); try { ResultSetMetaData resultSetMetaData = rs.getMetaData(); int geoFieldIndex = JDBCUtilities.getFieldIndex(resultSetMetaData, spatialFieldNames.get(0)); cacheMetadata(resultSetMetaData); while (rs.next()) { writeFeature(jsonGenerator, rs, geoFieldIndex); } progress.endStep(); // footer jsonGenerator.writeEndArray(); jsonGenerator.writeEndObject(); jsonGenerator.flush(); jsonGenerator.close(); } finally { rs.close(); } } finally { st.close(); } } catch (FileNotFoundException ex) { throw new SQLException(ex); } finally { try { if (fos != null) { fos.close(); } } catch (IOException ex) { throw new SQLException(ex); } } }
From source file:gov.bnl.channelfinder.PropertiesResource.java
/** * GET method for retrieving the list of properties in the database. * * @return list of properties//from w w w . jav a2s .c om */ @GET @Produces({ MediaType.APPLICATION_JSON }) public Response list() { Client client = getNewClient(); final String user = securityContext.getUserPrincipal() != null ? securityContext.getUserPrincipal().getName() : ""; final ObjectMapper mapper = new ObjectMapper(); mapper.addMixIn(XmlProperty.class, OnlyXmlProperty.class); try { MultivaluedMap<String, String> parameters = uriInfo.getQueryParameters(); int size = 10000; if (parameters.containsKey("~size")) { Optional<String> maxSize = parameters.get("~size").stream().max((o1, o2) -> { return Integer.valueOf(o1).compareTo(Integer.valueOf(o2)); }); if (maxSize.isPresent()) { size = Integer.valueOf(maxSize.get()); } } final SearchResponse response = client.prepareSearch("properties").setTypes("property") .setQuery(new MatchAllQueryBuilder()).setSize(size).execute().actionGet(); StreamingOutput stream = new StreamingOutput() { @Override public void write(OutputStream os) throws IOException, WebApplicationException { JsonGenerator jg = mapper.getFactory().createGenerator(os, JsonEncoding.UTF8); jg.writeStartArray(); if (response != null) { for (SearchHit hit : response.getHits()) { jg.writeObject(mapper.readValue(hit.source(), XmlProperty.class)); } } jg.writeEndArray(); jg.flush(); jg.close(); } }; Response r = Response.ok(stream).build(); audit.info(user + "|" + uriInfo.getPath() + "|GET|OK|" + r.getStatus() + "|returns " + response.getHits().getTotalHits() + " properties"); return r; } catch (Exception e) { return handleException(user, "GET", Response.Status.INTERNAL_SERVER_ERROR, e); } finally { client.close(); } }
From source file:org.springframework.cloud.netflix.metrics.atlas.AtlasMetricObserver.java
private void sendMetricsBatch(List<Metric> metrics) { try {// w w w . java 2 s .c o m ByteArrayOutputStream output = new ByteArrayOutputStream(); JsonGenerator gen = smileFactory.createGenerator(output, JsonEncoding.UTF8); gen.writeStartObject(); writeCommonTags(gen); if (writeMetrics(gen, metrics) == 0) return; // short circuit this batch if no valid/numeric metrics existed gen.writeEndObject(); gen.flush(); HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.valueOf("application/x-jackson-smile")); HttpEntity<byte[]> entity = new HttpEntity<>(output.toByteArray(), headers); try { restTemplate.exchange(uri, HttpMethod.POST, entity, Map.class); } catch (HttpClientErrorException e) { logger.error("Failed to write metrics to atlas: " + e.getResponseBodyAsString(), e); } catch (RestClientException e) { logger.error("Failed to write metrics to atlas", e); } } catch (IOException e) { // an IOException stemming from the generator writing to a // ByteArrayOutputStream is impossible throw new RuntimeException(e); } }
From source file:gov.bnl.channelfinder.TagsResource.java
/** * GET method for retrieving the list of tags in the database. * * @return list of tags/* ww w .ja va 2 s . co m*/ */ @GET @Produces({ MediaType.APPLICATION_JSON }) public Response list() { Client client = getNewClient(); String user = securityContext.getUserPrincipal() != null ? securityContext.getUserPrincipal().getName() : ""; final ObjectMapper mapper = new ObjectMapper(); mapper.addMixIn(XmlTag.class, OnlyXmlTag.class); try { MultivaluedMap<String, String> parameters = uriInfo.getQueryParameters(); int size = 10000; if (parameters.containsKey("~size")) { Optional<String> maxSize = parameters.get("~size").stream().max((o1, o2) -> { return Integer.valueOf(o1).compareTo(Integer.valueOf(o2)); }); if (maxSize.isPresent()) { size = Integer.valueOf(maxSize.get()); } } final SearchResponse response = client.prepareSearch("tags").setTypes("tag") .setQuery(new MatchAllQueryBuilder()).setSize(size).execute().actionGet(); StreamingOutput stream = new StreamingOutput() { @Override public void write(OutputStream os) throws IOException, WebApplicationException { JsonGenerator jg = mapper.getFactory().createGenerator(os, JsonEncoding.UTF8); jg.writeStartArray(); if (response != null) { for (SearchHit hit : response.getHits()) { jg.writeObject(mapper.readValue(hit.source(), XmlTag.class)); } } jg.writeEndArray(); jg.flush(); jg.close(); } }; Response r = Response.ok(stream).build(); log.fine(user + "|" + uriInfo.getPath() + "|GET|OK|" + r.getStatus() + response.getTook() + "|returns " + response.getHits().getTotalHits() + " tags"); return r; } catch (Exception e) { return handleException(user, Response.Status.INTERNAL_SERVER_ERROR, e); } finally { client.close(); } }
From source file:org.springframework.data.elasticsearch.core.DefaultResultMapper.java
private String buildJSONFromFields(Collection<SearchHitField> values) { JsonFactory nodeFactory = new JsonFactory(); try {/* w ww . jav a 2 s . c o m*/ ByteArrayOutputStream stream = new ByteArrayOutputStream(); JsonGenerator generator = nodeFactory.createGenerator(stream, JsonEncoding.UTF8); generator.writeStartObject(); for (SearchHitField value : values) { if (value.getValues().size() > 1) { generator.writeArrayFieldStart(value.getName()); for (Object val : value.getValues()) { generator.writeObject(val); } generator.writeEndArray(); } else { generator.writeObjectField(value.getName(), value.getValue()); } } generator.writeEndObject(); generator.flush(); return new String(stream.toByteArray(), Charset.forName("UTF-8")); } catch (IOException e) { return null; } }
From source file:org.springframework.http.converter.json.replacement.MappingJacksonHttpMessageConverter.java
private JsonEncoding getEncoding(MediaType contentType) { if (contentType != null && contentType.getCharSet() != null) { Charset charset = contentType.getCharSet(); for (JsonEncoding encoding : JsonEncoding.values()) { if (charset.name().equals(encoding.getJavaName())) { return encoding; }//from w w w. j av a2 s. c o m } } return JsonEncoding.UTF8; }