@Override public void renameAll(Set<OJPathName> renamePathNames, String suffix) { if (renamePathNames.contains(getPathName())) { this.suffix = suffix; } Set<OJPathName> newImports = new HashSet<OJPathName>(); Collection<OJPathName> imports = getImports(); for (OJPathName ojPathName : imports) { OJPathName newImport = ojPathName.getDeepCopy(); newImport.renameAll(renamePathNames, suffix); newImports.add(newImport); } setImports(newImports); Collection<OJOperation> operations = getOperations(); for (OJOperation ojOperation : operations) { ojOperation.renameAll(renamePathNames, suffix); } }
/** * @return */ @SuppressWarnings("unchecked") protected StringBuilder imports() { // sort the imports by alphabeth Set myImports = new TreeSet(new OJPathNameComparator()); myImports.addAll(this.getImports()); // StringBuilder result = new StringBuilder(); Iterator it = myImports.iterator(); String prevPackageName = ""; while (it.hasNext()) { OJPathName path = (OJPathName) it.next(); if (!this.isInnerClass && this.getMyPackage().getPathName().equals(path.getHead())) { // do nothing, imported element is in same package } else { if (!path.getFirst().equals(prevPackageName)) { result.append("\n"); } result.append("import " + path.toString() + ";\n"); prevPackageName = path.getFirst(); } } return result; }
public void copyDeepInfoInto(OJClassifier copy) { super.copyDeepInfoInto(copy); copy.setUniqueNumber(getUniqueNumber()); copy.setDerived(isDerived()); copy.setAbstract(isAbstract()); Iterator operationsIt = new ArrayList<OJOperation>(getOperations()).iterator(); while (operationsIt.hasNext()) { OJOperation elem = (OJOperation) operationsIt.next(); copy.addToOperations(elem.getDeepCopy()); } Iterator importsIt = new ArrayList<OJPathName>(getImports()).iterator(); while (importsIt.hasNext()) { OJPathName elem = (OJPathName) importsIt.next(); copy.addToImports(elem.getCopy()); } }