List of usage examples for com.fasterxml.jackson.databind ObjectMapper writer
public ObjectWriter writer(ContextAttributes attrs)
From source file:org.apache.asterix.test.common.ResultExtractor.java
public static InputStream extract(InputStream resultStream) throws Exception { ObjectMapper om = new ObjectMapper(); String resultStr = IOUtils.toString(resultStream, Charset.defaultCharset()); PrettyPrinter singleLine = new SingleLinePrettyPrinter(); ObjectNode result = om.readValue(resultStr, ObjectNode.class); LOGGER.fine("+++++++\n" + result + "\n+++++++\n"); String type = ""; String status = ""; String results = ""; String field = ""; for (Iterator<String> sIter = result.fieldNames(); sIter.hasNext();) { field = sIter.next();/*from w w w. jav a 2 s .co m*/ switch (field) { case "requestID": break; case "clientContextID": break; case "signature": break; case "status": status = om.writeValueAsString(result.get(field)); break; case "type": type = om.writeValueAsString(result.get(field)); break; case "metrics": LOGGER.fine(om.writeValueAsString(result.get(field))); break; case "errors": JsonNode errors = result.get(field).get(0).get("msg"); throw new AsterixException(errors.asText()); case "results": if (result.get(field).size() <= 1) { if (result.get(field).size() == 0) { results = ""; } else if (result.get(field).isArray()) { if (result.get(field).get(0).isTextual()) { results = result.get(field).get(0).asText(); } else { ObjectMapper omm = new ObjectMapper(); omm.setDefaultPrettyPrinter(singleLine); omm.enable(SerializationFeature.INDENT_OUTPUT); results = omm.writer(singleLine).writeValueAsString(result.get(field)); } } else { results = om.writeValueAsString(result.get(field)); } } else { StringBuilder sb = new StringBuilder(); JsonNode[] fields = Iterators.toArray(result.get(field).elements(), JsonNode.class); if (fields.length > 1) { for (JsonNode f : fields) { if (f.isObject()) { sb.append(om.writeValueAsString(f)); } else { sb.append(f.asText()); } } } results = sb.toString(); } break; default: throw new AsterixException("Unanticipated field \"" + field + "\""); } } return IOUtils.toInputStream(results); }
From source file:org.apereo.portal.dao.usertype.StatisticsJacksonColumnMapper.java
@Override protected ObjectWriter createObjectWriter(ObjectMapper mapper) { return mapper.writer(filters); }
From source file:org.apereo.portal.events.aggr.JpaStatisticalSummaryTest.java
public void testStorelessUnivariateStatistic(StorelessUnivariateStatistic sus, double expected) throws Exception { assertEquals(expected, sus.getResult(), 0.1); final ObjectMapper mapper = new ObjectMapper(); mapper.findAndRegisterModules();/*from w w w . j a v a 2 s . com*/ //Configure Jackson to just use fields mapper.setVisibility(PropertyAccessor.FIELD, Visibility.ANY); mapper.setVisibility(PropertyAccessor.GETTER, Visibility.NONE); mapper.setVisibility(PropertyAccessor.IS_GETTER, Visibility.NONE); mapper.setVisibility(PropertyAccessor.SETTER, Visibility.NONE); mapper.setVisibility(PropertyAccessor.CREATOR, Visibility.NONE); mapper.addMixInAnnotations(Object.class, IgnoreTypeMixIn.class); final FilterProvider filters = new SimpleFilterProvider().addFilter("storedDataFilter", SimpleBeanPropertyFilter.serializeAllExcept("storedData")); final ObjectWriter ssWriter = mapper.writer(filters); final ObjectReader ssReader = mapper.reader(sus.getClass()); final String susString = ssWriter.writeValueAsString(sus); System.out.println(susString); final StorelessUnivariateStatistic newSus = ssReader.readValue(susString); assertEquals(expected, newSus.getResult(), 0.1); }