Example usage for org.eclipse.jdt.core IJavaProject getResource

List of usage examples for org.eclipse.jdt.core IJavaProject getResource

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaProject getResource.

Prototype

IResource getResource();

Source Link

Document

Returns the innermost resource enclosing this element.

Usage

From source file:org.eclipse.andmore.internal.wizards.exportgradle.ExportGradleTest.java

License:Open Source License

@Test
public void testPlainJavaProject() throws Throwable {
    IProject project = getJavaProject("simple-java");
    final IJavaProject javaProject = BaseProjectHelper.getJavaProject(project);

    final ProjectSetupBuilder builder = new ProjectSetupBuilder();
    builder.setProject(Collections.singletonList(javaProject));

    BuildFileCreator.createBuildFiles(builder, null, null);
    Job job = new Job("Validate project") {
        @Override/*from   w  w  w.  jav a2s  .  c o  m*/
        protected IStatus run(IProgressMonitor monitor) {
            try {
                File buildfile = new File(javaProject.getResource().getLocation().toString(), "build.gradle");
                assertTrue(buildfile.exists());
                String contents = Files.toString(buildfile, Charsets.UTF_8);
                String expectedContents = "apply plugin: 'java'\n" + "sourceSets {\n"
                        + "    main.java.srcDirs = ['src']\n" + "}";

                assertEqualsWhitespaceInsensitive(expectedContents, contents);
            } catch (Throwable t) {
                mLastThrown = t;
            }
            return null;
        }
    };
    job.schedule(1000);
    job.join();
    Object property = job.getProperty(ERROR_KEY);
    assertNull(property);
    if (mLastThrown != null) {
        throw mLastThrown;
    }
}

From source file:org.eclipse.ant.internal.ui.datatransfer.ExportUtil.java

License:Open Source License

/**
 * Get project root for given project.//from  www. j  a  v a 2  s . c om
 */
public static String getProjectRoot(IJavaProject project) {
    if (project == null) {
        return null;
    }
    IResource resource = project.getResource();
    if (resource == null) {
        return null;
    }
    IPath location = resource.getLocation();
    if (location == null) {
        return null;
    }
    return location.toString();
}

From source file:org.eclipse.ant.internal.ui.datatransfer.SourceAnalyzer.java

License:Open Source License

/**
 * Determine all sources belonging to a source directory.
 *///w  w  w  .  j  av  a  2s  . c  om
private static void determineSources(IJavaProject currentProject, EclipseClasspath classpath,
        Map<String, String> src2dir, Map<String, Set<String>> srcdir2classes) {
    for (int i = 0; i < classpath.srcDirs.size(); i++) {
        String srcDir = classpath.srcDirs.get(i);
        String classDir = classpath.classDirs.get(i);
        if (EclipseClasspath.isReference(srcDir)) {
            continue;
        }
        File dir;
        if (srcDir.equals(".")) { //$NON-NLS-1$
            dir = currentProject.getResource().getLocation().toFile();
        } else {
            IFile file = currentProject.getProject().getFile(srcDir);
            dir = file.getLocation().toFile();
        }
        if (EclipseClasspath.isLinkedResource(srcDir)) {
            String link = classpath.resolveLinkedResource(srcDir);
            dir = new File(link);
            if (!dir.isAbsolute()) {
                // make absolute
                dir = new File(ExportUtil.getProjectRoot(currentProject), link);
            }
        }
        Set<String> sources = findFiles(dir, ".java"); //$NON-NLS-1$

        // find all required classfiles for each source directory
        for (Iterator<String> iter = sources.iterator(); iter.hasNext();) {
            String srcFile = iter.next();
            src2dir.put(srcFile, srcDir);
            IFile classFile = currentProject.getProject().getFile(classDir + '/' + srcFile + ".class"); //$NON-NLS-1$
            if (!classFile.exists()) {
                // project was not compiled, check not possible
                continue;
            }
            Set<String> classes = srcdir2classes.get(srcDir);
            if (classes == null) {
                classes = new TreeSet<>();
            }
            classes.addAll(getRequiredClasses(classFile));
            srcdir2classes.put(srcDir, classes);
        }
    }
}

From source file:org.eclipse.birt.report.designer.internal.ui.ide.adapters.IDEClassPathBlock.java

License:Open Source License

private IDECPListElement[] addProjectDialog() {

    try {//from w ww.  jav a  2 s .co m
        Object[] selectArr = getNotYetRequiredProjects();
        new JavaElementComparator().sort(null, selectArr);

        ListSelectionDialog dialog = new ListSelectionDialog(getShell(), Arrays.asList(selectArr),
                new ArrayContentProvider(), new ProjectLabelProvider(),
                Messages.getString("IDEClassPathBlock.ProjectDialog_message")); //$NON-NLS-1$
        dialog.setTitle(Messages.getString("IDEClassPathBlock.ProjectDialog_title")); //$NON-NLS-1$
        dialog.setHelpAvailable(false);
        if (dialog.open() == Window.OK) {
            Object[] result = dialog.getResult();
            IDECPListElement[] cpElements = new IDECPListElement[result.length];
            for (int i = 0; i < result.length; i++) {
                IJavaProject curr = ((IJavaProject) result[i]);
                cpElements[i] = new IDECPListElement(IClasspathEntry.CPE_PROJECT, curr.getPath(),
                        curr.getResource());
            }
            return cpElements;
        }
    } catch (JavaModelException e) {
        return null;
    }
    return null;
}

From source file:org.eclipse.che.jdt.refactoring.ccp.MoveTest.java

License:Open Source License

@Test
@Ignore/*  ww  w  .  j a  v  a  2  s  .  co m*/
public void testDestination_yes_cuToProject() throws Exception {
    ParticipantTesting.reset();
    String oldSource = "package p;class A{void foo(){}class Inner{}}";
    String newSource = oldSource;
    ICompilationUnit cu1 = getPackageP().createCompilationUnit("A.java", oldSource, false,
            new NullProgressMonitor());
    IJavaElement[] javaElements = { cu1 };
    IResource[] resources = {};
    String[] handles = ParticipantTesting
            .createHandles(new Object[] { cu1, cu1.getTypes()[0], cu1.getResource() });
    JavaMoveProcessor ref = verifyEnabled(resources, javaElements, createReorgQueries());

    IJavaProject project = RefactoringTestSetup.getProject();
    Object destination = project;
    verifyValidDestination(ref, destination);

    assertTrue("source file does not exist before moving", cu1.exists());
    RefactoringStatus status = performRefactoring(ref, true);
    assertEquals(null, status);
    assertTrue("source file exists after moving", !cu1.exists());
    IFile newFile = project.getProject().getFile(cu1.getElementName());
    assertEqualLines("source differs", newSource, getContents(newFile));

    ParticipantTesting.testMove(handles,
            new MoveArguments[] { new MoveArguments(project.getProject(), ref.getUpdateReferences()),
                    new MoveArguments(project.getProject(), ref.getUpdateReferences()),
                    new MoveArguments(project.getResource(), ref.getUpdateReferences()) });
}

From source file:org.eclipse.che.jdt.refactoring.ccp.MoveTest.java

License:Open Source License

@Test
@Ignore/*  w w w  . j  a  v a2 s.co  m*/
public void testDestination_yes_sourceFolderToOtherProject() throws Exception {
    ParticipantTesting.reset();
    IJavaProject otherJavaProject = JavaProjectHelper.createJavaProject("other", "bin");

    IPackageFragmentRoot oldRoot = JavaProjectHelper.addSourceContainer(RefactoringTestSetup.getProject(),
            "newSrc");
    try {
        IJavaElement[] javaElements = { oldRoot };
        IResource[] resources = {};
        String[] handles = ParticipantTesting.createHandles(new Object[] { oldRoot, oldRoot.getResource() });
        JavaMoveProcessor ref = verifyEnabled(resources, javaElements, createReorgQueries());

        Object destination = otherJavaProject;
        verifyValidDestination(ref, destination);

        assertTrue("folder does not exist before", oldRoot.exists());
        RefactoringStatus status = performRefactoring(ref, false);
        assertEquals(null, status);
        assertTrue("folder not moved", !oldRoot.getResource().exists());
        IPackageFragmentRoot newRoot = getSourceFolder(otherJavaProject, oldRoot.getElementName());
        assertTrue("new folder does not exist after", newRoot.exists());
        ParticipantTesting.testMove(handles,
                new MoveArguments[] { new MoveArguments(otherJavaProject, ref.getUpdateReferences()),
                        new MoveArguments(otherJavaProject.getResource(), ref.getUpdateReferences()) });
    } finally {
        JavaProjectHelper.delete(otherJavaProject);
    }
}

From source file:org.entirej.ide.ui.wizards.form.NewEntireJFormPage.java

License:Apache License

protected IType chooseSuperClass() {
    IJavaProject project = getJavaProject();
    if (project == null) {
        return null;
    }//from w w w  . j  av  a2 s  .co  m

    return JavaAccessUtils.selectType(getShell(), project.getResource(),
            IJavaElementSearchConstants.CONSIDER_CLASSES, getSuperClass(),
            EJFormActionProcessor.class.getName());
}

From source file:org.fusesource.ide.jvmmonitor.internal.ui.properties.cpu.actions.AddPackageDialog.java

License:Open Source License

/**
 * Gets the package fragments./*from   w w w.  jav  a2  s.co m*/
 * 
 * @param javaModel
 *            The java model
 * @return The package fragments
 */
private Object[] getPackageFragments(IJavaModel javaModel) {

    Set<String> packageElements = new HashSet<String>();
    IJavaProject[] projects;
    try {
        projects = javaModel.getJavaProjects();
    } catch (JavaModelException e) {
        Activator.log(IStatus.ERROR, Messages.getJavaModelFailedMsg, e);
        return new Object[0];
    }

    for (IJavaProject project : projects) {
        if (EXTERNAL_PLUGIN_LIBRARIES.equals(project.getResource().getName())) {
            continue;
        }

        IPackageFragmentRoot[] packageFragmentRoots;
        try {
            packageFragmentRoots = project.getPackageFragmentRoots();
        } catch (JavaModelException e) {
            continue;
        }

        for (IPackageFragmentRoot packageFragment : packageFragmentRoots) {
            try {
                addPackage(packageElements, packageFragment);
            } catch (JavaModelException e) {
                // do nothing
            }
        }
    }

    for (Object packageName : filteringPackages) {
        packageElements.remove(packageName);
    }

    return packageElements.toArray(new String[0]);
}

From source file:org.grails.ide.eclipse.ui.internal.launch.GrailsLaunchMainTab.java

License:Open Source License

/**
 * chooses a project for the type of java launch config that it is
 * @return/*from w w w .  j ava 2s .  c  o  m*/
 */
private IJavaProject chooseJavaProject() {
    ILabelProvider labelProvider = new JavaElementLabelProvider(JavaElementLabelProvider.SHOW_DEFAULT);
    ElementListSelectionDialog dialog = new ElementListSelectionDialog(getShell(), labelProvider);
    dialog.setTitle("");
    dialog.setMessage("");
    try {
        Set<IJavaProject> projects = new LinkedHashSet<IJavaProject>();
        for (IJavaProject project : JavaCore.create(getWorkspaceRoot()).getJavaProjects()) {
            if (SpringCoreUtils.hasNature(project.getResource(), GrailsNature.NATURE_ID)) {
                projects.add(project);
            }
        }
        dialog.setElements((IJavaProject[]) projects.toArray(new IJavaProject[projects.size()]));
    } catch (JavaModelException e) {
        GrailsCoreActivator.log(e);
    }
    IJavaProject javaProject = getJavaProject();
    if (javaProject != null) {
        dialog.setInitialSelections(new Object[] { javaProject });
    }
    if (dialog.open() == Window.OK) {
        return (IJavaProject) dialog.getFirstResult();
    }
    return null;
}

From source file:org.gw4e.eclipse.wizard.project.GW4ECreationWizard.java

License:Open Source License

public boolean performFinish() {
    WorkspaceModifyOperation op = new WorkspaceModifyOperation() {
        protected void execute(IProgressMonitor monitor)
                throws CoreException, InvocationTargetException, InterruptedException {
            javaPage.performFinish(monitor);
        }//from  w  w  w .  j av a2s .co m
    };
    try {
        getContainer().run(false, true, op);

        IJavaProject newElement = javaPage.getJavaProject();

        GW4ENature.setGW4ENature(newElement.getProject());

        IWorkingSet[] workingSets = mainPage.getWorkingSets();
        if (workingSets.length > 0) {
            PlatformUI.getWorkbench().getWorkingSetManager().addToWorkingSets(newElement, workingSets);
        }

        BasicNewProjectResourceWizard.updatePerspective(fConfigElement);
        BasicNewResourceWizard.selectAndReveal(newElement.getResource(),
                PlatformUI.getWorkbench().getActiveWorkbenchWindow());

        fMavenPage.create();

        if (provider == null) {
            provider = new NoneTemplate();
        }

        IPath p = newElement.getProject().getFullPath().append(targetFolder.getName())
                .append(fMavenPage.getPackagePath());
        ResourceManager.ensureFolderPath(p);

        IFolder f = (IFolder) ResourceManager.getResource(p.toString());

        IRunnableWithProgress operation = provider.createResourceOperation(newElement.getProject(), f, policies,
                filename);
        getContainer().run(false, false, operation);
        return provider.openInEditor(workbench);
    } catch (Exception e) {
        ResourceManager.logException(e);
        return false;
    }
}