/** * Returns the qualified name of the given type. * * @param type The type * @return The qualified name of the given type. */ private String qualifiedName(Type type) { String result = null; if (type != null && !(type instanceof PrimitiveType)) { List<String> packagesName = new ArrayList<String>(); EObject eContainer = type.eContainer(); while (eContainer != null && eContainer instanceof Package && !(eContainer instanceof Model)) { Package umlPackage = (Package) eContainer; packagesName.add(umlPackage.getName()); eContainer = umlPackage.eContainer(); } Collections.reverse(packagesName); StringBuilder stringBuilder = new StringBuilder(); for (String packageName : packagesName) { stringBuilder.append(packageName); stringBuilder.append('.'); } stringBuilder.append(type.getName()); result = stringBuilder.toString(); if (JAVA_LANG_TYPES.contains(type.getName())) { result = null; } else if (JAVA_UTIL_TYPES.contains(type.getName())) { result = "java.util." + type.getName(); } } return result; }