public static boolean isSimpleClass(Type<?> type) { return !type.isArray() && !type.isPrimitive() && !type.isParameterized(); }
protected boolean canAddFieldToToString(Field<JavaClassSource> field) { return !field.isStatic() && !field.isTransient() && !field.getType().isArray(); }
if (field.getType().isArray())
if (field.getType().isArray())
if (field.getType().isArray())
if (field.getType().isArray())
if (field.getType().isArray())
public static boolean equalsType(Type type, String fullClassName, boolean multiple, String fullBagClassName, ClassTypeResolver classTypeResolver) throws Exception { String currentClassName; String currentBag; if (type.isArray()) { return false; } if (type.isPrimitive()) { return !multiple && fullClassName.equals(type.getName()); } if (isSimpleClass(type)) { currentClassName = classTypeResolver.getFullTypeName(type.getName()); return !multiple && fullClassName.equals(currentClassName); } Object[] simpleGenerics = isSimpleGeneric(type, classTypeResolver); if (multiple && Boolean.TRUE.equals(simpleGenerics[0]) && isManagedType(type, classTypeResolver)) { currentBag = (String) simpleGenerics[1]; currentBag = classTypeResolver.getFullTypeName(currentBag); currentClassName = (String) simpleGenerics[2]; currentClassName = classTypeResolver.getFullTypeName(currentClassName); return fullBagClassName.equals(currentBag) && fullClassName.equals(currentClassName); } return false; }
if (type.isArray()) { return false;
public static Object[] isSimpleGeneric(Type type, ClassTypeResolver classTypeResolver) throws ModelDriverException { Object[] result = new Object[3]; result[0] = false; result[1] = null; result[2] = null; if (type.isArray() || type.isPrimitive() || !type.isParameterized() || (type.isParameterized() && type.getTypeArguments().size() != 1)) { return result; } Type<?> argument = ((List<Type>) type.getTypeArguments()).get(0); if (!isSimpleClass(argument)) { return result; } try { String outerClass = classTypeResolver.getFullTypeName(type.getName()); String argumentClass = classTypeResolver.getFullTypeName(argument.getName()); result[0] = true; result[1] = outerClass; result[2] = argumentClass; return result; } catch (ClassNotFoundException e) { throw new ModelDriverException("Class could not be resolved for name: " + type.getName() + ". " + e.getMessage(), e); } }