List of usage examples for com.fasterxml.jackson.databind JavaType isArrayType
public boolean isArrayType()
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; }//from w w w . j a v 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:com.ebuddy.cassandra.databind.CustomTypeResolverBuilder.java
private boolean useForType(JavaType t) { return t.isArrayType() || Collection.class.isAssignableFrom(t.getRawClass()); }
From source file:org.springframework.amqp.support.converter.DefaultJackson2JavaTypeMapper.java
public void fromJavaType(JavaType javaType, MessageProperties properties) { addHeader(properties, getClassIdFieldName(), javaType.getRawClass()); if (javaType.isContainerType() && !javaType.isArrayType()) { addHeader(properties, getContentClassIdFieldName(), javaType.getContentType().getRawClass()); }/*from ww w . java 2 s .c om*/ if (javaType.getKeyType() != null) { addHeader(properties, getKeyClassIdFieldName(), javaType.getKeyType().getRawClass()); } }
From source file:org.redisson.codec.JsonJacksonCodec.java
public JsonJacksonCodec() { createObjectMapper(objectMapper);/*from w w w . java 2 s.com*/ TypeResolverBuilder<?> typer = new DefaultTypeResolverBuilder(DefaultTyping.NON_FINAL); typer.init(JsonTypeInfo.Id.CLASS, null); typer.inclusion(JsonTypeInfo.As.PROPERTY); objectMapper.setDefaultTyping(typer); createObjectMapper(mapObjectMapper); // type info inclusion TypeResolverBuilder<?> mapTyper = new DefaultTypeResolverBuilder(DefaultTyping.NON_FINAL) { public boolean useForType(JavaType t) { switch (_appliesFor) { case NON_CONCRETE_AND_ARRAYS: while (t.isArrayType()) { t = t.getContentType(); } // fall through case OBJECT_AND_NON_CONCRETE: return (t.getRawClass() == Object.class) || !t.isConcrete(); case NON_FINAL: while (t.isArrayType()) { t = t.getContentType(); } // to fix problem with wrong long to int conversion if (t.getRawClass() == Long.class) { return true; } return !t.isFinal(); // includes Object.class default: //case JAVA_LANG_OBJECT: return (t.getRawClass() == Object.class); } } }; mapTyper.init(JsonTypeInfo.Id.CLASS, null); mapTyper.inclusion(JsonTypeInfo.As.PROPERTY); mapObjectMapper.setDefaultTyping(mapTyper); }
From source file:org.apache.ode.jacob.soup.jackson.JacobTypeResolverBuilder.java
private boolean useForType(JavaType t) { if (Runnable.class.isAssignableFrom(t.getRawClass())) { return true; }/* w ww .ja va 2s . c o m*/ //TODO: check if still needed. if (Channel.class.isAssignableFrom(t.getRawClass())) { return true; } if (CommChannel.class.isAssignableFrom(t.getRawClass())) { return true; } if (ChannelRef.class.isAssignableFrom(t.getRawClass())) { return true; } if (MessageListener.class.isAssignableFrom(t.getRawClass())) { return true; } if (t.getRawClass() == Object.class || t.isArrayType()) { return true; } return false; }
From source file:com.github.jasonruckman.sidney.core.JavaTypeRefBuilder.java
public static TypeRef buildTypeRef(Type type, TypeBindings parentBindings, Field field) { JavaType jt; TypeBindings typeBindings;//from www .j av a 2 s . co m 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; }