List of usage examples for com.fasterxml.jackson.core JsonFactory createJsonGenerator
@Deprecated public JsonGenerator createJsonGenerator(OutputStream out) throws IOException
From source file:com.teamlazerbeez.crm.sf.rest.HttpApiClientTest.java
private static String reformatJson(String input) throws IOException { JsonFactory jsonFactory = new JsonFactory(); JsonParser parser = jsonFactory.createJsonParser(input); StringWriter writer = new StringWriter(); JsonGenerator generator = jsonFactory.createJsonGenerator(writer); generator.useDefaultPrettyPrinter(); while (parser.nextToken() != null) { generator.copyCurrentEvent(parser); }//from ww w. j a v a2 s. c o m generator.close(); return writer.toString(); }
From source file:com.baasbox.configuration.PropertiesConfigurationHelper.java
public static String dumpConfigurationAsJson() { ImmutableCollection<String> keys = CONFIGURATION_SECTIONS.keySet(); ObjectMapper mapper = new ObjectMapper(); JsonFactory jfactory = mapper.getJsonFactory(); StringWriter sw = new StringWriter(); try {/*from ww w . j a v a 2s .co m*/ JsonGenerator gen = jfactory.createJsonGenerator(sw); gen.writeStartArray(); for (String v : keys) { String st = dumpConfigurationAsJson(v); ObjectMapper op = new ObjectMapper(); JsonNode p = op.readTree(st); BaasBoxLogger.debug("OBJECT:" + p.toString()); BaasBoxLogger.debug("STRING:" + st); //JsonParser jp = jfactory.createJsonParser(st); gen.writeTree(p); } gen.writeEndArray(); gen.close(); return sw.toString(); } catch (Exception e) { BaasBoxLogger.error("Cannot generate a json for the configuration", e); } return "[]"; }
From source file:com.baasbox.configuration.PropertiesConfigurationHelper.java
public static String dumpConfigurationSectionAsFlatJson(String section) { Class en = CONFIGURATION_SECTIONS.get(section); try {/*from ww w. j a v a2s .c om*/ JsonFactory jfactory = new JsonFactory(); StringWriter sw = new StringWriter(); String enumDescription = ""; JsonGenerator gen = jfactory.createJsonGenerator(sw); gen.writeStartArray(); EnumSet values = EnumSet.allOf(en); for (Object v : values) { String key = (String) (en.getMethod("getKey")).invoke(v); boolean isVisible = (Boolean) (en.getMethod("isVisible")).invoke(v); String valueAsString; if (isVisible) valueAsString = (String) (en.getMethod("getValueAsString")).invoke(v); else valueAsString = "--HIDDEN--"; boolean isEditable = (Boolean) (en.getMethod("isEditable")).invoke(v); boolean isOverridden = (Boolean) (en.getMethod("isOverridden")).invoke(v); String valueDescription = (String) (en.getMethod("getValueDescription")).invoke(v); Class type = (Class) en.getMethod("getType").invoke(v); gen.writeStartObject(); // { gen.writeStringField("key", key); gen.writeStringField("value", valueAsString); gen.writeStringField("description", valueDescription); // ,"description":"description" gen.writeStringField("type", type.getSimpleName()); // ,"type":"type" gen.writeBooleanField("editable", isEditable); gen.writeBooleanField("overridden", isOverridden); gen.writeEndObject(); // } } if (gen.getOutputContext().inArray()) gen.writeEndArray(); // ] gen.close(); return sw.toString(); } catch (Exception e) { BaasBoxLogger.error("Cannot generate a json for " + en.getSimpleName() + " Enum. Is it an Enum that implements the IProperties interface?", e); } return "{}"; }
From source file:com.baasbox.configuration.PropertiesConfigurationHelper.java
/*** * * Returns a json representation of the Enumerator * The Enumerator must implements the IProperties interface * @param en the Enumerator to serialize. It must implements the IProperties interface * @return the representation of the Enumerator *//* w w w. j a v a 2s . c om*/ @SuppressWarnings("unchecked") public static String dumpConfigurationAsJson(String section) { Class en = CONFIGURATION_SECTIONS.get(section); try { JsonFactory jfactory = new JsonFactory(); StringWriter sw = new StringWriter(); String enumDescription = ""; JsonGenerator gen = jfactory.createJsonGenerator(sw); Method getEnumDescription = en.getMethod("getEnumDescription"); if (getEnumDescription != null && getEnumDescription.getReturnType() == String.class && Modifier.isStatic(getEnumDescription.getModifiers())) enumDescription = (String) getEnumDescription.invoke(null); gen.writeStartObject(); //{ gen.writeStringField("section", section); // "configuration":"EnumName" gen.writeStringField("description", enumDescription); // ,"description": "EnumDescription" gen.writeFieldName("sub sections"); // ,"sections": gen.writeStartObject(); // { String lastSection = ""; EnumSet values = EnumSet.allOf(en); for (Object v : values) { String key = (String) (en.getMethod("getKey")).invoke(v); boolean isVisible = (Boolean) (en.getMethod("isVisible")).invoke(v); String valueAsString; if (isVisible) valueAsString = (String) (en.getMethod("getValueAsString")).invoke(v); else valueAsString = "--HIDDEN--"; boolean isEditable = (Boolean) (en.getMethod("isEditable")).invoke(v); String valueDescription = (String) (en.getMethod("getValueDescription")).invoke(v); Class type = (Class) en.getMethod("getType").invoke(v); String subsection = key.substring(0, key.indexOf('.')); if (!lastSection.equals(subsection)) { if (gen.getOutputContext().inArray()) gen.writeEndArray(); gen.writeFieldName(subsection); // "sectionName": gen.writeStartArray(); // [ lastSection = subsection; } boolean isOverridden = (Boolean) (en.getMethod("isOverridden")).invoke(v); gen.writeStartObject(); // { gen.writeStringField(key, valueAsString); // "key": "value" gen.writeStringField("description", valueDescription); // ,"description":"description" gen.writeStringField("type", type.getSimpleName()); // ,"type":"type" gen.writeBooleanField("editable", isEditable); // ,"editable":"true|false" gen.writeBooleanField("visible", isVisible); // ,"visible":"true|false" gen.writeBooleanField("overridden", isOverridden); // ,"overridden":"true|false" gen.writeEndObject(); // } } if (gen.getOutputContext().inArray()) gen.writeEndArray(); // ] gen.writeEndObject(); // } gen.writeEndObject(); //} gen.close(); return sw.toString(); } catch (Exception e) { BaasBoxLogger.error("Cannot generate a json for " + en.getSimpleName() + " Enum. Is it an Enum that implements the IProperties interface?", e); } return "{}"; }
From source file:com.vmware.bdd.cli.commands.CommandsUtils.java
public static void prettyJsonOutput(Object object, String fileName) throws Exception { OutputStream out = null;//from w w w.ja v a2 s. co m try { if (fileName != null) { out = new FileOutputStream(fileName); } else { out = System.out; } JsonFactory factory = new JsonFactory(); JsonGenerator generator = factory.createJsonGenerator(out); ObjectMapper mapper = getMapper(); mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); generator.setCodec(mapper); DefaultPrettyPrinter prettyPrinter = new DefaultPrettyPrinter(); DefaultPrettyPrinter.Indenter indenter = new DefaultPrettyPrinter.Lf2SpacesIndenter(); prettyPrinter.indentArraysWith(indenter); generator.setPrettyPrinter(prettyPrinter); generator.writeObject(object); writeEndingMsgToScreen(fileName); } finally { if (out != null && !(out instanceof PrintStream)) { out.close(); } } }
From source file:com.amazonaws.services.dynamodb.datamodeling.JsonMarshaller.java
@Override public String marshall(T obj) { try {//from w w w . j a v a2s .co m JsonFactory jsonFactory = new MappingJsonFactory(); StringWriter output = new StringWriter(); JsonGenerator jsonGenerator = jsonFactory.createJsonGenerator(output); jsonGenerator.writeObject(obj); return output.toString(); } catch (Exception e) { throw new RuntimeException(e); } }
From source file:be.dnsbelgium.rdap.jackson.AbstractSerializerTest.java
@SuppressWarnings("unchecked") public void serializeAndAssertEquals(String expected, S o, SerializerProvider sp) throws IOException { JsonFactory factory = new JsonFactory(); T serializer = getSerializer();/*ww w . ja va 2 s.c o m*/ StringWriter sw = new StringWriter(); JsonGenerator jgen = factory.createJsonGenerator(sw); serializer.serialize(o, jgen, sp); // unchecked jgen.flush(); sw.flush(); String result = sw.toString(); sw.close(); assertEquals(expected, result); }
From source file:de.terrestris.shogun.security.ShogunAuthProcessingFilter.java
/** * On successful authentication by an Authentication Manager of Spring Security * we intercept with this method and change the respone to include the ROLES of * the logged in user.// w ww . j a v a 2 s . c om * This way we can react on the ROLES and redirect accordingly within the requesting login form (here login.js) * * @see WebContent/client/login.js */ @Override protected void successfulAuthentication(HttpServletRequest request, HttpServletResponse response, Authentication authResult) throws IOException, ServletException { SecurityContextHolder.getContext().setAuthentication(authResult); SavedRequestAwareAuthenticationSuccessHandler srh = new SavedRequestAwareAuthenticationSuccessHandler(); this.setAuthenticationSuccessHandler(srh); srh.setRedirectStrategy(new RedirectStrategy() { @Override public void sendRedirect(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, String s) throws IOException { //do nothing, no redirect } }); super.successfulAuthentication(request, response, authResult); // build a comma separated string of the ROLES String authorityText = StringUtils.join(authResult.getAuthorities(), ","); // write the servlet return object HttpServletResponseWrapper responseWrapper = new HttpServletResponseWrapper(response); Writer out = responseWrapper.getWriter(); JsonFactory jsonFactory = new JsonFactory(); JsonGenerator jsonGenerator = jsonFactory.createJsonGenerator(out); jsonGenerator.writeStartObject(); jsonGenerator.writeBooleanField("success", true); jsonGenerator.writeStringField("name", authResult.getName()); jsonGenerator.writeStringField("role", authorityText); jsonGenerator.writeEndObject(); jsonGenerator.close(); }
From source file:org.openiot.security.oauth.OAuth20ProfileController.java
@Override protected ModelAndView handleRequestInternal(final HttpServletRequest request, final HttpServletResponse response) throws Exception { final String accessToken = request.getParameter(OAuthConstants.ACCESS_TOKEN); log.debug("accessToken : {}", accessToken); final JsonFactory jsonFactory = new JsonFactory(); final JsonGenerator jsonGenerator = jsonFactory.createJsonGenerator(response.getWriter()); response.setContentType("application/json"); // accessToken is required if (StringUtils.isBlank(accessToken)) { log.error("missing accessToken"); jsonGenerator.writeStartObject(); jsonGenerator.writeStringField("error", OAuthConstants.MISSING_ACCESS_TOKEN); jsonGenerator.writeEndObject();/* w w w .java 2 s. c o m*/ jsonGenerator.close(); response.flushBuffer(); return null; } // get ticket granting ticket final TicketGrantingTicket ticketGrantingTicket = (TicketGrantingTicket) this.ticketRegistry .getTicket(accessToken); if (ticketGrantingTicket == null || ticketGrantingTicket.isExpired()) { log.error("expired accessToken : {}", accessToken); jsonGenerator.writeStartObject(); jsonGenerator.writeStringField("error", OAuthConstants.EXPIRED_ACCESS_TOKEN); jsonGenerator.writeEndObject(); jsonGenerator.close(); response.flushBuffer(); return null; } // generate profile : identifier + attributes final Principal principal = ticketGrantingTicket.getAuthentication().getPrincipal(); jsonGenerator.writeStartObject(); jsonGenerator.writeStringField(CasWrapperProfile.ID, principal.getId()); jsonGenerator.writeArrayFieldStart(CasWrapperProfile.ATTRIBUTES); final Map<String, Object> attributes = principal.getAttributes(); for (final String key : attributes.keySet()) { jsonGenerator.writeStartObject(); Object vals = attributes.get(key); if (vals instanceof Iterable<?>) { jsonGenerator.writeArrayFieldStart(key); for (final Object value : (Iterable<?>) vals) jsonGenerator.writeString(value.toString()); jsonGenerator.writeEndArray(); } else if ("role_name".equals(key)) { jsonGenerator.writeArrayFieldStart(key); if (!StringUtils.isBlank((String) vals)) jsonGenerator.writeString(vals.toString()); jsonGenerator.writeEndArray(); } else jsonGenerator.writeObjectField(key, attributes.get(key)); jsonGenerator.writeEndObject(); } jsonGenerator.writeEndArray(); jsonGenerator.writeEndObject(); jsonGenerator.close(); response.flushBuffer(); return null; }
From source file:org.openiot.security.oauth.lsm.LSMOAuth20PermissionController.java
private void writeErrorMessage(HttpServletResponse response, String message) throws IOException { final JsonFactory jsonFactory = new JsonFactory(); final JsonGenerator jsonGenerator = jsonFactory.createJsonGenerator(response.getWriter()); jsonGenerator.writeStartObject();// w w w . j a v a 2 s .co m jsonGenerator.writeStringField("error", message); jsonGenerator.writeEndObject(); jsonGenerator.close(); response.flushBuffer(); }