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

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

Introduction

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

Prototype

boolean exists();

Source Link

Document

Returns whether this Java element exists in the model.

Usage

From source file:net.sf.refactorit.eclipse.vfs.EclipseSourcePath.java

License:Open Source License

public List getNonJavaSources(WildcardPattern[] patterns) {
    // FIXME: overlook and user Source instead maybe?
    IJavaProject javaProject = getJavaProject();
    List result = new ArrayList();
    try {/*from   ww w . j a  v  a 2  s  .  co m*/

        Source[] rootSources = getRootSources();

        for (int i = 0; i < rootSources.length; i++) {
            IResource resource = ((EclipseSource) rootSources[i]).getResource();
            IPackageFragmentRoot packageRoot = javaProject.getPackageFragmentRoot(resource);
            if (!packageRoot.exists()) {
                continue;
            }

            collectNonJavaResources(result, packageRoot.getNonJavaResources(), patterns);

            // must collect recursively
            collectNonJavaResources(result, packageRoot.getChildren(), patterns);
        }
        return result;
    } catch (JavaModelException e) {
        AppRegistry.getExceptionLogger().error(e, this);
        throw new SystemException(ErrorCodes.ECLIPSE_INTERNAL_ERROR, e);
    }
}

From source file:org.codehaus.groovy.eclipse.dsl.tests.BuiltInDSLInferencingTests.java

License:Open Source License

public void testSanity() throws Exception {
    IJavaProject javaProject = JavaCore.create(project);
    assertTrue("Should have DSL support classpath container",
            GroovyRuntime.hasClasspathContainer(javaProject, GroovyDSLCoreActivator.CLASSPATH_CONTAINER_ID));

    IClasspathContainer container = JavaCore
            .getClasspathContainer(GroovyDSLCoreActivator.CLASSPATH_CONTAINER_ID, javaProject);
    IClasspathEntry[] cpes = container.getClasspathEntries();
    assertEquals("Wrong number of classpath entries found: " + Arrays.toString(cpes), 2, cpes.length);

    IClasspathEntry pluginEntry = null;//w ww .  j ava 2 s. c o m
    IClasspathEntry[] entries = javaProject.getResolvedClasspath(true);
    for (IClasspathEntry entry : entries) {
        if (entry.getPath().toString().contains("plugin_dsld")) {
            pluginEntry = entry;
        }
    }

    IPackageFragmentRoot root = null;
    List<String> elements = new ArrayList<String>();
    for (IJavaElement elt : javaProject.getChildren()) {
        elements.add(elt.getElementName());
        if (elt.getElementName().contains("plugin_dsld")) {
            root = (IPackageFragmentRoot) elt;
        }
    }

    List<String> possibleFrags = new ArrayList<String>();
    for (IPackageFragment frag : javaProject.getPackageFragments()) {
        if (frag.getElementName().equals("dsld")) {
            possibleFrags.add(frag.toString());
            possibleFrags.add("  [");
            for (IJavaElement child : frag.getChildren()) {
                possibleFrags.add("    " + child.getElementName());
            }
            possibleFrags.add("  ]");
        }
    }

    assertNotNull("Did not find the Plugin DSLD classpath entry.  Exsting resolved roots:\n"
            + printList(elements) + "\nOther DSLD fragments:\n" + printList(possibleFrags), pluginEntry);
    assertNotNull("Plugin DSLD classpath entry should exist.  Exsting resolved roots:\n" + printList(elements)
            + "\nOther DSLD fragments:\n" + printList(possibleFrags), root);
    assertTrue("Plugin DSLD classpath entry should exist", root.exists());

    ExternalPackageFragmentRoot ext = (ExternalPackageFragmentRoot) root;
    ext.resource().refreshLocal(IResource.DEPTH_INFINITE, null);
    root.close();
    root.open(null);

    IPackageFragment frag = root.getPackageFragment("dsld");
    assertTrue("DSLD package fragment should exist", frag.exists());
}

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

License:Open Source License

@Test
public void testDestination_no_fileToParentSourceFolder2() throws Exception {
    IPackageFragmentRoot root = getRoot();
    assertTrue(root.exists());
    IFolder superFolder = (IFolder) root.getPackageFragment("").getResource();
    IFile file = superFolder.getFile("a.txt");
    file.create(getStream("123"), true, null);

    IJavaElement[] javaElements = {};/*from   w w  w  .j a v  a 2  s  .  c  o  m*/
    IResource[] resources = { file };
    JavaMoveProcessor ref = verifyEnabled(resources, javaElements, createReorgQueries());
    Object destination = root;
    verifyInvalidDestination(ref, destination);
}

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

License:Open Source License

@Test
@Ignore//from w  ww  .  ja  v a 2s.c o  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.eclipse.e4.xwt.tools.ui.designer.dialogs.AccessorConfigurationDialog.java

License:Open Source License

protected void choosePackage(Widget widget, IPackageFragmentRoot root) {
    IJavaElement[] packages = null;//from  w w  w  .j av a 2 s . c  o  m
    try {
        if (root != null && root.exists()) {
            packages = root.getChildren();
        }
    } catch (JavaModelException e) {
        // no need to react
    }
    if (packages == null) {
        packages = new IJavaElement[0];
    }
    ElementListSelectionDialog dialog = new ElementListSelectionDialog(getShell(),
            new JavaElementLabelProvider(JavaElementLabelProvider.SHOW_DEFAULT));
    dialog.setIgnoreCase(true);

    dialog.setTitle("Package Selection");
    dialog.setMessage("Choose the destination package:");
    dialog.setElements(packages);

    if (dialog.open() == Window.OK) {
        IPackageFragment fragment = (IPackageFragment) dialog.getFirstResult();
        if (widget.equals(sourcePackagButton)) {
            sourcePackageText.setText(fragment.getElementName());
            // classFilePath = fragment.getPath().toString();
            classFragment = fragment;
        } else if (widget.equals(propertyPackagButton)) {
            propertyPackageText.setText(fragment.getElementName());
            // propertyFilePath = fragment.getPath().toString();
            propertyFragment = fragment;
        }
    }
}

From source file:org.eclipse.emf.teneo.eclipse.genxml.RunGenerateJob.java

License:Open Source License

/** Determine the classnames of the interfaces */
private String getEPackageNames() {
    try {/*from w  w  w  .j av a 2  s. com*/
        final ArrayList<String> result = new ArrayList<String>();
        for (int i = 0; i < jProjects.size(); i++) {
            final IJavaProject ijp = jProjects.get(i);
            for (int j = 0; j < ijp.getPackageFragmentRoots().length; j++) {
                IPackageFragmentRoot ipf = ijp.getPackageFragmentRoots()[j];
                if (ipf.getClass().getName().endsWith("JarPackageFragmentRoot")) {
                    continue;
                }
                if (!ipf.exists()) {
                    continue;
                }
                for (int c = 0; c < ipf.getChildren().length; c++) {
                    walk(ipf.getChildren()[c], "", result);
                }
            }
        }

        StringBuffer resultStr = new StringBuffer();
        for (int i = 0; i < result.size(); i++) {
            final String epackage = result.get(i);
            if (i > 0) {
                resultStr.append(",");
            }
            resultStr.append(epackage);
        }
        return resultStr.toString();
    } catch (Exception e) {
        throw new StoreEclipseException("Exception while looking for epackages in projects " + e.getMessage(),
                e);
    }

}

From source file:org.eclipse.jpt.common.core.internal.utility.PackageFragmentRootTools.java

License:Open Source License

private static boolean isSourceFolder_(IPackageFragmentRoot pfr) throws JavaModelException {
    return pfr.exists() && (pfr.getKind() == IPackageFragmentRoot.K_SOURCE);
}

From source file:org.eclipse.jst.j2ee.application.internal.operations.CreateProjectWithLinkedJarOperation.java

License:Open Source License

@Override
public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
    MultiStatus status = new MultiStatus(J2EEPlugin.PLUGIN_ID, 0, NLS.bind(
            EARCreationResourceHandler.CreateProjectWithLinkedJarOperation_Creating_project_with_linked_archiv_,
            getUtilityJar().getName()), null);

    try {// www .  ja v a2s. c  om
        IProject project = getWorkspaceRoot().getProject(getUtilityJarProjectName(getUtilityJar()));

        IDataModel createUtilityProject = DataModelFactory
                .createDataModel(new UtilityProjectCreationDataModelProvider());
        createUtilityProject.setProperty(IFacetProjectCreationDataModelProperties.FACET_PROJECT_NAME,
                getUtilityJarProjectName(getUtilityJar()));

        if (projectRoot != null && projectRoot.length() > 0) {
            createUtilityProject.setBooleanProperty(IProjectCreationPropertiesNew.USE_DEFAULT_LOCATION, false);
            createUtilityProject.setProperty(IProjectCreationPropertiesNew.USER_DEFINED_LOCATION, projectRoot);
        }

        createUtilityProject.setProperty(IJ2EEFacetProjectCreationDataModelProperties.ADD_TO_EAR, true);
        createUtilityProject.setProperty(IJ2EEFacetProjectCreationDataModelProperties.EAR_PROJECT_NAME,
                getAssociatedEARProjectName());

        status.add(createUtilityProject.getDefaultOperation().execute(monitor, info));

        IProject utilityJarProject = getWorkspaceRoot().getProject(getUtilityJarProjectName(getUtilityJar()));

        /* Remove the default src folder */
        IJavaProject utilityJarJavaProject = JavaCore.create(utilityJarProject);
        IPackageFragmentRoot srcFolder = utilityJarJavaProject
                .getPackageFragmentRoot(utilityJarProject.getFolder("src")); //$NON-NLS-1$
        if (srcFolder.exists()) {
            srcFolder.delete(IResource.FORCE, IPackageFragmentRoot.ORIGINATING_PROJECT_CLASSPATH, monitor);
        }
        status.add(createLinkedArchive(project, getUtilityJar().getName(), getUtilityJar(), linkedPathVariable,
                monitor));

        /* Remove the /src mapping */
        IVirtualComponent utilComponent = ComponentCore.createComponent(project);
        status.add(removeRootMapping(utilComponent, "/src", monitor)); //$NON-NLS-1$

    } catch (Exception e) {
        status.add(J2EEPlugin.createErrorStatus(0,
                EARCreationResourceHandler.J2EEUtilityJarListImportOperation_UI_2, e));
    }
    return status;
}

From source file:org.eclipse.jst.jsf.core.jsfappconfig.AnnotationPackageFragmentRoot.java

License:Open Source License

/**
 * Construct the wrapper around a package fragment root.
 * //from   w  w w  . ja v a2  s  .  c o m
 * @param root
 */
public AnnotationPackageFragmentRoot(IPackageFragmentRoot root) {
    if (root != null && root.exists() && !root.isExternal()) {
        this.root = root;
        IPath tempWebInfLibPath = null;
        IPath tempWebInfClassesPath = null;
        jProject = root.getJavaProject();
        if (jProject != null) {
            IProject project = jProject.getProject();
            if (project != null) {
                IVirtualFolder webContent = new DefaultVirtualComponentQuery().getWebContentFolder(project);
                if (webContent != null) {
                    IContainer webContentFolder = webContent.getUnderlyingFolder();
                    if (webContentFolder != null && webContentFolder.exists()) {
                        IPath webContentPath = webContentFolder.getFullPath();
                        if (webContentPath != null) {
                            tempWebInfLibPath = webContentPath.append("WEB-INF/lib"); //$NON-NLS-1$
                            tempWebInfClassesPath = webContentPath.append("WEB-INF/classes"); //$NON-NLS-1$
                        }
                    }
                }
            }
        }
        webInfClassesPath = tempWebInfClassesPath;
        webInfLibPath = tempWebInfLibPath;
    } else {
        this.root = null;
        this.webInfClassesPath = null;
        this.webInfLibPath = null;
        this.jProject = null;
    }
}

From source file:org.eclipse.modisco.java.discoverer.AbstractDiscoverJavaModelFromProject.java

License:Open Source License

public static Set<IPackageFragmentRoot> computeRequiredLibraries(final IJavaProject project)
        throws JavaModelException {
    Set<IPackageFragmentRoot> libraries = new LinkedHashSet<IPackageFragmentRoot>();
    // we keep package fragments which are binaries
    for (IPackageFragmentRoot lib : project.getPackageFragmentRoots()) {
        if (lib.exists() && lib.getKind() == IPackageFragmentRoot.K_BINARY) {
            libraries.add(lib);//from  w w  w . ja v a 2s  . c  o m
        }
    }
    return libraries;
}