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

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

Introduction

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

Prototype

IResource getResource();

Source Link

Document

Returns the innermost resource enclosing this element.

Usage

From source file:org.jboss.tools.hibernate.jpt.ui.wizard.GenerateEntitiesWizard.java

License:Open Source License

@Override
public void resourceChanged(IResourceChangeEvent event) {
    IResourceDelta delta = event.getDelta();
    if (delta != null) {
        try {//from w ww  .java 2  s.c o  m
            delta.accept(new IResourceDeltaVisitor() {

                @Override
                public boolean visit(IResourceDelta delta) throws CoreException {
                    IResource resource = delta.getResource();
                    int type = resource.getType();
                    //we also have to consider projects we dependent on here!!!
                    if (type == IResource.ROOT || type == IResource.PROJECT || type == IResource.FOLDER)
                        return true;

                    if (resource instanceof IFile && delta.getKind() == IResourceDelta.ADDED) {
                        // see if this is it
                        IFile candidate = (IFile) resource;
                        if (isJavaSourceFile(candidate)) {
                            generatedJavaFiles.add(candidate);
                        }
                    }
                    return false;
                }

                private boolean isJavaSourceFile(IResource candidate) {
                    if (candidate.getName().endsWith(".java")) { //$NON-NLS-1$
                        while (candidate.getParent() != null) {
                            for (IPackageFragmentRoot root : sourceRoots) {
                                if (root.getResource().equals(candidate.getParent())) {
                                    return true;
                                }
                            }
                            candidate = candidate.getParent();
                        }
                    }
                    return false;
                }
            });
        } catch (CoreException e) {
            e.printStackTrace();
        }
    }
}

From source file:org.jboss.tools.hibernate.jpt.ui.wizard.GenerateInitWizardPage.java

License:Open Source License

protected String getDefaultOutput() {
    try {//from   w w w  .  j  a va  2  s . c  o m
        if (getJpaProject() == null)
            return ""; //$NON-NLS-1$
        if (getJpaProject().getJavaProject() == null)
            return ""; //$NON-NLS-1$
        if (!getJpaProject().getJavaProject().exists())
            return ""; //$NON-NLS-1$
        IPackageFragmentRoot[] roots = getJpaProject().getJavaProject().getPackageFragmentRoots();
        for (int i = 0; i < roots.length; i++) {
            IPackageFragmentRoot root = roots[i];
            if (root.getClass() == PackageFragmentRoot.class) {
                if (root.exists())
                    return root.getResource().getFullPath().toOSString();
            }
        }
        return getJpaProject().getJavaProject().getResource().getFullPath().toOSString();
    } catch (JavaModelException e) {
        HibernateJptUIPlugin.logException(e);
        return ""; //$NON-NLS-1$
    }
}

From source file:org.jboss.tools.jsf.jsf2.util.JSF2ResourceUtil.java

License:Open Source License

private static IResource searchInClassPath2(IProject project, String classPathResource, int jarResourceType) {
    IJavaProject javaProject = JavaCore.create(project);
    try {//from w w w  .j ava2 s . co  m
        for (IPackageFragmentRoot fragmentRoot : javaProject.getAllPackageFragmentRoots()) {
            IResource r = fragmentRoot.getResource();
            if (fragmentRoot instanceof ExternalPackageFragmentRoot) {
                r = ((ExternalPackageFragmentRoot) fragmentRoot).resource();
            }
            if (r instanceof IFolder && r.exists()) {
                IFolder f = (IFolder) r;
                IFile f1 = f.getFile(classPathResource);
                if (f1.exists()) {
                    return f1;
                }
                IFolder f2 = f.getFolder(classPathResource);
                if (f2.exists()) {
                    return f2;
                }
            }
        }
    } catch (JavaModelException e) {
        JSFModelPlugin.getPluginLog().logError(e);
    } catch (CoreException e) {
        JSFModelPlugin.getPluginLog().logError(e);
    }
    return null;
}

From source file:org.jboss.tools.maven.conversion.ui.handlers.ConvertToMavenDependencyHandler.java

License:Open Source License

private void addClasspathEntry(IPackageFragmentRoot pfr, Collection<IClasspathEntry> entries) {
    if (pfr.isArchive()) {
        pfr.getResource();
        try {/*from  w  ww  . j a va2  s  . com*/
            IClasspathEntry cpe = pfr.getResolvedClasspathEntry();
            if (cpe != null && cpe.getEntryKind() == IClasspathEntry.CPE_LIBRARY) {
                entries.add(cpe);
            }
        } catch (JavaModelException e) {
            e.printStackTrace();
        }
    }
}

From source file:org.jboss.tools.seam.core.test.refactoring.SeamPropertyRefactoringTest.java

License:Open Source License

private void renameSourceFolder(String folderPath, String newFolderName, HashMap<String, String> preferences)
        throws CoreException {
    IPackageFragmentRoot packageFragmentRoot = getSourceFolder(folderPath);
    IProject project = packageFragmentRoot.getResource().getProject();
    String newPath = project.getFullPath().toString() + "/" + newFolderName;

    JavaRenameProcessor processor = new RenameSourceFolderProcessor(packageFragmentRoot);
    SeamFolderRenameParticipant participant = new SeamFolderRenameParticipant();
    IResource folder = ResourcesPlugin.getWorkspace().getRoot().findMember(actionSourceFolderPath);

    checkRename(processor, folder, newPath, participant, preferences);
}

From source file:org.jboss.tools.seam.internal.core.project.facet.SeamFacetAbstractInstallDelegate.java

License:Open Source License

protected IResource getSrcFolder(IProject project) throws JavaModelException {
    IJavaProject javaProject = EclipseResourceUtil.getJavaProject(project);

    IPackageFragmentRoot[] roots = javaProject.getPackageFragmentRoots();
    IPackageFragmentRoot src = null;
    for (int i = 0; i < roots.length; i++) {
        if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) {
            src = roots[i];//from  w ww.  j  av a  2 s . c  o m
        }
    }
    if (src != null) {
        return src.getResource();
    }
    return null;
}

From source file:org.jboss.tools.ws.creation.core.utils.JBossWSCreationUtils.java

License:Open Source License

public static List<String> getJavaProjectSrcFolder(IProject project) throws JavaModelException {
    IPackageFragmentRoot[] packageFragmentRoots = JavaCore.create(project).getAllPackageFragmentRoots();
    if (packageFragmentRoots != null && packageFragmentRoots.length > 0) {
        List<String> list = new ArrayList<String>();
        for (int i = 0; i < packageFragmentRoots.length; i++) {
            IPackageFragmentRoot packageFragmentRoot = packageFragmentRoots[i];
            if (packageFragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE) {
                list.add(packageFragmentRoot.getResource().getFullPath().toOSString());
            }// w ww .j  a v  a2 s. c o  m
        }
        return list;
    }
    return null;
}

From source file:org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JavaElement11ChangedProcessingTestCase.java

License:Open Source License

@Test
public void shouldRemoveApplicationWhenRemovingSourceFolder() throws CoreException {
    // pre-conditions: remove noise from other folders
    metamodelMonitor.removeFolder("src", "main", "webapp");
    metamodelMonitor.removePackageFragmentRoot("src/test/java");
    metamodelMonitor.createJavaApplication("org.jboss.tools.ws.jaxrs.sample.services.RestApplication");
    metamodelMonitor.resetElementChangesNotifications();
    // operation/*  ww  w  .  java 2 s  .  com*/
    final IPackageFragmentRoot sourceFolder = metamodelMonitor.resolvePackageFragmentRoot("src/main/java");
    sourceFolder.getResource().delete(true, null);
    metamodelMonitor.processEvent(sourceFolder, REMOVED);
    // verification: only 6 Built-in HTTP Methods left in the metamodel
    assertThat(metamodel.findAllElements().size(), equalTo(6));
}

From source file:org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JavaElement11ChangedProcessingTestCase.java

License:Open Source License

@Test
public void shouldRemoveHttpMethodWhenRemovingSourceFolder() throws CoreException {
    // pre-conditions: remove noise from other folders
    metamodelMonitor.removeFolder("src", "main", "webapp");
    metamodelMonitor.removePackageFragmentRoot("src/test/java");
    metamodelMonitor.createHttpMethod("org.jboss.tools.ws.jaxrs.sample.services.BAR");
    metamodelMonitor.resetElementChangesNotifications();
    // operation/*from w w w .  j  a v  a 2 s. co  m*/
    final IPackageFragmentRoot sourceFolder = metamodelMonitor.resolvePackageFragmentRoot("src/main/java");
    sourceFolder.getResource().delete(true, null);
    metamodelMonitor.processEvent(sourceFolder, REMOVED);
    // verification: only 6 Built-in HTTP Methods left in the metamodel
    assertThat(metamodel.findAllElements().size(), equalTo(6));
}

From source file:org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JavaElement11ChangedProcessingTestCase.java

License:Open Source License

@Test
public void shouldRemoveResourceWhenRemovingSourceFolder() throws CoreException {
    // pre-conditions: remove noise from other folders
    metamodelMonitor.removeFolder("src", "main", "webapp");
    metamodelMonitor.removePackageFragmentRoot("src/test/java");
    metamodelMonitor.createResource("org.jboss.tools.ws.jaxrs.sample.services.CustomerResource");
    metamodelMonitor.resetElementChangesNotifications();
    // operation//w ww.j  av  a  2s.  c  om
    final IPackageFragmentRoot sourceFolder = metamodelMonitor.resolvePackageFragmentRoot("src/main/java");
    sourceFolder.getResource().delete(true, null);
    metamodelMonitor.processEvent(sourceFolder, REMOVED);
    // verification: only 6 built-in HTTP Methods left in the metamodel
    assertThat(metamodel.findAllElements().size(), equalTo(6));
}