List of usage examples for com.fasterxml.jackson.databind JavaType getRawClass
public final Class<?> getRawClass()
From source file:javaslang.jackson.datatype.deserialize.TupleDeserializer.java
private static int arity(JavaType valueType) { Class<?> clz = valueType.getRawClass(); if (clz == Tuple0.class) { return 0; } else if (clz == Tuple1.class) { return 1; } else if (clz == Tuple2.class) { return 2; } else if (clz == Tuple3.class) { return 3; } else if (clz == Tuple4.class) { return 4; } else if (clz == Tuple5.class) { return 5; } else if (clz == Tuple6.class) { return 6; } else if (clz == Tuple7.class) { return 7; } else {/*from www . jav a 2s . c o m*/ return 8; } }
From source file:com.github.jasonruckman.sidney.core.JavaTypeRefBuilder.java
public static TypeRef buildTypeRef(Type type, TypeBindings parentBindings, Field field) { JavaType jt; TypeBindings typeBindings;// ww w. j a v a 2s . com typeBindings = Types.binding(type, parentBindings); jt = Types.type(type, parentBindings); TypeRef ref; if (field == null) { ref = new TypeRef(jt.getRawClass()); } else { Hint hint = field.getAnnotation(Hint.class); if (hint != null) { ref = new TypeRef.TypeFieldRef(hint.value(), field); } else { ref = new TypeRef.TypeFieldRef(jt.getRawClass(), field); } } for (Field subField : Fields.getAllFields(jt.getRawClass())) { Type subType = subField.getGenericType(); TypeRef subRef = buildTypeRef(subType, typeBindings, subField); ref.addField((TypeRef.TypeFieldRef) subRef); } if (ParameterizedType.class.isAssignableFrom(type.getClass())) { ParameterizedType t = (ParameterizedType) type; for (Type actualTypeArg : t.getActualTypeArguments()) { ref.addTypeParameter(buildTypeRef(actualTypeArg, parentBindings, null)); } } else if (TypeVariable.class.isAssignableFrom(type.getClass())) { TypeVariable t = (TypeVariable) type; for (Type typeBound : t.getBounds()) { ref.addTypeParameter(buildTypeRef(typeBound, parentBindings, null)); } } else if (GenericArrayType.class.isAssignableFrom(type.getClass())) { GenericArrayType t = (GenericArrayType) type; ref.addTypeParameter(buildTypeRef(t.getGenericComponentType(), parentBindings, null)); } if (jt.isArrayType() && !GenericArrayType.class.isAssignableFrom(type.getClass())) { ArrayType arrType = (ArrayType) jt; ref.addTypeParameter(buildTypeRef(arrType.getContentType().getRawClass(), null, null)); } return ref; }
From source file:javaslang.jackson.datatype.deserialize.MaplikeDeserializer.java
private static MapLikeType mapLike(JavaType type, DeserializationContext ctxt) { JavaType keyType = type.containedTypeCount() > 0 ? type.containedType(0) : TypeFactory.unknownType(); JavaType valueType = type.containedTypeCount() > 1 ? type.containedType(1) : TypeFactory.unknownType(); return ctxt.getTypeFactory().constructMapLikeType(type.getRawClass(), keyType, valueType); }
From source file:io.swagger.jaxrs.MethodProcessor.java
private static boolean isValidResponse(Type type) { if (type == null) { return false; }/*from w w w. ja v a 2s . c om*/ final JavaType javaType = TypeFactory.defaultInstance().constructType(type); if (isVoid(javaType)) { return false; } final Class<?> cls = javaType.getRawClass(); return !javax.ws.rs.core.Response.class.isAssignableFrom(cls) && !isResourceClass(cls); }
From source file:nebula.plugin.metrics.dispatcher.AbstractMetricsDispatcher.java
/** * Register Jackson module that maps enums as lowercase. Per http://stackoverflow.com/a/24173645. *///from ww w . j ava 2 s .c o m @SuppressWarnings("rawtypes") private static void registerEnumModule(ObjectMapper mapper) { SimpleModule module = new SimpleModule(); module.setDeserializerModifier(new BeanDeserializerModifier() { @Override public JsonDeserializer<Enum> modifyEnumDeserializer(DeserializationConfig config, final JavaType type, BeanDescription beanDesc, final JsonDeserializer<?> deserializer) { return new JsonDeserializer<Enum>() { @Override public Enum deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { @SuppressWarnings("unchecked") Class<? extends Enum> rawClass = (Class<Enum<?>>) type.getRawClass(); return Enum.valueOf(rawClass, jp.getValueAsString().toUpperCase()); } }; } }); module.addSerializer(Enum.class, new StdSerializer<Enum>(Enum.class) { @Override public void serialize(Enum value, JsonGenerator jgen, SerializerProvider provider) throws IOException { jgen.writeString(value.name().toLowerCase()); } }); mapper.registerModule(module); }
From source file:com.almende.util.TypeUtil.java
/** * Inject.//ww w .ja v a2 s. c o m * * @param <T> the generic type * @param value the value * @param fullType the full type * @return the t */ @SuppressWarnings("unchecked") public static <T> T inject(final Object value, final JavaType fullType) { if (value == null) { return null; } if (fullType.hasRawClass(Void.class)) { return null; } final ObjectMapper mapper = JOM.getInstance(); if (value instanceof JsonNode) { if (((JsonNode) value).isNull()) { return null; } try { return mapper.convertValue(value, fullType); } catch (final Exception e) { ClassCastException cce = new ClassCastException( "Failed to convert value:" + value + " -----> " + fullType); cce.initCause(e); throw cce; } } if (fullType.getRawClass().isAssignableFrom(value.getClass())) { return (T) value; } else { throw new ClassCastException(value.getClass().getCanonicalName() + " can't be converted to: " + fullType.getRawClass().getCanonicalName()); } }
From source file:play.modules.swagger.PlayReader.java
private static boolean isValidResponse(Type type) { if (type == null) { return false; }//from w ww .j a va 2 s . co m final JavaType javaType = Json.mapper().getTypeFactory().constructType(type); if (isVoid(javaType)) { return false; } final Class<?> cls = javaType.getRawClass(); return !isResourceClass(cls); }
From source file:com.wealdtech.jackson.modules.TriValSerializers.java
@Override public JsonSerializer<?> findSerializer(SerializationConfig config, JavaType type, BeanDescription beanDesc) { Class<?> raw = type.getRawClass(); if (TriVal.class.isAssignableFrom(raw)) { return new TriValSerializer(type); }/*from w w w .j a v a2 s . c o m*/ return super.findSerializer(config, type, beanDesc); }
From source file:javaslang.jackson.datatype.deserialize.PriorityQueueDeserializer.java
@SuppressWarnings("unchecked") @Override/*from ww w .j av a 2 s . c o m*/ PriorityQueue<?> create(List<Object> list, DeserializationContext ctxt) throws JsonMappingException { if (javaType.containedTypeCount() == 0) { throw ctxt.mappingException(javaType.getRawClass()); } JavaType generic = javaType.containedType(0); if (generic.getRawClass() == Object.class || !Comparable.class.isAssignableFrom(generic.getRawClass())) { throw ctxt.mappingException(javaType.getRawClass()); } return PriorityQueue.ofAll((o1, o2) -> ((Comparable) o1).compareTo(o2), list); }
From source file:javaslang.jackson.datatype.deserialize.MaplikeDeserializer.java
@SuppressWarnings("unchecked") @Override//from w w w . j a v a 2 s. c o m public void resolve(DeserializationContext ctxt) throws JsonMappingException { mapLikeType = mapLike(javaType, ctxt); JavaType keyType = mapLikeType.getKeyType(); if (keyType.getRawClass().isAssignableFrom(Comparable.class)) { keyComparator = (o1, o2) -> ((Comparable) o1).compareTo(o2); } else { keyComparator = (o1, o2) -> o1.toString().compareTo(o2.toString()); } keyDeserializer = ctxt.findKeyDeserializer(keyType, null); valueDeserializer = ctxt.findRootValueDeserializer(mapLikeType.getContentType()); }