List of usage examples for com.fasterxml.jackson.databind ObjectMapper getTypeFactory
public TypeFactory getTypeFactory()
From source file:co.rsk.core.NetworkStateExporterTest.java
private Map writeAndReadJson(Repository repository) throws Exception { NetworkStateExporter nse = new NetworkStateExporter(repository); Assert.assertTrue(nse.exportStatus(jsonFileName)); InputStream inputStream = new FileInputStream(jsonFileName); String json = new String(ByteStreams.toByteArray(inputStream)); ObjectMapper mapper = new ObjectMapper(); JavaType type = mapper.getTypeFactory().constructType(HashMap.class); Map result = new ObjectMapper().readValue(json, type); return result; }
From source file:com.vsct.dt.hesperides.indexation.search.ApplicationSearch.java
/** * Main constructor.//from ww w.ja v a 2 s .com * * @param elasticSearchClient */ public ApplicationSearch(final ElasticSearchClient elasticSearchClient) { ObjectMapper objectMapper = Jackson.newObjectMapper(); JavaType searchType = objectMapper.getTypeFactory().constructParametricType(ElasticSearchResponse.class, ApplicationSearchResponse.class); this.elasticSearchVsctApplicationReader = objectMapper.reader(searchType); JavaType searchTypePlatform = objectMapper.getTypeFactory() .constructParametricType(ElasticSearchResponse.class, PlatformSearchResponse.class); this.elasticSearchVsctPlatformReader = objectMapper.reader(searchTypePlatform); JavaType searchTypePlatformApplication = objectMapper.getTypeFactory() .constructParametricType(ElasticSearchResponse.class, PlatformApplicationSearchResponse.class); this.elasticSearchVsctPlatformApplicationReader = objectMapper.reader(searchTypePlatformApplication); this.elasticSearchClient = elasticSearchClient; }
From source file:org.apache.streams.data.MoreoverJsonActivitySerializer.java
@Override public Activity deserialize(String serialized) { serialized = serialized.replaceAll("\\[[ ]*\\]", "null"); System.out.println(serialized); ObjectMapper mapper = new ObjectMapper(); AnnotationIntrospector introspector = new JaxbAnnotationIntrospector(mapper.getTypeFactory()); mapper.setAnnotationIntrospector(introspector); mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, Boolean.FALSE); mapper.configure(DeserializationFeature.FAIL_ON_INVALID_SUBTYPE, Boolean.FALSE); mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, Boolean.TRUE); mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, Boolean.TRUE); mapper.configure(DeserializationFeature.WRAP_EXCEPTIONS, Boolean.TRUE); Article article;//from w w w . j av a 2 s.co m try { ObjectNode node = (ObjectNode) mapper.readTree(serialized); node.remove("tags"); node.remove("locations"); node.remove("companies"); node.remove("topics"); node.remove("media"); node.remove("outboundUrls"); ObjectNode jsonNodes = (ObjectNode) node.get("source").get("feed"); jsonNodes.remove("editorialTopics"); jsonNodes.remove("tags"); jsonNodes.remove("autoTopics"); article = mapper.convertValue(node, Article.class); } catch (IOException e) { throw new IllegalArgumentException("Unable to deserialize", e); } return MoreoverUtils.convert(article); }
From source file:org.talend.dataprep.schema.html.HtmlSerializerTest.java
@Test public void html_serializer_with_jira_export() throws Exception { final SchemaParser.Request request; final Schema result; try (InputStream inputStream = this.getClass().getResourceAsStream("jira_export.xls")) { // We do know the format and therefore we go directly to the HTML schema guessing request = getRequest(inputStream, "#2"); request.getMetadata().setEncoding("UTF-16"); result = htmlSchemaGuesser.parse(request); }/*from w w w . j a v a 2 s. c o m*/ try (InputStream inputStream = this.getClass().getResourceAsStream("jira_export.xls")) { final List<ColumnMetadata> columns = result.getSheetContents().get(0).getColumnMetadatas(); Assert.assertThat(columns.size(), is(98)); request.getMetadata().getRowMetadata().setColumns(columns); InputStream jsonStream = htmlSerializer.serialize(inputStream, request.getMetadata(), -1); String json = IOUtils.toString(jsonStream); ObjectMapper mapper = new ObjectMapper(); CollectionType collectionType = mapper.getTypeFactory().constructCollectionType(ArrayList.class, TreeMap.class); List<Map<String, String>> values = mapper.readValue(json, collectionType); Map<String, String> row0 = values.get(0); for (String s : row0.keySet()) { row0.put(s, row0.get(s).trim()); } Assertions.assertThat(row0).contains(MapEntry.entry("0001", "TDP-1")); } }
From source file:org.apache.streams.moreover.MoreoverJsonActivitySerializer.java
@Override public Activity deserialize(String serialized) { serialized = serialized.replaceAll("\\[[ ]*\\]", "null"); LOGGER.debug(serialized);//from ww w. j a v a2 s. c o m ObjectMapper mapper = new ObjectMapper(); AnnotationIntrospector introspector = new JaxbAnnotationIntrospector(mapper.getTypeFactory()); mapper.setAnnotationIntrospector(introspector); mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, Boolean.FALSE); mapper.configure(DeserializationFeature.FAIL_ON_INVALID_SUBTYPE, Boolean.FALSE); mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, Boolean.TRUE); mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, Boolean.TRUE); mapper.configure(DeserializationFeature.WRAP_EXCEPTIONS, Boolean.TRUE); Article article; try { ObjectNode node = (ObjectNode) mapper.readTree(serialized); node.remove("tags"); node.remove("locations"); node.remove("companies"); node.remove("topics"); node.remove("media"); node.remove("outboundUrls"); ObjectNode jsonNodes = (ObjectNode) node.get("source").get("feed"); jsonNodes.remove("editorialTopics"); jsonNodes.remove("tags"); jsonNodes.remove("autoTopics"); article = mapper.convertValue(node, Article.class); } catch (IOException ex) { throw new IllegalArgumentException("Unable to deserialize", ex); } return MoreoverUtils.convert(article); }
From source file:net.mostlyharmless.jghservice.connector.jira.SearchIssues.java
@Override public List<JiraEvent.Issue> processResponse(String jsonResponse) throws IOException { ObjectMapper m = new ObjectMapperProvider().getContext(JiraEvent.Issue.class); ObjectNode root = (ObjectNode) m.readTree(jsonResponse); JavaType t = m.getTypeFactory().constructCollectionType(List.class, JiraEvent.Issue.class); return m.convertValue(root.get("issues"), t); }
From source file:io.syndesis.jsondb.dao.JsonDbDao.java
@Override public ListResult<T> fetchAll() { try {/*from w w w. j a va2 s. c om*/ // get the data out.. byte[] json = jsondb.getAsByteArray(getCollectionPath()); if (json != null && json.length > 0) { // Lets use jackson to parse the map of keys to our model instances ObjectMapper mapper = Json.mapper(); TypeFactory typeFactory = mapper.getTypeFactory(); MapType mapType = typeFactory.constructMapType(LinkedHashMap.class, String.class, getType()); LinkedHashMap<String, T> map = mapper.readValue(json, mapType); return ListResult.of(map.values()); } return ListResult.of(Collections.<T>emptyList()); } catch (@SuppressWarnings("PMD.AvoidCatchingGenericException") RuntimeException | IOException e) { throw SyndesisServerException.launderThrowable(e); } }
From source file:org.talend.dataprep.schema.html.HtmlSerializerTest.java
@Test public void html_serializer() throws Exception { final SchemaParser.Request request; final Schema result; try (InputStream inputStream = this.getClass().getResourceAsStream("sales-force.xls")) { // We do know the format and therefore we go directly to the HTML schema guessing request = getRequest(inputStream, "#2"); request.getMetadata().setEncoding("UTF-16"); result = htmlSchemaGuesser.parse(request); }/* w w w.j a v a 2 s . c om*/ try (InputStream inputStream = this.getClass().getResourceAsStream("sales-force.xls")) { request.getMetadata().getRowMetadata() .setColumns(result.getSheetContents().get(0).getColumnMetadatas()); InputStream jsonStream = htmlSerializer.serialize(inputStream, request.getMetadata(), -1); String json = IOUtils.toString(jsonStream); logger.debug("json: {}", json); ObjectMapper mapper = new ObjectMapper(); CollectionType collectionType = mapper.getTypeFactory().constructCollectionType(ArrayList.class, TreeMap.class); List<Map<String, String>> values = mapper.readValue(json, collectionType); logger.debug("values: {}", values); Map<String, String> row0 = values.get(0); Assertions.assertThat(row0).contains(MapEntry.entry("0000", "000001"), // MapEntry.entry("0001", "Jennifer BOS"), // MapEntry.entry("0002", "France"), // MapEntry.entry("0003", "jbos@talend.com")); } }
From source file:uk.gov.gchq.gaffer.rest.service.GraphConfigurationService.java
@SuppressFBWarnings(value = "REC_CATCH_EXCEPTION", justification = "Need to wrap all runtime exceptions before they are given to the user") @Override//ww w . j av a 2 s. c o m public Set<String> getSerialisedFields(final String className) { final Class<?> clazz; try { clazz = Class.forName(className); } catch (final Exception e) { throw new IllegalArgumentException("Class name was not recognised: " + className, e); } final ObjectMapper mapper = new ObjectMapper(); final JavaType type = mapper.getTypeFactory().constructType(clazz); final BeanDescription introspection = mapper.getSerializationConfig().introspect(type); final List<BeanPropertyDefinition> properties = introspection.findProperties(); final Set<String> fields = new HashSet<>(); for (final BeanPropertyDefinition property : properties) { fields.add(property.getName()); } return fields; }
From source file:org.axiom_tools.codecs.ModelCodec.java
/** * Returns a new JSON object mapper.//from w w w. j ava 2 s . c o m */ private ObjectMapper buildObjectMapper() { ObjectMapper result = new ObjectMapper(); result.setAnnotationIntrospector(new JaxbAnnotationIntrospector(result.getTypeFactory())); result.enable(SerializationFeature.INDENT_OUTPUT); return result; }