TypeName typeName() { SimpleTypeInfo returnTypeInfo = methodInfo.returnTypeInfo(); return returnTypeInfo.typeName(); }
public static Optional<OrmPojoInfo> of(SimpleTypeInfo returnTypeInfo) { TypeInfo typeInfo = returnTypeInfo.isInfoOf(Optional.class) ? returnTypeInfo.getTypeParameterInfoStream() .findFirst() .flatMap(TypeParameterInfo::typeInfo) .get() : returnTypeInfo.typeInfo().get(); PojoInfo pojoInfo = PojoInfo.of(typeInfo); return of(pojoInfo); }
private static BindType ofStandard(SimpleTypeInfo returnTypeInfo, TypeInfo columnClassTypeInfo) { return returnTypeInfo.equals(SimpleTypePrimitives.BOOLEAN) ? ofBoolean(returnTypeInfo, columnClassTypeInfo) : STANDARD; }
@Override public final int hashCode() { return Objects.hash(packageInfo(), simpleName()); }
public boolean isSubType(Class<?> maybeSuperType) { try { String qualifiedName = qualifiedName(); Class<?> theClass = Class.forName(qualifiedName); return maybeSuperType.isAssignableFrom(theClass); } catch (ClassNotFoundException e) { return isInfoOf(maybeSuperType); } }
private static CsvRecordReturnType of(MethodInfo methodInfo, SimpleTypeInfo returnTypeInfo) { SimpleTypeInfo enclosingTypeInfo = returnTypeInfo; boolean optional = enclosingTypeInfo.isInfoOf(Optional.class); if (optional) { enclosingTypeInfo = returnTypeInfo.getTypeParameterInfoStream() .findFirst() .map(TypeParameterInfo::simpleTypeInfo) .get(); } String qualifiedName = enclosingTypeInfo.qualifiedName(); CsvRecordReturnFactory factory = FACTORY_MAP.get(qualifiedName); return factory.of(methodInfo, enclosingTypeInfo).optional(optional); }
TypeInfo toPojoTypeInfo(SimpleTypeInfo returnTypeInfo) { return returnTypeInfo.typeInfo().get(); }
public static OptionalReturnType get(SimpleTypeInfo returnTypeInfo, SimpleTypeInfo actualTypeInfo) { return OptionalReturnType.builder() .typeName(returnTypeInfo.typeName()) .companionTypeClassNameOfNullable(returnTypeInfo.isPrimitive() ? null : returnTypeInfo.classNameSuffix("Orm")) .actualTypeName(actualTypeInfo.typeName()) .build(); }
@Override public Stream<TypeParameterInfo> typeParameterInfoStream() { return outer.getTypeParameterInfoStream(); }
public String identifier() { return simpleTypeInfo().simpleName(); }
private static Optional<OrmInject> ofStream(Stream<Property> propertyStream) { return propertyStream .filter(property -> { SimpleTypeInfo returnTypeInfo = property.returnTypeInfo(); return returnTypeInfo.isSubType(Orm.class); }) .map(PropertyOrmInject::of) .findFirst(); }
@Override public SimpleTypeInfo simpleTypeInfo() { return component.simpleTypeInfo().toArray(); }
@Override public CodeBlock onAutoIncrement() { CodeBlock.Builder code = CodeBlock.builder(); if (size == 1) { code.add(" .value($S, ($T) null)\n", property.columnSimpleName(), property.property().returnTypeInfo().autobox().className()); } return build(code.add(" .on(rs -> $L.onGeneratedKey($T.of(rs)))", property.property().name(), Result.class)); }
@Override public boolean matchesAny(Set<ClassName> pkNameSet) { ClassName className = columnAnnotationInfo().simpleTypeInfo().className(); return pkNameSet.contains(className); }
public boolean isEnum() { boolean isEnum = false; Optional<TypeInfo> maybeTypeInfo = typeInfo(); if (maybeTypeInfo.isPresent()) { isEnum = maybeTypeInfo.get().isEnum(); } return isEnum; }
public static StandardReturnType get(SimpleTypeInfo returnTypeInfo) { return StandardReturnType.builder() .typeName(returnTypeInfo.typeName()) .companionTypeClassNameOfNullable(returnTypeInfo.isPrimitive() ? null : returnTypeInfo.classNameSuffix("Orm")) .build(); }
TypeInfo firstTypeVariable(SimpleTypeInfo returnTypeInfo) { return returnTypeInfo.getTypeParameterInfoStream() .findFirst() .flatMap(TypeParameterInfo::typeInfo) .get(); }
public boolean annotationInstanceOf(Class<? extends Annotation> annotationType) { return annotationInfo.simpleTypeInfo().isInfoOf(annotationType); }
public static CsvRecordReturnType of(MethodInfo methodInfo, SimpleTypeInfo returnTypeInfo) { String simpleName = returnTypeInfo.simpleName(); String prefix = Code.lowerCaseFirstChar(simpleName); return new ObjectCsvRecordReturnType(prefix); }