List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot createPackageFragment
IPackageFragment createPackageFragment(String name, boolean force, IProgressMonitor monitor) throws JavaModelException;
From source file:org.eclipse.objectteams.otdt.ui.tests.core.OrganizeImportsTest.java
License:Open Source License
public void testStaticImportInGuard1() throws CoreException, BackingStoreException { IPackageFragmentRoot sourceFolder = JavaProjectHelper.addSourceContainer(_project, "src"); IPackageFragment basePkg = sourceFolder.createPackageFragment("basePkg", false, null); StringBuffer buf = new StringBuffer(); buf.append("package basePkg;\n"); buf.append("public class B1 {\n"); buf.append(" private static void testB1() { }"); buf.append("}\n"); basePkg.createCompilationUnit("B1.java", buf.toString(), false, null); IPackageFragment teamPkg = sourceFolder.createPackageFragment("teamPkg", false, null); buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import static java.lang.Math.max;\n"); buf.append("public team class T1 {\n"); buf.append(" public class R1 playedBy B1 when (max(1,2)==2) {\n"); buf.append(" }\n"); buf.append("}\n"); ICompilationUnit cu = teamPkg.createCompilationUnit("T1.java", buf.toString(), false, null); String[] order = new String[0]; IChooseImportQuery query = createQuery("T1", new String[] {}, new int[] {}); OrganizeImportsOperation op = createOperation(cu, order, 99, false, true, true, query); op.run(null);//from w w w . j a va 2 s .c o m buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import static java.lang.Math.max;\n"); buf.append("\n"); buf.append("import base basePkg.B1;\n"); buf.append("public team class T1 {\n"); buf.append(" public class R1 playedBy B1 when (max(1,2)==2) {\n"); buf.append(" }\n"); buf.append("}\n"); assertEqualString(cu.getSource(), buf.toString()); }
From source file:org.eclipse.objectteams.otdt.ui.tests.core.OrganizeImportsTest.java
License:Open Source License
public void testStaticImportInGuard2() throws CoreException, BackingStoreException { IPackageFragmentRoot sourceFolder = JavaProjectHelper.addSourceContainer(_project, "src"); IPackageFragment basePkg = sourceFolder.createPackageFragment("basePkg", false, null); StringBuffer buf = new StringBuffer(); buf.append("package basePkg;\n"); buf.append("public class B1 {\n"); buf.append(" void testB1() { }"); buf.append("}\n"); basePkg.createCompilationUnit("B1.java", buf.toString(), false, null); IPackageFragment teamPkg = sourceFolder.createPackageFragment("teamPkg", false, null); buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import static java.lang.Math.max;\n"); buf.append("public team class T1 {\n"); buf.append(" public class R1 playedBy B1 {\n"); buf.append(" void rm() { }\n"); buf.append(" rm <- after test\n"); buf.append(" base when (max(1,2)==2);\n"); buf.append(" }\n"); buf.append("}\n"); ICompilationUnit cu = teamPkg.createCompilationUnit("T1.java", buf.toString(), false, null); String[] order = new String[0]; IChooseImportQuery query = createQuery("T1", new String[] {}, new int[] {}); OrganizeImportsOperation op = createOperation(cu, order, 99, false, true, true, query); op.run(null);/*from www. j av a 2 s. c om*/ buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import static java.lang.Math.max;\n"); buf.append("\n"); buf.append("import base basePkg.B1;\n"); buf.append("public team class T1 {\n"); buf.append(" public class R1 playedBy B1 {\n"); buf.append(" void rm() { }\n"); buf.append(" rm <- after test\n"); buf.append(" base when (max(1,2)==2);\n"); buf.append(" }\n"); buf.append("}\n"); assertEqualString(cu.getSource(), buf.toString()); }
From source file:org.eclipse.objectteams.otdt.ui.tests.core.OrganizeImportsTest.java
License:Open Source License
public void testRoleHidesBase1() throws CoreException, BackingStoreException { IPackageFragmentRoot sourceFolder = JavaProjectHelper.addSourceContainer(_project, "src"); IPackageFragment basePkg = sourceFolder.createPackageFragment("basePkg", false, null); StringBuffer buf = new StringBuffer(); buf.append("package basePkg;\n"); buf.append("public class B1 {\n"); buf.append("}\n"); basePkg.createCompilationUnit("B1.java", buf.toString(), false, null); IPackageFragment teamPkg = sourceFolder.createPackageFragment("teamPkg", false, null); buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import base basePkg.B1;\n"); buf.append("public team class T1 {\n"); buf.append(" public class R2 {\n"); buf.append(" B1 other;\n"); buf.append(" }\n"); buf.append(" public class B1 playedBy B1 {\n"); buf.append(" }\n"); buf.append("}\n"); ICompilationUnit cu = teamPkg.createCompilationUnit("T1.java", buf.toString(), false, null); String[] order = new String[0]; IChooseImportQuery query = createQuery("T1", new String[] {}, new int[] {}); OrganizeImportsOperation op = createOperation(cu, order, 99, false, true, true, query); op.run(null);/*w w w . ja v a2 s .com*/ buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import base basePkg.B1;\n"); buf.append("public team class T1 {\n"); buf.append(" public class R2 {\n"); buf.append(" B1 other;\n"); buf.append(" }\n"); buf.append(" public class B1 playedBy B1 {\n"); buf.append(" }\n"); buf.append("}\n"); assertEqualString(cu.getSource(), buf.toString()); }
From source file:org.eclipse.objectteams.otdt.ui.tests.core.OrganizeImportsTest.java
License:Open Source License
public void testImportRole() throws CoreException, BackingStoreException { IPackageFragmentRoot sourceFolder = JavaProjectHelper.addSourceContainer(_project, "src"); IPackageFragment basePkg = sourceFolder.createPackageFragment("basePkg", false, null); StringBuffer buf = new StringBuffer(); buf.append("package basePkg;\n"); buf.append("public team class BaseTeam {\n"); buf.append(" public class BaseRole {\n"); buf.append(" }\n"); buf.append("}\n"); basePkg.createCompilationUnit("BaseTeam.java", buf.toString(), false, null); IPackageFragment teamPkg = sourceFolder.createPackageFragment("teamPkg", false, null); buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import basePkg.BaseTeam;\n"); buf.append("public team class T1 {\n"); buf.append(" BaseTeam t;\n"); buf.append(" BaseRole r;\n"); buf.append("}\n"); ICompilationUnit cu = teamPkg.createCompilationUnit("T1.java", buf.toString(), false, null); String[] order = new String[0]; IChooseImportQuery query = createQuery("T1", new String[] {}, new int[] {}); OrganizeImportsOperation op = createOperation(cu, order, 99, false, true, true, query); op.run(null);//from w ww .j a va 2 s.c o m buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import basePkg.BaseTeam;\n"); buf.append("public team class T1 {\n"); buf.append(" BaseTeam t;\n"); buf.append(" BaseRole r;\n"); buf.append("}\n"); assertEqualString(cu.getSource(), buf.toString()); }
From source file:org.eclipse.objectteams.otdt.ui.tests.core.OrganizeImportsTest.java
License:Open Source License
public void testDontImportStaticField() throws CoreException, BackingStoreException { IPackageFragmentRoot sourceFolder = JavaProjectHelper.addSourceContainer(_project, "src"); IPackageFragment basePkg = sourceFolder.createPackageFragment("basePkg", false, null); StringBuffer buf = new StringBuffer(); buf.append("package basePkg;\n"); buf.append("public class Base {\n"); buf.append(" private static boolean field;\n"); buf.append(" void m() {}\n"); buf.append("}\n"); basePkg.createCompilationUnit("Base.java", buf.toString(), false, null); IPackageFragment teamPkg = sourceFolder.createPackageFragment("teamPkg", false, null); buf = new StringBuffer(); buf.append("package teamPkg;\n"); buf.append("import base basePkg.Base;\n"); buf.append("public team class T1 {\n"); buf.append(" protected class R playedBy Base {\n"); buf.append(" m <-replace m;\n"); buf.append(" @SuppressWarnings({ \"inferredcallout\", \"decapsulation\" })\n"); buf.append(" callin void m(){\n"); buf.append(" boolean v = field;\n"); buf.append(" System.out.println(v);\n"); buf.append(" }\n"); buf.append(" }\n"); buf.append("}\n"); ICompilationUnit cu = teamPkg.createCompilationUnit("T1.java", buf.toString(), false, null); String[] order = new String[0]; IChooseImportQuery query = createQuery("T1", new String[] {}, new int[] {}); OrganizeImportsOperation op = createOperation(cu, order, 99, false, true, true, query); op.run(null);//from w w w.ja v a 2 s . c om // buf remains unchanged assertEqualString(cu.getSource(), buf.toString()); }
From source file:org.eclipse.pde.api.tools.tests.AbstractApiTest.java
License:Open Source License
/** * Creates a project with the given name and adds the default 'src' folder * /* w w w . jav a2 s .c om*/ * @param name * @param packages an optional list of packages to add to the project when * it is created * @throws Exception */ protected void createProject(final String name, String[] packages) throws Exception { if (name == null) { return; } // create project and import source IJavaProject jproject = ProjectUtils.createPluginProject(name, new String[] { PDE.PLUGIN_NATURE, ApiPlugin.NATURE_ID }); assertNotNull("The java project must have been created", jproject); //$NON-NLS-1$ IPackageFragmentRoot root = jproject .getPackageFragmentRoot(jproject.getProject().getFolder(ProjectUtils.SRC_FOLDER)); assertTrue("the src root must have been created", root.exists()); //$NON-NLS-1$ if (packages != null) { IPackageFragment fragment = null; for (int i = 0; i < packages.length; i++) { fragment = root.createPackageFragment(packages[i], true, new NullProgressMonitor()); assertNotNull("the package fragment " + packages[i] + " cannot be null", fragment); //$NON-NLS-1$ //$NON-NLS-2$ } } PluginRegistry.getWorkspaceModels(); IApiBaseline baseline = getWorkspaceBaseline(); assertNotNull("the workspace baseline cannot be null", baseline); //$NON-NLS-1$ // This assertion caused intermittant failures, skipping it hasn't // caused any problems in the tests (Bug 368458) // IApiComponent component = baseline.getApiComponent(name); // assertNotNull("the test project api component must exist in the workspace baseline", // component); }
From source file:org.eclipse.pde.api.tools.util.tests.ApiBaselineManagerTests.java
License:Open Source License
/** * Adds the package with the given name to the given package fragment root * // w ww. ja v a 2 s . co m * @param the project to add the package to * @param srcroot the absolute path to the package fragment root to add the * new package to * @param packagename the name of the new package * @return the new {@link IPackageFragment} or <code>null</code> */ public IPackageFragment assertTestPackage(IJavaProject project, IPath srcroot, String packagename) throws JavaModelException { IPackageFragment fragment = null; IPackageFragmentRoot root = project.findPackageFragmentRoot(srcroot); assertNotNull("the 'src' package fragment root must exist", root); //$NON-NLS-1$ fragment = root.createPackageFragment(packagename, true, new NullProgressMonitor()); assertNotNull("the new package '" + packagename + "' should have been created", fragment); //$NON-NLS-1$ //$NON-NLS-2$ return fragment; }
From source file:org.eclipse.rap.ui.internal.launch.rwt.tests.TestProject.java
License:Open Source License
public ICompilationUnit createJavaClass(String packageName, String className, String content) throws CoreException { initializeJavaProject();//w ww . java2s . com IProgressMonitor monitor = newProgressMonitor(); IFile srcFolder = project.getFile(DEFAULT_SOURCE_FOLDER); IPackageFragmentRoot packageRoot = javaProject.findPackageFragmentRoot(srcFolder.getFullPath()); IPackageFragment pkg = packageRoot.getPackageFragment(packageName); if (!pkg.exists()) { packageRoot.createPackageFragment(packageName, true, monitor); } String cuName = className + ".java"; ICompilationUnit result = pkg.createCompilationUnit(cuName, content, true, monitor); waitForAutoBuild(); return result; }
From source file:org.eclipse.sapphire.java.jdt.ui.internal.JavaTypeCreateActionHandler.java
License:Open Source License
@Override protected Object run(final Presentation context) { final Shell shell = ((FormComponentPresentation) context).shell(); final Value<?> javaTypeNameValue = (Value<?>) property(); if (javaTypeNameValue.malformed()) { return null; }/*from w w w. j a va2 s . co m*/ final JavaTypeName javaTypeName = (JavaTypeName) javaTypeNameValue.content(); if (javaTypeName.pkg() == null) { if (!MessageDialog.openConfirm(shell, discourageDialogTitle.text(), discourageDefaultPackage.text())) { return null; } } if (!Character.isUpperCase(javaTypeName.simple().charAt(0))) { if (!MessageDialog.openConfirm(shell, discourageDialogTitle.text(), discourageLowerCase.text())) { return null; } } final JavaTypeConstraintService javaTypeConstraintService = javaTypeNameValue .service(JavaTypeConstraintService.class); final IJavaProject jproj = javaTypeNameValue.element().adapt(IJavaProject.class); JavaTypeName expectedBaseClassTemp = null; final List<JavaTypeName> expectedInterfaces = new ArrayList<JavaTypeName>(); if (javaTypeConstraintService != null) { final JavaTypeConstraintBehavior behavior = javaTypeConstraintService.behavior(); final Collection<String> types = javaTypeConstraintService.types(); final Iterator<String> iterator = types.iterator(); for (int i = 0, n = (behavior == JavaTypeConstraintBehavior.ALL ? types.size() : min(1, types.size())); i < n; i++) { final String typeName = iterator.next(); try { final IType type = jproj.findType(typeName.replace('$', '.')); if (type != null && type.exists()) { if (type.isClass()) { expectedBaseClassTemp = new JavaTypeName(typeName); } else if (type.isInterface()) { expectedInterfaces.add(new JavaTypeName(typeName)); } } } catch (Exception e) { Sapphire.service(LoggingService.class).log(e); } } } final JavaTypeName expectedBaseClass = expectedBaseClassTemp; final IRunnableWithProgress op = new IRunnableWithProgress() { public void run(final IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { monitor.beginTask("", 7); final JavaTypeKind kind = JavaTypeCreateActionHandler.this.kind; final StringBuilder buf = new StringBuilder(); if (javaTypeName.pkg() != null) { buf.append("package "); buf.append(javaTypeName.pkg()); buf.append(";\n\n"); } final List<JavaTypeName> imports = new ArrayList<JavaTypeName>(); imports.add(javaTypeName); String base = null; if (kind == JavaTypeKind.CLASS && expectedBaseClass != null) { base = deriveSafeLocalName(expectedBaseClass, imports); } final List<String> interfaces = new ArrayList<String>(); if (kind == JavaTypeKind.CLASS || kind == JavaTypeKind.INTERFACE) { for (JavaTypeName t : expectedInterfaces) { interfaces.add(deriveSafeLocalName(t, imports)); } } imports.remove(javaTypeName); if (!imports.isEmpty()) { for (JavaTypeName t : imports) { buf.append("import "); buf.append(t.qualified().replace('$', '.')); buf.append(";\n"); } buf.append('\n'); } buf.append("public "); switch (kind) { case ANNOTATION: buf.append("@interface"); break; case ENUM: buf.append("enum"); break; case INTERFACE: buf.append("interface"); break; default: buf.append("class"); } buf.append(' '); buf.append(javaTypeName.simple()); if (base != null) { buf.append(" extends "); buf.append(base); } if (!interfaces.isEmpty()) { buf.append(kind == JavaTypeKind.INTERFACE ? " extends " : " implements "); boolean first = true; for (String implementsType : interfaces) { if (first) { first = false; } else { buf.append(", "); } buf.append(implementsType); } } buf.append("\n{\n}\n"); monitor.worked(1); final IProject proj = javaTypeNameValue.element().adapt(IProject.class); final IJavaProject jproj = JavaCore.create(proj); try { final IPackageFragmentRoot src = src(jproj); final IPackageFragment pkg = src.createPackageFragment( (javaTypeName.pkg() == null ? "" : javaTypeName.pkg()), true, null); final ICompilationUnit cu = pkg.createCompilationUnit(javaTypeName.simple() + ".java", buf.toString(), true, null); cu.save(null, true); monitor.worked(1); final IEditorPart editor = JavaUI.openInEditor(cu); final IWorkbenchPartSite site = editor.getSite(); monitor.worked(1); if (kind == JavaTypeKind.CLASS) { final IType type = cu.getType(javaTypeName.simple()); final ASTParser parser = createAstParser(); parser.setResolveBindings(true); parser.setSource(cu); final CompilationUnit ast = (CompilationUnit) parser.createAST(null); ASTNode node = NodeFinder.perform(ast, type.getNameRange()); while (!(node instanceof AbstractTypeDeclaration)) { node = node.getParent(); } final ITypeBinding typeBinding = ((AbstractTypeDeclaration) node).resolveBinding(); final IWorkspaceRunnable addUnimplementedConstructorsOp = AddUnimplementedConstructorsAction .createRunnable(ast, typeBinding, null, -1, false, Flags.AccPublic, false); addUnimplementedConstructorsOp.run(null); final IWorkspaceRunnable overrideMethodsOp = OverrideMethodsAction.createRunnable(ast, typeBinding, null, -1, false); overrideMethodsOp.run(null); } monitor.worked(1); final OrganizeImportsAction organizeImportsAction = new OrganizeImportsAction(site); organizeImportsAction.run(cu); monitor.worked(1); final FormatAllAction formatAllAction = new FormatAllAction(site); formatAllAction.runOnMultiple(new ICompilationUnit[] { cu }); monitor.worked(1); editor.doSave(null); monitor.worked(1); } catch (CoreException e) { Sapphire.service(LoggingService.class).log(e); } monitor.done(); } }; try { (new ProgressMonitorDialog(shell)).run(false, false, op); } catch (InvocationTargetException e) { Sapphire.service(LoggingService.class).log(e); } catch (InterruptedException e) { // Should not happen. Sapphire.service(LoggingService.class).log(e); } return null; }
From source file:org.eclipse.viatra.cep.tooling.ui.wizards.NewVeplFileWizardContainerConfigurationPage.java
License:Open Source License
public String getPackageName() { IPackageFragmentRoot root = getPackageFragmentRoot(); IPackageFragment fragment = root.getPackageFragment(getPackageText()); if (!fragment.exists()) { try {/*from www . j a v a 2 s .c o m*/ root.createPackageFragment(getPackageText(), true, new NullProgressMonitor()); } catch (JavaModelException e) { Activator.getDefault().logException("Cannot load packages " + e.getMessage(), e); } } return getPackageText(); }