List of usage examples for com.fasterxml.jackson.core JsonGenerator writeObjectFieldStart
public final void writeObjectFieldStart(String fieldName) throws IOException, JsonGenerationException
From source file:com.greglturnquist.embeddablesdr.SystemDependencySerializer.java
@Override public void serialize(final SystemDependency systemDependency, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonGenerationException { Link link = entityLinks.linkToSingleResource(System.class, systemDependency.getTarget().getId()); jgen.writeStartObject();//from w ww .j av a 2s . c o m jgen.writeStringField("description", systemDependency.getDescription()); jgen.writeObjectFieldStart("_links"); jgen.writeObjectFieldStart("target"); jgen.writeStringField("href", link.getHref()); jgen.writeEndObject(); jgen.writeEndObject(); jgen.writeEndObject(); }
From source file:com.strategicgains.hyperexpress.serialization.jackson.HalResourceSerializer.java
private void writeEmbedded(Resource resource, JsonGenerator jgen) throws JsonGenerationException, IOException { Map<String, List<Resource>> embedded = resource.getResources(); if (embedded.isEmpty()) return;//from w ww . jav a2s . co m jgen.writeObjectFieldStart(EMBEDDED); for (Entry<String, List<Resource>> entry : embedded.entrySet()) { if (entry.getValue().size() == 1 && !resource.isMultipleResources(entry.getKey())) { jgen.writeObjectFieldStart(entry.getKey()); renderJson((HalResource) entry.getValue().iterator().next(), jgen, true); jgen.writeEndObject(); } else { jgen.writeArrayFieldStart(entry.getKey()); for (Resource r : entry.getValue()) { jgen.writeStartObject(); renderJson((HalResource) r, jgen, true); jgen.writeEndObject(); } jgen.writeEndArray(); } } jgen.writeEndObject(); }
From source file:org.springframework.cloud.netflix.hystrix.amqp.HystrixStreamTask.java
private void addServiceData(JsonGenerator json, ServiceInstance localService) throws IOException { json.writeObjectFieldStart("origin"); json.writeStringField("host", localService.getHost()); json.writeNumberField("port", localService.getPort()); json.writeStringField("serviceId", localService.getServiceId()); if (this.properties.isSendId()) { json.writeStringField("id", this.context.getId()); }//from w w w . ja v a 2 s.c o m json.writeEndObject(); }
From source file:net.logstash.logback.composite.loggingevent.MdcJsonProvider.java
@Override public void writeTo(JsonGenerator generator, ILoggingEvent event) throws IOException { Map<String, String> mdcProperties = event.getMDCPropertyMap(); if (mdcProperties != null && !mdcProperties.isEmpty()) { if (getFieldName() != null) { generator.writeObjectFieldStart(getFieldName()); }// w ww. j a v a 2s.c o m if (!includeMdcKeyNames.isEmpty()) { mdcProperties = new HashMap<String, String>(mdcProperties); mdcProperties.keySet().retainAll(includeMdcKeyNames); } if (!excludeMdcKeyNames.isEmpty()) { mdcProperties = new HashMap<String, String>(mdcProperties); mdcProperties.keySet().removeAll(excludeMdcKeyNames); } JsonWritingUtils.writeMapEntries(generator, mdcProperties); if (getFieldName() != null) { generator.writeEndObject(); } } }
From source file:api.controller.ApiDocsController.java
@RequestMapping(method = RequestMethod.GET, headers = "Accept=application/json") public @ResponseBody String genDocs() throws IOException { StringWriter sw = new StringWriter(); JsonGenerator g = new JsonFactory().createGenerator(sw); g.useDefaultPrettyPrinter();/* www. j a v a 2s. c o m*/ g.writeStartObject(); g.writeStringField("swagger", "2.0"); g.writeObjectFieldStart("info"); g.writeStringField("title", "Java, SpringMVC, Jetty, Heroku API example"); g.writeStringField("description", "Example of simple microservice for API"); g.writeObjectFieldStart("contact"); g.writeStringField("name", "zedar"); g.writeStringField("url", "https://github.com/zedar"); g.writeEndObject(); g.writeObjectFieldStart("license"); g.writeStringField("name", "Creative Commons 4.0 International"); g.writeStringField("url", "http://creativecommons.org/licenses/by/4.0/"); g.writeEndObject(); g.writeStringField("version", "0.0.1"); g.writeEndObject(); g.writeStringField("host", "api-springmvc-jetty.herokuapp.com"); g.writeStringField("basePath", "/api"); g.writeArrayFieldStart("schemes"); g.writeString("https"); g.writeEndArray(); g.writeObjectFieldStart("paths"); g.writeObjectFieldStart("/actions"); g.writeObjectFieldStart("get"); g.writeArrayFieldStart("tags"); g.writeString("action"); g.writeEndArray(); g.writeStringField("summary", "Find actions with optional query"); g.writeArrayFieldStart("parameters"); g.writeStartObject(); g.writeStringField("name", "query"); g.writeStringField("in", "query"); g.writeStringField("type", "string"); g.writeEndObject(); g.writeEndArray(); g.writeObjectFieldStart("responses"); g.writeObjectFieldStart("200"); g.writeStringField("description", "Response with list of found actions"); g.writeObjectFieldStart("schema"); g.writeStringField("type", "array"); g.writeObjectFieldStart("items"); g.writeStringField("$ref", "#/definitions/Action"); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.writeObjectFieldStart("default"); g.writeStringField("description", "Unexpected error"); g.writeObjectFieldStart("schema"); g.writeStringField("$ref", "#/definitions/Error"); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.writeObjectFieldStart("definitions"); g.writeObjectFieldStart("Action"); g.writeArrayFieldStart("required"); g.writeString("id"); g.writeString("name"); g.writeEndArray(); g.writeObjectFieldStart("properties"); g.writeObjectFieldStart("id"); g.writeStringField("type", "string"); g.writeEndObject(); g.writeObjectFieldStart("name"); g.writeStringField("type", "string"); g.writeEndObject(); g.writeObjectFieldStart("description"); g.writeStringField("type", "string"); g.writeEndObject(); g.writeObjectFieldStart("url"); g.writeStringField("type", "string"); g.writeEndObject(); g.writeObjectFieldStart("tags"); g.writeStringField("type", "string"); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.writeObjectFieldStart("Error"); g.writeArrayFieldStart("required"); g.writeString("code"); g.writeString("message"); g.writeEndArray(); g.writeObjectFieldStart("properties"); g.writeObjectFieldStart("code"); g.writeStringField("type", "string"); g.writeEndObject(); g.writeObjectFieldStart("message"); g.writeStringField("type", "string"); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.writeEndObject(); g.close(); String out = sw.toString(); log.debug("API-DOCS:" + out); return out; }
From source file:com.ning.metrics.serialization.event.TestSmileEnvelopeEvent.java
@BeforeTest public void setUp() throws IOException { // Use same configuration as SmileEnvelopeEvent final SmileFactory f = new SmileFactory(); f.configure(SmileGenerator.Feature.CHECK_SHARED_NAMES, true); f.configure(SmileGenerator.Feature.CHECK_SHARED_STRING_VALUES, true); f.configure(SmileParser.Feature.REQUIRE_HEADER, false); final ByteArrayOutputStream stream = new ByteArrayOutputStream(); final JsonGenerator g = f.createJsonGenerator(stream); g.writeStartObject();/*from w w w . j av a 2 s .c o m*/ g.writeStringField(SmileEnvelopeEvent.SMILE_EVENT_GRANULARITY_TOKEN_NAME, eventGranularity.toString()); g.writeObjectFieldStart("name"); g.writeStringField("first", "Joe"); g.writeStringField("last", "Sixpack"); g.writeEndObject(); // for field 'name' g.writeStringField("gender", "MALE"); g.writeNumberField(SmileEnvelopeEvent.SMILE_EVENT_DATETIME_TOKEN_NAME, eventDateTime.getMillis()); g.writeBooleanField("verified", false); g.writeEndObject(); g.close(); // important: will force flushing of output, close underlying output stream serializedBytes = stream.toByteArray(); // one sanity check; should be able to round-trip via String (iff using latin-1!) serializedString = stream.toString(SmileEnvelopeEvent.CHARSET.toString()); }
From source file:org.createnet.raptor.models.objects.serializer.RecordSetSerializer.java
@Override public void serialize(RecordSet r, JsonGenerator jg, SerializerProvider sp) throws IOException { final Stream stream = r.getStream(); ServiceObject obj = null;/*ww w .j a va 2 s. co m*/ if (stream != null) { obj = stream.getServiceObject(); } jg.writeStartObject(); jg.writeObjectFieldStart("channels"); for (Map.Entry<String, IRecord> item : r.channels.entrySet()) { String channelName = item.getKey(); IRecord channel = item.getValue(); // enforce stream schema if available if (r.getStream() != null) { if (!r.getStream().channels.containsKey(channelName)) { // skip unmanaged field return; } } if (channel == null) { continue; } if (channel.getValue() == null) { continue; } jg.writeObjectField(channelName, channel.getValue()); // jg.writeObjectFieldStart(channelName); // jg.writeObjectField("current-value", channel.getValue()); // jg.writeEndObject(); } jg.writeEndObject(); jg.writeNumberField("timestamp", r.getTimestampTime()); // try to get a value if (r.userId == null && obj != null) { r.userId = obj.userId; } if (r.userId != null) { jg.writeStringField("userId", r.userId); } // try to get a value if (r.objectId == null && obj != null) { r.objectId = obj.id; } if (r.objectId != null) { jg.writeStringField("objectId", r.objectId); } // try to get a value if (r.streamId == null && stream != null) { r.streamId = stream.name; } if (r.streamId != null) { jg.writeStringField("streamId", r.streamId); } jg.writeEndObject(); }
From source file:com.predic8.membrane.core.interceptor.authentication.session.TelekomSMSTokenProvider.java
@Override protected void sendSMS(String text, String recipientNumber) { recipientNumber = recipientNumber.replaceAll("^00", "\\+"); try {/*w w w. ja v a 2 s . c o m*/ ByteArrayOutputStream baos = new ByteArrayOutputStream(); JsonFactory jsonFactory = new JsonFactory(); JsonGenerator jg = jsonFactory.createGenerator(baos, JsonEncoding.UTF8); jg.writeStartObject(); jg.writeObjectFieldStart("outboundSMSMessageRequest"); jg.writeArrayFieldStart("address"); jg.writeString("tel:" + recipientNumber); jg.writeEndArray(); jg.writeStringField("senderAddress", senderAddress); jg.writeObjectFieldStart("outboundSMSTextMessage"); jg.writeStringField("message", text); jg.writeEndObject(); jg.writeStringField("outboundEncoding", "7bitGSM"); jg.writeStringField("clientCorrelator", "" + ((long) (Math.random() * Long.MAX_VALUE))); if (senderName != null) jg.writeStringField("senderName", senderName); jg.writeEndObject(); jg.writeEndObject(); jg.close(); Exchange exc = new Request.Builder() .post("https://gateway.developer.telekom.com/plone/sms/rest/" + environment.name().toLowerCase() + "/smsmessaging/v1/outbound/" + URLEncoder.encode(senderAddress, "UTF-8") + "/requests") .header("Host", "gateway.developer.telekom.com") .header("Authorization", "OAuth realm=\"developergarden.com\",oauth_token=\"" + getAccessToken() + "\"") .header("Accept", "application/json").header("Content-Type", "application/json") .body(baos.toByteArray()).buildExchange(); exc.setRule(new NullRule() { @Override public SSLProvider getSslOutboundContext() { return new SSLContext(new SSLParser(), new ResolverMap(), null); } }); hc.call(exc, false, true); if (exc.getResponse().getStatusCode() != 201) throw new RuntimeException("Could not send SMS: " + exc.getResponse()); log.debug("sent SMS to " + recipientNumber); } catch (Exception e2) { throw new RuntimeException(e2); } }
From source file:net.logstash.logback.LogstashAbstractFormatter.java
/** * Writes a map as String fields to the generator if and only if the fieldName and values are not null. */// www . j a va 2 s . com protected void writeMapStringFields(JsonGenerator generator, String fieldName, Map<String, String> map) throws IOException, JsonMappingException { if (shouldWriteField(fieldName) && map != null && !map.isEmpty()) { generator.writeObjectFieldStart(fieldName); for (Map.Entry<String, String> entry : map.entrySet()) { writeStringField(generator, entry.getKey(), entry.getValue()); } generator.writeEndObject(); } }
From source file:com.arpnetworking.logback.serialization.BaseSerializationStrategy.java
/** * Complete writing the Steno JSON wrapper. * * @param event Instance of <code>ILoggingEvent</code>. * @param eventName The name of the event. * @param contextKeys The <code>List</code> of context keys. * @param contextValues The <code>List</code> of context values. * @param jsonGenerator <code>JsonGenerator</code> instance. * @param objectMapper <code>ObjectMapper</code> instance. * @throws IOException If writing JSON fails. *///from w w w.j a v a 2 s .co m // CHECKSTYLE.OFF: NPathComplexity - Many combinations protected void endStenoWrapper(final ILoggingEvent event, final String eventName, final List<String> contextKeys, final List<Object> contextValues, final JsonGenerator jsonGenerator, final ObjectMapper objectMapper) throws IOException { jsonGenerator.writeObjectFieldStart("context"); if (_encoder.isInjectContextHost()) { jsonGenerator.writeStringField("host", HOST_CONVERTER.convert(event)); } if (_encoder.isInjectContextProcess()) { jsonGenerator.writeStringField("processId", PROCESS_CONVERTER.convert(event)); } if (_encoder.isInjectContextThread()) { jsonGenerator.writeStringField("threadId", THREAD_CONVERTER.convert(event)); } if (_encoder.isInjectContextLogger()) { if (_encoder.isCompressLoggerName()) { jsonGenerator.writeStringField("logger", CONDENSED_LOGGER_CONVERTER.convert(event)); } else { jsonGenerator.writeStringField("logger", LOGGER_CONVERTER.convert(event)); } } if (_encoder.isInjectContextFile()) { jsonGenerator.writeStringField("file", FILE_CONVERTER.convert(event)); } if (_encoder.isInjectContextClass()) { jsonGenerator.writeStringField("class", CLASS_CONVERTER.convert(event)); } if (_encoder.isInjectContextMethod()) { jsonGenerator.writeStringField("method", METHOD_CONVERTER.convert(event)); } if (_encoder.isInjectContextLine()) { jsonGenerator.writeStringField("line", LINE_CONVERTER.convert(event)); } for (final String key : _encoder.getMdcProperties()) { final String value = event.getMDCPropertyMap().get(key); jsonGenerator.writeStringField(key, value); } writeKeyValuePairs(contextKeys, contextValues, jsonGenerator, objectMapper); jsonGenerator.writeEndObject(); // End 'context' field jsonGenerator.writeObjectField("id", createId()); jsonGenerator.writeObjectField("version", "0"); jsonGenerator.writeEndObject(); // End log message jsonGenerator.writeRaw('\n'); jsonGenerator.flush(); }