private void determineApiTypes() { importedTypes = collectedTypes.stream(). map(ClassTypeInfo::getRaw). flatMap(Helper.instanceOf(ClassTypeInfo.class)). filter(t -> !t.getPackageName().equals(ifaceFQCN)). collect(Collectors.toSet()); referencedTypes = collectedTypes.stream(). map(ClassTypeInfo::getRaw). flatMap(Helper.instanceOf(ApiTypeInfo.class)). filter(t -> !t.equals(type.getRaw())). collect(Collectors.toSet()); referencedDataObjectTypes = collectedTypes.stream(). map(ClassTypeInfo::getRaw). flatMap(Helper.instanceOf(DataObjectTypeInfo.class)). filter(t -> t.getKind() == ClassKind.DATA_OBJECT). collect(Collectors.toSet()); referencedEnumTypes = collectedTypes.stream(). map(ClassTypeInfo::getRaw). flatMap(Helper.instanceOf(EnumTypeInfo.class)). filter(t -> t.getKind() == ClassKind.ENUM). collect(Collectors.toSet()); }
private boolean isLegalDataObjectTypeParam(TypeInfo type) { if (type.getKind() == ClassKind.DATA_OBJECT) { DataObjectTypeInfo classType = (DataObjectTypeInfo) type; return !classType.isAbstract(); } return false; }
private DataObjectTypeInfo assertDataObject(TypeInfo type, String expectedName, ClassKind expectedKind) { assertEquals(DataObjectTypeInfo.class, type.getClass()); DataObjectTypeInfo classType = (DataObjectTypeInfo) type; assertEquals(expectedKind, classType.getKind()); assertEquals(expectedName, classType.getName()); return classType; }
} else if (kind == ClassKind.DATA_OBJECT) { boolean _abstract = Modifier.isAbstract(classType.getModifiers()); return new DataObjectTypeInfo(kind, fqcn, module, _abstract, false, typeParams); } else { return new ClassTypeInfo(kind, fqcn, module, false, typeParams);
assertEquals(VertxGenClass1.class.getName(), model.getReferencedTypes().iterator().next().getName()); assertEquals(1, model.getReferencedDataObjectTypes().size()); assertEquals(TestDataObject.class.getName(), model.getReferencedDataObjectTypes().iterator().next().getName()); assertEquals(1, model.getReferencedEnumTypes().size()); assertEquals(TestEnum.class.getName(), model.getReferencedEnumTypes().iterator().next().getName());
} else if (kind == ClassKind.DATA_OBJECT) { boolean _abstract = elt.getModifiers().contains(Modifier.ABSTRACT); raw = new DataObjectTypeInfo(kind, fqcn, module, _abstract, nullable, typeParams); } else { raw = new ClassTypeInfo(kind, fqcn, module, nullable, typeParams);