/** * Creates and caches an {@link org.eclipse.emf.codegen.util.ImportManager ImportManager} for use in generating Java * code. */ protected void createImportManager(String packageName, String className) { importManager = new ImportManager(packageName); importManager.addMasterImport(packageName, className); }
public void addImport(String qualifiedName) { importManager.addImport(qualifiedName); }
public void addPseudoImport(String qualifiedName) { importManager.addPseudoImport(qualifiedName); }
addImport(qualifiedName); String rawName = getRawName(qualifiedName); char[] qualifiedNameChars = null; while (i != -1) String baseName = getBaseName(qualifiedName); String importName = getImportName(qualifiedName); String shortName = getShortName(importName); else if (importedPackages.contains(getPackageName(importName)) && (javaLangImports == null || !javaLangImports.contains(baseName)))
if (baseName.contains(".")) importManager.addImport(index == -1 ? qualifiedName : qualifiedName.substring(0, index)); return importManager.getImportedName(qualifiedName);
/** * Registers {@link #addPseudoImport(String) pseudo-imports} for all of the import declarations in the specified * compilation unit contents. * This uses JDT's Java AST API to parse the code when Eclipse is running, and a simpler, less accurate approach * based on regular expressions otherwise. * Note that this must be invoked before any ordinary imports are added. * @param compilationUnitContents the contents of a Java source file. * @see #addPseudoImport(String) */ public void addCompilationUnitImports(String compilationUnitContents) { List<String> imports = EMFPlugin.IS_ECLIPSE_RUNNING ? EclipseHelper.getCompilationUnitImports(compilationUnitContents) : getCompilationUnitImports(compilationUnitContents); for (String qualifiedName : imports) { addPseudoImport(qualifiedName); } }
/** * Returns the sorted, formatted import declarations that should be added to the compilation unit. * Each statement appears on its own line, with an additional {@link #getLineDelimiter() line delimiter} before the * first import and between imports from different packages. * @see #getLineDelimiter() */ public String computeSortedImports() { String NL = getLineDelimiter(); String previousPackageName = null; StringBuffer result = new StringBuffer(); for (String importName : getImports()) { String packageName = getPackageName(importName); if (previousPackageName != null && !previousPackageName.equals(packageName)) { result.append(NL); } previousPackageName = packageName; result.append(NL + "import " + importName + ";"); } return result.toString(); }
/** * Returns the equivalent imported short name for the given qualified name, if there is one, or the qualified name * itself otherwise. Optionally, the qualified name can be automatically imported if possible. * In fact, a parameterized type expression is also allowed, in which case the expression will be parsed to obtain the * individual imported names within it. Then the full expression, with the appropriate substitutions, is returned. * @param qualifiedName the qualified name or parameterized type expression. * @return the equivalent type or type expression, using short names wherever possible. */ public String getImportedName(String qualifiedName) { return getImportedName(qualifiedName, false); }
/** * Creates an import manager for the given compilation unit package and short name. * This is the preferred constructor form, as it automatically adds the {@link #addMasterImport(String, String) master import} * for the compilation unit. * @since 2.5 * @see ImportManager#addMasterImport(String, String) */ public ImportManager(String compilationUnitPackage, String compilationUnitShortName) { this(compilationUnitPackage); addMasterImport(compilationUnitPackage, compilationUnitShortName); }
genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); genModel.setImportManager(new ImportManager("org.bimserver.models")); String implFileName = MODEL_PACKAGE + genPackage.getPackageName() + ".impl."; implFileName = implFileName.replace(".", File.separator) + genClass.getName() + "Impl.java"; genModel.setImportManager(new ImportManager("org.bimserver.models")); String interfaceFileName = MODEL_PACKAGE + genPackage.getPackageName() + "."; interfaceFileName = interfaceFileName.replace(".", File.separator) + genClass.getName() + ".java"; genModel.setImportManager(new ImportManager("org.bimserver.models"));
public void markImportLocation(StringBuffer stringBuffer) { importStringBuffer = stringBuffer; importInsertionPoint = stringBuffer.length(); importManager.addCompilationUnitImports(stringBuffer.toString()); }
public void markImportLocation(StringBuffer stringBuffer, GenPackage genPackage) { markImportLocation(stringBuffer); importManager.addJavaLangImports(genPackage.getJavaLangConflicts()); }
public void emitSortedImports() { importStringBuffer.insert(importInsertionPoint, importManager.computeSortedImports()); }
public String computeSortedImports() { String NL = System.getProperties().getProperty("line.separator"); StringBuffer imports = new StringBuffer(); String previousPackageName = null; for (String importName : getImports()) { int index = importName.lastIndexOf("."); if (index != -1) { String packageName = importName.substring(0, index); if (previousPackageName != null && !previousPackageName.equals(packageName)) { imports.append(NL); } previousPackageName = packageName; } imports.append(NL + "import " + importName + ";"); } return imports.toString(); } }
public String getImportedName(String qualifiedName) { return getImportManager().getImportedName(qualifiedName, true); }
/** * Records the given <code>StringBuilder</code> and its current length, so that computed imports can later be * {@link #emitSortedImports() emitted}, and {@link #addCompilationUnitImports(String) adds} any import declarations * that the builder already contains. * @since 2.5 * @see #emitSortedImports() * @see #addCompilationUnitImports(String) */ public void markImportLocation(StringBuilder stringBuilder) { importStringBuffer = null; importStringBuilder = stringBuilder; importInsertionPoint = stringBuilder.length(); addCompilationUnitImports(stringBuilder.toString()); }
public void markImportLocation(StringBuffer stringBuffer, GenPackage genPackage) { markImportLocation(stringBuffer); getImportManager().addJavaLangImports(genPackage.getJavaLangConflicts()); }
/** * Inserts all the {@link #computeSortedImports() computed imports} for the compilation unit into the recorded * {@link #markImportLocation(StringBuilder) StringBuilder} or {@link #markImportLocation(StringBuffer) StringBuffer}. * @since 2.5 * @see #computeSortedImports() * @see #markImportLocation(StringBuilder) * @see #markImportLocation(StringBuffer) */ public void emitSortedImports() { if (importStringBuilder != null) { importStringBuilder.insert(importInsertionPoint, computeSortedImports()); } else if (importStringBuffer != null) { importStringBuffer.insert(importInsertionPoint, computeSortedImports()); } }
/** * Creates and caches an {@link org.eclipse.emf.codegen.util.ImportManager ImportManager} for use in generating Java * code. */ protected void createImportManager(String packageName, String className) { importManager = new ImportManager(packageName); importManager.addMasterImport(packageName, className); }
public void addImport(String qualifiedName) { getImportManager().addImport(qualifiedName); }