Example usage for org.eclipse.jdt.core IJavaElement JAVA_PROJECT

List of usage examples for org.eclipse.jdt.core IJavaElement JAVA_PROJECT

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaElement JAVA_PROJECT.

Prototype

int JAVA_PROJECT

To view the source code for org.eclipse.jdt.core IJavaElement JAVA_PROJECT.

Click Source Link

Document

Constant representing a Java project.

Usage

From source file:org.evolizer.famix.importer.ProjectParser.java

License:Apache License

/**
 * Dispatcher method for handling selected Java elements.
 * //from   w ww .j ava  2  s.c om
 * @param monitor
 *            Progress monitor.
 * @return status.
 */
public IStatus parse(IProgressMonitor monitor) {
    fParsedElements = new HashSet<IJavaElement>();
    IStatus status = Status.OK_STATUS;

    SubMonitor progress = SubMonitor.convert(monitor, 100);
    progress.setTaskName("Parse selected items");
    SubMonitor loopProgress = progress.newChild(100).setWorkRemaining(getSelection().size());

    try {
        for (IJavaElement javaElement : getSelection()) {
            switch (javaElement.getElementType()) {
            case IJavaElement.JAVA_PROJECT:
                status = parseProject((IJavaProject) javaElement, loopProgress.newChild(1));
                break;
            case IJavaElement.PACKAGE_FRAGMENT:
                status = parsePackageFragment((IPackageFragment) javaElement, loopProgress.newChild(1));
                break;
            case IJavaElement.COMPILATION_UNIT:
                status = parseCompilationUnit((ICompilationUnit) javaElement, loopProgress.newChild(1));
                break;
            default:
                sLogger.error("Parsing of this Java element is not supported.");
                break;
            }

            if (status.getSeverity() == IStatus.ERROR) {
                sLogger.error("Error in parsing " + javaElement + " - continuing with next selected element.");
            } else if (status.getSeverity() == IStatus.CANCEL) {
                sLogger.info("Parsing job canceled");
                break;
            }
        }
    } finally {
        if (monitor != null) {
            monitor.done();
            monitor.subTask("");
        }
    }

    return status;
}

From source file:org.fastcode.util.SourceUtil.java

License:Open Source License

/**
 * @throws Exception/*from ww  w .jav  a 2s . com*/
 */
public static IJavaProject getWorkingJavaProjectFromUser() throws Exception {
    final IJavaProject[] javaProject = getProjectsFromWorkspace();
    final ProjectSelectionDialog projectSelectionDialog = new ProjectSelectionDialog(new Shell(),
            "Projects in Workspace", "Select a project you want to work with", javaProject,
            IJavaElement.JAVA_PROJECT);
    if (projectSelectionDialog.open() != CANCEL) {
        return (IJavaProject) projectSelectionDialog.getFirstResult();
    }
    return null;
}

From source file:org.fusesource.ide.camel.model.service.core.util.ProjectClasspathChangedListener.java

License:Open Source License

private void visit(IJavaElementDelta delta) {
    IJavaElement el = delta.getElement();
    switch (el.getElementType()) {
    case IJavaElement.JAVA_MODEL:
        visitChildren(delta);/*  w  ww  .j a v a 2 s .c o  m*/
        break;
    case IJavaElement.JAVA_PROJECT:
        if (isClasspathChanged(delta.getFlags())) {
            notifyClasspathChanged((IJavaProject) el);
        }
        break;
    default:
        break;
    }
}

From source file:org.grails.ide.eclipse.editor.gsp.translation.GSPTranslation.java

License:Open Source License

/**
 * Originally from ReconcileStepForJava.  Creates an ICompilationUnit from the contents of the JSP document.
 * //from w w w. ja v  a  2  s . c o  m
 * @return an ICompilationUnit from the contents of the JSP document
 */
private ICompilationUnit createCompilationUnit() throws JavaModelException {

    IPackageFragment packageFragment = null;
    IJavaElement je = getJavaProject();

    if (je == null || !je.exists())
        return null;

    switch (je.getElementType()) {
    case IJavaElement.PACKAGE_FRAGMENT:
        je = je.getParent();
        // fall through

    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
        IPackageFragmentRoot packageFragmentRoot = (IPackageFragmentRoot) je;
        packageFragment = packageFragmentRoot.getPackageFragment(IPackageFragmentRoot.DEFAULT_PACKAGEROOT_PATH);
        break;

    case IJavaElement.JAVA_PROJECT:
        IJavaProject jProject = (IJavaProject) je;

        if (!jProject.exists()) {
            if (DEBUG) {
                System.out.println(
                        "** Abort create working copy: cannot create working copy: JSP is not in a Java project"); //$NON-NLS-1$
            }
            return null;
        }

        packageFragmentRoot = null;
        IPackageFragmentRoot[] packageFragmentRoots = jProject.getPackageFragmentRoots();
        int i = 0;
        while (i < packageFragmentRoots.length) {
            if (!packageFragmentRoots[i].isArchive() && !packageFragmentRoots[i].isExternal()) {
                packageFragmentRoot = packageFragmentRoots[i];
                break;
            }
            i++;
        }
        if (packageFragmentRoot == null) {
            if (DEBUG) {
                System.out.println(
                        "** Abort create working copy: cannot create working copy: JSP is not in a Java project with source package fragment root"); //$NON-NLS-1$
            }
            return null;
        }
        packageFragment = packageFragmentRoot.getPackageFragment(IPackageFragmentRoot.DEFAULT_PACKAGEROOT_PATH);
        break;

    default:
        return null;
    }

    // GRAILS CHANGE
    // create compilation unit with .groovy instead of .java file extension
    ICompilationUnit cu = packageFragment.getCompilationUnit(getClassname() + ".groovy") //$NON-NLS-1$
            .getWorkingCopy(getWorkingCopyOwner(), getProgressMonitor());
    //        ICompilationUnit cu = packageFragment.getCompilationUnit(getClassname() + ".java").getWorkingCopy(getWorkingCopyOwner(), getProgressMonitor()); //$NON-NLS-1$
    setContents(cu);

    // GRAILS CHANGE
    // need extra call to makeConsistent
    // https://issuetracker.springsource.com/browse/STS-3091#comment-79054
    cu.makeConsistent(getProgressMonitor());

    if (DEBUG) {
        System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"); //$NON-NLS-1$
        System.out.println("(+) JSPTranslation [" + this + "] finished creating CompilationUnit: " + cu); //$NON-NLS-1$ //$NON-NLS-2$
        System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"); //$NON-NLS-1$
    }

    return cu;
}

From source file:org.grails.ide.eclipse.test.util.AbstractGrailsJUnitIntegrationsTest.java

License:Open Source License

/**
 * COPIED from JUnitLaunchShortcut... create a JUnit lauch config just like the one the JUnit UI would.
 *//*from  w  w  w. j  a  va2s  .c  o m*/
public static ILaunchConfigurationWorkingCopy createLaunchConfiguration(IJavaElement element)
        throws CoreException {
    final String testName;
    final String mainTypeQualifiedName;
    final String containerHandleId;

    switch (element.getElementType()) {
    case IJavaElement.JAVA_PROJECT:
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
    case IJavaElement.PACKAGE_FRAGMENT: {
        String name = element.getElementName();
        containerHandleId = element.getHandleIdentifier();
        mainTypeQualifiedName = "";
        testName = name.substring(name.lastIndexOf(IPath.SEPARATOR) + 1);
    }
        break;
    case IJavaElement.TYPE: {
        containerHandleId = "";
        mainTypeQualifiedName = ((IType) element).getFullyQualifiedName('.'); // don't replace, fix for binary inner types
        testName = element.getElementName();
    }
        break;
    case IJavaElement.METHOD: {
        IMethod method = (IMethod) element;
        containerHandleId = "";
        mainTypeQualifiedName = method.getDeclaringType().getFullyQualifiedName('.');
        testName = method.getDeclaringType().getElementName() + '.' + method.getElementName();
    }
        break;
    default:
        throw new IllegalArgumentException(
                "Invalid element type to create a launch configuration: " + element.getClass().getName()); //$NON-NLS-1$
    }

    String testKindId = TestKindRegistry.getContainerTestKindId(element);

    ILaunchConfigurationType configType = getLaunchManager()
            .getLaunchConfigurationType(JUnitLaunchConfigurationConstants.ID_JUNIT_APPLICATION);
    ILaunchConfigurationWorkingCopy wc = configType.newInstance(null,
            getLaunchManager().generateLaunchConfigurationName(testName));

    wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, mainTypeQualifiedName);
    wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME,
            element.getJavaProject().getElementName());
    wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_KEEPRUNNING, false);
    wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_CONTAINER, containerHandleId);
    wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_RUNNER_KIND, testKindId);
    JUnitMigrationDelegate.mapResources(wc);
    //AssertionVMArg.setArgDefault(wc);
    if (element instanceof IMethod) {
        wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_METHOD_NAME, element.getElementName()); // only set for methods
    }
    return wc;
}

From source file:org.jaml.eclipse.editors.JamlContentAssistProcessor.java

License:Open Source License

private IJavaElement getHighestRoot(IJavaElement element) {
    return element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT
            && element.getElementType() != IJavaElement.JAVA_PROJECT && element.getParent() != null
                    ? getHighestRoot(element.getParent())
                    : element;//from   w w  w . jav a2s  .c o  m
}

From source file:org.jaml.eclipse.utils.JDTUtils.java

License:Open Source License

public static void findJavaTypes(List<IType> list, IJavaElement element) throws JavaModelException {
    switch (element.getElementType()) {
    case IJavaElement.JAVA_PROJECT:
        // Java project
        IJavaProject proj = (IJavaProject) element;
        findJavaTypes(list, proj.getChildren());
        break;/*from  w  ww. java 2  s . c  o m*/
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
        // JAR file
        IPackageFragmentRoot pkgRoot = (IPackageFragmentRoot) element;
        findJavaTypes(list, pkgRoot.getChildren());
        break;
    case IJavaElement.PACKAGE_FRAGMENT:
        // Java package
        IPackageFragment pkgFragment = (IPackageFragment) element;
        findJavaTypes(list, pkgFragment.getChildren());
        break;
    case IJavaElement.COMPILATION_UNIT:
        // Source file (.java)
        ICompilationUnit cmUnit = (ICompilationUnit) element;
        findJavaTypes(list, cmUnit.getTypes());
        break;
    case IJavaElement.CLASS_FILE:
        // Compiled file (.class)
        IClassFile clFile = (IClassFile) element;
        findJavaTypes(list, clFile.getType());
        break;
    case IJavaElement.TYPE:
        // Java class
        IType type = (IType) element;
        if (!type.getFullyQualifiedName().contains("$")) {
            list.add(type);
        }
        break;
    }
}

From source file:org.jaml.eclipse.utils.JDTUtils.java

License:Open Source License

public static String getIJavaElementPath(IJavaElement element) throws JavaModelException {
    switch (element.getElementType()) {
    case IJavaElement.JAVA_PROJECT:
        return element.getCorrespondingResource().getFullPath().toString();
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
        return element.getCorrespondingResource().getFullPath().toString();
    case IJavaElement.PACKAGE_FRAGMENT:
        return element.getCorrespondingResource().getFullPath().toString();
    case IJavaElement.COMPILATION_UNIT:
        return element.getCorrespondingResource().getFullPath().toString().replace(element.getElementName(),
                "");
    case IJavaElement.TYPE:
        return getIJavaElementPath(element.getParent());
    }//ww  w.ja v a 2s  .c o m
    return JavaExt.STRING_EMPTY;
}

From source file:org.jboss.tools.arquillian.ui.internal.commands.ArquillianPropertyTester.java

License:Open Source License

private boolean canLaunchAsArquillianJUnitTest(IJavaElement element) {
    try {/*w w  w  .  j  a  va  2  s .c o  m*/
        switch (element.getElementType()) {
        case IJavaElement.JAVA_PROJECT:
        case IJavaElement.PACKAGE_FRAGMENT_ROOT:
            return true; // can run, let test runner detect if there are tests
        case IJavaElement.PACKAGE_FRAGMENT:
            return ((IPackageFragment) element).hasChildren();
        case IJavaElement.COMPILATION_UNIT:
        case IJavaElement.CLASS_FILE:
        case IJavaElement.TYPE:
        case IJavaElement.METHOD:
            return ArquillianSearchEngine.isArquillianJUnitTest(element, true, true, false);
        default:
            return false;
        }
    } catch (JavaModelException e) {
        return false;
    }
}

From source file:org.jboss.tools.arquillian.ui.internal.launcher.ArquillianLaunchShortcut.java

License:Open Source License

private void launch(Object[] elements, String mode) {
    try {/*w  w  w .  j a va2s  . co m*/
        IJavaElement elementToLaunch = null;

        if (elements.length == 1) {
            Object selected = elements[0];
            if (!(selected instanceof IJavaElement) && selected instanceof IAdaptable) {
                selected = ((IAdaptable) selected).getAdapter(IJavaElement.class);
            }
            if (selected instanceof IJavaElement) {
                IJavaElement element = (IJavaElement) selected;
                switch (element.getElementType()) {
                case IJavaElement.JAVA_PROJECT:
                case IJavaElement.PACKAGE_FRAGMENT_ROOT:
                case IJavaElement.PACKAGE_FRAGMENT:
                    IJavaProject javaProject = element.getJavaProject();
                    if (ArquillianSearchEngine.hasArquillianType(javaProject)) {
                        elementToLaunch = element;
                    }
                    break;
                case IJavaElement.TYPE:
                    IType type = (IType) element;
                    if (ArquillianSearchEngine.isArquillianJUnitTest(type, true, true)) {
                        elementToLaunch = type;
                    }
                case IJavaElement.METHOD:
                    javaProject = element.getJavaProject();
                    if (ArquillianSearchEngine.hasArquillianType(javaProject)) {
                        elementToLaunch = element;
                    }
                    break;
                case IJavaElement.CLASS_FILE:
                    type = ((IClassFile) element).getType();
                    if (ArquillianSearchEngine.isArquillianJUnitTest(type, true, true, false)) {
                        elementToLaunch = type;
                    }
                    break;
                case IJavaElement.COMPILATION_UNIT:
                    elementToLaunch = findTypeToLaunch((ICompilationUnit) element, mode);
                    break;
                }
            }
        }
        if (elementToLaunch == null) {
            showNoTestsFoundDialog();
            return;
        }
        performLaunch(elementToLaunch, mode);
    } catch (InterruptedException e) {
        // OK, silently move on
    } catch (CoreException e) {
        ExceptionHandler.handle(e, getShell(), ARQUILLIAN_J_UNIT_LAUNCH,
                LAUNCHING_OF_ARQILLIAN_J_UNIT_TESTS_FAILED);
    } catch (InvocationTargetException e) {
        ExceptionHandler.handle(e, getShell(), ARQUILLIAN_J_UNIT_LAUNCH,
                LAUNCHING_OF_ARQILLIAN_J_UNIT_TESTS_FAILED);
    }
}