List of usage examples for com.fasterxml.jackson.databind.type MapType construct
public static MapType construct(Class<?> paramClass, JavaType paramJavaType1, JavaType paramJavaType2)
From source file:javaslang.jackson.datatype.serialize.MapSerializer.java
@Override
JavaType emulatedJavaType(JavaType type) {
return MapType.construct(LinkedHashMap.class, type.containedType(0), type.containedType(1));
}
From source file:javaslang.jackson.datatype.serialize.MultimapSerializer.java
@Override JavaType emulatedJavaType(JavaType type) { return MapType.construct(LinkedHashMap.class, type.containedType(0), CollectionType.construct(ArrayList.class, type.containedType(1))); }
From source file:org.springframework.amqp.support.converter.DefaultJackson2JavaTypeMapper.java
public JavaType toJavaType(MessageProperties properties) { JavaType classType = getClassIdType(retrieveHeader(properties, getClassIdFieldName())); if (!classType.isContainerType() || classType.isArrayType()) { return classType; }// w w w .j av a2 s. c o m JavaType contentClassType = getClassIdType(retrieveHeader(properties, getContentClassIdFieldName())); if (classType.getKeyType() == null) { return CollectionType.construct(classType.getRawClass(), contentClassType); } JavaType keyClassType = getClassIdType(retrieveHeader(properties, getKeyClassIdFieldName())); return MapType.construct(classType.getRawClass(), keyClassType, contentClassType); }
From source file:org.camunda.bpm.elasticsearch.jackson.JsonTransformer.java
public List<Map<String, Object>> transformJsonToList(String json) throws IOException { JavaType javaType = MapType.construct(HashMap.class, SimpleType.construct(String.class), SimpleType.construct(Object.class)); CollectionType listType = TypeFactory.defaultInstance().constructCollectionType(ArrayList.class, javaType); return mapper.readValue(json, listType); }
From source file:org.ocelotds.core.services.ArgumentConvertor.java
private JavaType getJavaType(Type type) { Class clazz;//ww w .j a va2 s . co m logger.debug("Computing type of {} - {}", type.getClass(), type.toString()); if (type instanceof ParameterizedType) { clazz = (Class) ((ParameterizedType) type).getRawType(); } else { clazz = (Class) type; } JavaType javaType; Type actualType; if (Collection.class.isAssignableFrom(clazz)) { ParameterizedType pt = (ParameterizedType) type; actualType = pt.getActualTypeArguments()[0]; JavaType t1 = getJavaType(actualType); javaType = CollectionType.construct(Collection.class, t1); } else if (clazz.isArray()) { Class t = clazz.getComponentType(); JavaType t1 = getJavaType(t); javaType = ArrayType.construct(t1, null, null); } else if (Map.class.isAssignableFrom(clazz)) { ParameterizedType pt = (ParameterizedType) type; actualType = pt.getActualTypeArguments()[0]; JavaType t1 = getJavaType(actualType); actualType = pt.getActualTypeArguments()[1]; JavaType t2 = getJavaType(actualType); javaType = MapType.construct(Map.class, t1, t2); } else { javaType = SimpleType.construct(clazz); } return javaType; }
From source file:org.apache.kylin.source.kafka.diagnose.KafkaVerify.java
public static void main(String[] args) throws IOException { System.out.println("start"); ObjectMapper mapper = new ObjectMapper(); JavaType mapType = MapType.construct(HashMap.class, SimpleType.construct(String.class), SimpleType.construct(String.class)); long start = Long.valueOf(args[0]); long end = Long.valueOf(args[1]); long interval = Long.valueOf(args[2]); int bucket = (int) ((end - start + interval - 1) / interval); long[] qtySum = new long[bucket]; long qtyTotal = 0; long[] counts = new long[bucket]; long countTotal = 0; long processed = 0; long minOffset = -1; long maxOffset = -1; try (BufferedReader br = new BufferedReader(new FileReader(new File(args[3])))) { String s;/*from w w w. jav a2s . c o m*/ while ((s = br.readLine()) != null) { // process the line. if (++processed % 10000 == 1) { System.out.println("processing " + processed); } Map<String, String> root = mapper.readValue(s, mapType); String tsStr = root.get("sys_ts"); if (StringUtils.isEmpty(tsStr)) { continue; } long ts = Long.valueOf(tsStr); if (ts < start || ts >= end) { continue; } if (minOffset == -1) { minOffset = processed - 1; } maxOffset = processed - 1; long qty = Long.valueOf(root.get("qty")); int index = (int) ((ts - start) / interval); qtySum[index] += qty; qtyTotal += qty; counts[index]++; countTotal++; } } System.out.println("qty sum is " + Arrays.toString(qtySum)); System.out.println("qty total is " + qtyTotal); System.out.println("count is " + Arrays.toString(counts)); System.out.println("count total is " + countTotal); System.out.println("first processed is " + minOffset); System.out.println("last processed is " + maxOffset); }