protected Set<Type> collectAbstract(AnnotatedType javaType, Set<Type> seen, BuildContext buildContext) {
javaType = buildContext.globalEnvironment.converters.getMappableType(javaType);
if (Scalars.isScalar(javaType.getType())) {
return Collections.emptySet();
}
if (GenericTypeReflector.isSuperType(Collection.class, javaType.getType())) {
AnnotatedType elementType = GenericTypeReflector.getTypeParameter(javaType, Collection.class.getTypeParameters()[0]);
return collectAbstractInner(elementType, seen, buildContext);
}
if (GenericTypeReflector.isSuperType(Map.class, javaType.getType())) {
AnnotatedType keyType = GenericTypeReflector.getTypeParameter(javaType, Map.class.getTypeParameters()[0]);
AnnotatedType valueType = GenericTypeReflector.getTypeParameter(javaType, Map.class.getTypeParameters()[1]);
Set<Type> abstractTypes = collectAbstractInner(keyType, seen, buildContext);
abstractTypes.addAll(collectAbstractInner(valueType, seen, buildContext));
return abstractTypes;
}
return collectAbstractInner(javaType, seen, buildContext);
}
AbstractionCollectingMapper.java 文件源码
java
阅读 48
收藏 0
点赞 0
评论 0
项目:graphql-spqr
作者:
评论列表
文章目录