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.eclipse.jst.jsp.core.taglib.ProjectDescription.java

License:Open Source License

void queueElementChanged(IJavaElementDelta delta) {
    try {/*from  w w  w .j a  v a 2 s .  c  o m*/
        LOCK.acquire();
        IJavaElement element = delta.getElement();
        if (element.getElementType() == IJavaElement.JAVA_PROJECT) {
            IJavaElementDelta[] affectedChildren = delta.getAffectedChildren();
            for (int i = 0; i < affectedChildren.length; i++) {
                queueElementChanged(affectedChildren[i]);
            }
        }
        if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT_ROOT
                && ((IPackageFragmentRoot) element).isArchive()) {
            IPath path = element.getPath();
            boolean fragmentisExported = true;
            try {
                IClasspathEntry rawClasspathEntry = ((IPackageFragmentRoot) element).getRawClasspathEntry();
                /*
                 * null may also be returned for deletions depending on
                 * resource/build path notification order. If it's null,
                 * it's been deleted and whether it's exported won't
                 * really matter
                 */
                if (rawClasspathEntry != null) {
                    fragmentisExported = rawClasspathEntry.isExported();
                }
            } catch (JavaModelException e) {
                // IPackageFragmentRoot not part of the build path
            }
            String key = path.toString();
            if ((delta.getFlags() & IJavaElementDelta.F_ADDED_TO_CLASSPATH) > 0) {
                fPackageFragmentRootsAdded.put(key,
                        new PackageFragmentRootDelta(path, ITaglibIndexDelta.ADDED, fragmentisExported));
                fPackageFragmentRootsChanged.remove(key);
                fPackageFragmentRootsRemoved.remove(key);
                fBuildPathEntryCount++;
            } else if ((delta.getFlags() & IJavaElementDelta.F_ARCHIVE_CONTENT_CHANGED) > 0) {
                fPackageFragmentRootsChanged.put(key,
                        new PackageFragmentRootDelta(path, ITaglibIndexDelta.CHANGED, fragmentisExported));
            } else if (((delta.getFlags() & IJavaElementDelta.F_REMOVED_FROM_CLASSPATH) > 0)
                    && ((delta.getFlags() & IJavaElementDelta.F_REORDER) == 0)) {
                fPackageFragmentRootsAdded.remove(key);
                fPackageFragmentRootsChanged.remove(key);
                fPackageFragmentRootsRemoved.put(key,
                        new PackageFragmentRootDelta(path, ITaglibIndexDelta.REMOVED, fragmentisExported));
                fBuildPathEntryCount--;
            }
        }
    } finally {
        LOCK.release();
    }

    fBuildPathJob.cancel();
    fBuildPathJob.schedule(2000);
}

From source file:org.eclipse.mylyn.internal.java.ui.JavaStructureBridge.java

License:Open Source License

/**
 * Some copying from:/* www . j a v a 2 s .c  o  m*/
 * 
 * @see org.eclipse.jdt.ui.ProblemsLabelDecorator
 */
public boolean containsProblem(IInteractionElement node) {
    try {
        IJavaElement element = (IJavaElement) getObjectForHandle(node.getHandleIdentifier());
        switch (element.getElementType()) {
        case IJavaElement.JAVA_PROJECT:
        case IJavaElement.PACKAGE_FRAGMENT_ROOT:
            return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_INFINITE, null);
        case IJavaElement.PACKAGE_FRAGMENT:
        case IJavaElement.COMPILATION_UNIT:
        case IJavaElement.CLASS_FILE:
            return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_ONE, null);
        case IJavaElement.PACKAGE_DECLARATION:
        case IJavaElement.IMPORT_DECLARATION:
        case IJavaElement.IMPORT_CONTAINER:
        case IJavaElement.TYPE:
        case IJavaElement.INITIALIZER:
        case IJavaElement.METHOD:
        case IJavaElement.FIELD:
        case IJavaElement.LOCAL_VARIABLE:
            ICompilationUnit cu = (ICompilationUnit) element.getAncestor(IJavaElement.COMPILATION_UNIT);
            if (cu != null) {
                return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_ONE, null);
            }
        }
    } catch (CoreException e) {
        // ignore
    }
    return false;
}

From source file:org.eclipse.objectteams.otdt.internal.core.OTType.java

License:Open Source License

private List<IType> searchEngineGetRoleFiles(IType[] teamsToConsider, String roleName)
        throws JavaModelException {
    final List<IType> searchResult = new ArrayList<IType>();
    char[] role = (roleName == null) ? null : roleName.toCharArray();

    try {// ww  w .  java  2s .  c o m

        OTSearchEngine searchEngine = new OTSearchEngine();
        IJavaSearchScope scope = SearchEngine
                .createJavaSearchScope(new IJavaElement[] { this.getAncestor(IJavaElement.JAVA_PROJECT) });
        SearchRequestor requestor = new SearchRequestor() {
            public void acceptSearchMatch(SearchMatch match) throws CoreException {
                searchResult.add((IType) match.getElement());
            }
        };

        for (int i = 0; i < teamsToConsider.length; i++) {
            IType currentType = teamsToConsider[i];
            IOTType ottype = OTModelManager.getOTElement(currentType);
            if (ottype == null || !ottype.isTeam())
                continue;

            SearchPattern pattern = new ReferenceToTeamPackagePattern(
                    currentType.getFullyQualifiedName().toCharArray(), role,
                    SearchPattern.R_EXACT_MATCH | SearchPattern.R_CASE_SENSITIVE);
            searchEngine.search(pattern, scope, requestor, new NullProgressMonitor());
        }
    } catch (CoreException exc) {
        throw new JavaModelException(exc);
    }
    return searchResult;
}

From source file:org.eclipse.objectteams.otdt.ui.tests.refactoring.reorg.OTCopyToClipboardTests.java

License:Open Source License

private static int countResources(IJavaElement[] javaElementsCopied) {
    int count = 0;
    for (int i = 0; i < javaElementsCopied.length; i++) {
        IJavaElement element = javaElementsCopied[i];
        switch (element.getElementType()) {
        case IJavaElement.JAVA_PROJECT:
        case IJavaElement.PACKAGE_FRAGMENT_ROOT:
        case IJavaElement.PACKAGE_FRAGMENT:
        case IJavaElement.COMPILATION_UNIT:
        case IJavaElement.CLASS_FILE:
            count++;//from  w  w w  . j av a  2s. c  o m
        }
    }
    return count;
}

From source file:org.eclipse.pde.api.tools.internal.ApiDescriptionManager.java

License:Open Source License

/**
 * Flushes the changed element from the model cache
 * // w w  w. j a  va2 s  .co m
 * @param element
 */
void flushElementCache(IJavaElement element) {
    switch (element.getElementType()) {
    case IJavaElement.COMPILATION_UNIT: {
        ICompilationUnit unit = (ICompilationUnit) element;
        IType type = unit.findPrimaryType();
        if (type != null) {
            ApiModelCache.getCache().removeElementInfo(ApiBaselineManager.WORKSPACE_API_BASELINE_ID,
                    element.getJavaProject().getElementName(), type.getFullyQualifiedName(), IApiElement.TYPE);
        }
        break;
    }
    case IJavaElement.JAVA_PROJECT: {
        ApiModelCache.getCache().removeElementInfo(ApiBaselineManager.WORKSPACE_API_BASELINE_ID,
                element.getElementName(), null, IApiElement.COMPONENT);
        break;
    }
    default:
        break;
    }
}

From source file:org.eclipse.pde.api.tools.internal.WorkspaceDeltaProcessor.java

License:Open Source License

/**
 * Processes the java element deltas of interest
 * /*from w w  w .  j a  v  a2s  .c  o m*/
 * @param deltas
 */
void processJavaElementDeltas(IJavaElementDelta[] deltas, IJavaProject project) {
    for (int i = 0; i < deltas.length; i++) {
        IJavaElementDelta delta = deltas[i];
        switch (delta.getElement().getElementType()) {
        case IJavaElement.JAVA_PROJECT: {
            IJavaProject proj = (IJavaProject) delta.getElement();
            int flags = delta.getFlags();
            switch (delta.getKind()) {
            case IJavaElementDelta.CHANGED: {
                if (!Util.isApiProject(proj)) {
                    if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                        System.out.println(
                                "--> skipped processing CHANGED delta for project: " + proj.getElementName()); //$NON-NLS-1$
                    }
                    continue;
                }
                if ((flags & IJavaElementDelta.F_OPENED) != 0) {
                    if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                        System.out.println("--> processing OPEN project: [" + proj.getElementName() + "]"); //$NON-NLS-1$ //$NON-NLS-2$
                    }
                    bmanager.disposeWorkspaceBaseline();
                } else if ((flags & IJavaElementDelta.F_RESOLVED_CLASSPATH_CHANGED) != 0
                        || (flags & IJavaElementDelta.F_CLASSPATH_CHANGED) != 0) {
                    if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                        System.out.println(
                                "--> processing CLASSPATH CHANGE project: [" + proj.getElementName() + "]"); //$NON-NLS-1$ //$NON-NLS-2$
                    }
                    bmanager.disposeWorkspaceBaseline();
                    dmanager.projectClasspathChanged(proj);
                    try {
                        BuildState.setLastBuiltState(proj.getProject(), null);
                    } catch (CoreException e) {
                    }
                    dmanager.flushElementCache(delta.getElement());
                } else if ((flags & IJavaElementDelta.F_CHILDREN) != 0) {
                    if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                        System.out.println(
                                "--> processing CHILDREN delta of project: [" + proj.getElementName() + "]"); //$NON-NLS-1$ //$NON-NLS-2$
                    }
                    processJavaElementDeltas(delta.getAffectedChildren(), proj);
                } else if ((flags & IJavaElementDelta.F_CONTENT) != 0) {
                    if (proj != null) {
                        if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                            System.out.println(
                                    "--> processing child CONTENT of project: [" + proj.getElementName() + "]"); //$NON-NLS-1$ //$NON-NLS-2$
                        }
                        IResourceDelta[] resourcedeltas = delta.getResourceDeltas();
                        if (resourcedeltas != null) {
                            IResourceDelta rdelta = null;
                            for (int j = 0; j < resourcedeltas.length; j++) {
                                rdelta = resourcedeltas[j].findMember(new Path(Util.MANIFEST_NAME));
                                if (rdelta != null && rdelta.getKind() == IResourceDelta.CHANGED
                                        && (rdelta.getFlags() & IResourceDelta.CONTENT) > 0) {
                                    if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                                        System.out.println("--> processing manifest delta"); //$NON-NLS-1$
                                    }
                                    bmanager.disposeWorkspaceBaseline();
                                    break;
                                }
                            }
                        }
                    } else {
                        if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                            System.out.println("--> ignoring child CONTENT project context is null"); //$NON-NLS-1$
                        }
                    }
                }
                break;
            }
            case IJavaElementDelta.ADDED: {
                if (!Util.isApiProject(proj)) {
                    if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                        System.out.println(
                                "--> skipped processing ADDED delta for project: " + proj.getElementName()); //$NON-NLS-1$
                    }
                    continue;
                }
                if ((flags & IJavaElementDelta.F_MOVED_FROM) != 0) {
                    if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                        System.out.println("--> processing PROJECT RENAME from: [" //$NON-NLS-1$
                                + delta.getMovedFromElement().getJavaProject().getElementName() + "] to: [" //$NON-NLS-1$
                                + proj.getElementName() + "]"); //$NON-NLS-1$
                    }
                    bmanager.disposeWorkspaceBaseline();
                }
                break;
            }
            default:
                break;
            }
            break;
        }
        case IJavaElement.PACKAGE_FRAGMENT_ROOT: {
            IPackageFragmentRoot root = (IPackageFragmentRoot) delta.getElement();
            int flags = delta.getFlags();
            if ((flags & (IJavaElementDelta.F_ARCHIVE_CONTENT_CHANGED | IJavaElementDelta.F_ADDED_TO_CLASSPATH
                    | IJavaElementDelta.F_REMOVED_FROM_CLASSPATH)) != 0) {
                if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                    System.out.println("processed CLASSPATH CHANGED for package fragment root: [" //$NON-NLS-1$
                            + root.getElementName() + "]"); //$NON-NLS-1$
                }
                dmanager.projectClasspathChanged(project);
            }
            if ((flags & IJavaElementDelta.F_CHILDREN) != 0) {
                if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                    System.out.println(
                            "processed CHILDREN for package fragment root: [" + root.getElementName() + "]"); //$NON-NLS-1$ //$NON-NLS-2$
                }
                processJavaElementDeltas(delta.getAffectedChildren(), project);
            }
            break;
        }
        case IJavaElement.PACKAGE_FRAGMENT: {
            IPackageFragment fragment = (IPackageFragment) delta.getElement();
            if (delta.getKind() == IJavaElementDelta.REMOVED) {
                if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                    System.out.println("processed REMOVED delta for package fragment: [" //$NON-NLS-1$
                            + fragment.getElementName() + "]"); //$NON-NLS-1$
                }
                ((ApiBaseline) bmanager.getWorkspaceBaseline()).clearPackage(fragment.getElementName());
            }
            int flags = delta.getFlags();
            if ((flags & IJavaElementDelta.F_CHILDREN) != 0) {
                if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                    System.out.println("processed CHILDREN delta for package fragment: [" //$NON-NLS-1$
                            + fragment.getElementName() + "]"); //$NON-NLS-1$
                }
                processJavaElementDeltas(delta.getAffectedChildren(), project);
            }
            break;
        }
        case IJavaElement.COMPILATION_UNIT: {
            int flags = delta.getFlags();
            switch (delta.getKind()) {
            case IJavaElementDelta.CHANGED: {
                if ((flags & (IJavaElementDelta.F_CONTENT | IJavaElementDelta.F_FINE_GRAINED
                        | IJavaElementDelta.F_PRIMARY_RESOURCE)) != 0) {
                    if (project != null) {
                        if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                            System.out
                                    .println("processed CONTENT / FINE_GRAINED / PRIMARY_RESOURCE delta for: [" //$NON-NLS-1$
                                            + delta.getElement().getElementName() + "]"); //$NON-NLS-1$
                        }
                        dmanager.projectChanged(project);
                        dmanager.flushElementCache(delta.getElement());
                        continue;
                    }
                }
                break;
            }
            case IJavaElementDelta.ADDED:
            case IJavaElementDelta.REMOVED: {
                if (project != null) {
                    if (ApiPlugin.DEBUG_WORKSPACE_DELTA_PROCESSOR) {
                        if (delta.getKind() == IJavaElementDelta.ADDED) {
                            System.out.println(
                                    "processed ADDED delta for: [" + delta.getElement().getElementName() + "]"); //$NON-NLS-1$//$NON-NLS-2$
                        } else {
                            System.out.println("processed REMOVED delta for: [" //$NON-NLS-1$
                                    + delta.getElement().getElementName() + "]"); //$NON-NLS-1$
                        }
                    }
                    dmanager.projectChanged(project);
                    dmanager.flushElementCache(delta.getElement());
                    continue;
                }
                break;
            }
            default:
                break;
            }
            break;
        }
        default:
            break;
        }
    }
}

From source file:org.eclipse.pde.api.tools.ui.internal.JavaElementActionFilter.java

License:Open Source License

/**
 * @see org.eclipse.ui.IActionFilter#testAttribute(Object, String, String)
 *///from  ww w  .j  a  v  a  2  s .  c  o m
@Override
public boolean testAttribute(Object target, String name, String value) {
    if (name.equals("JavaElementActionFilter")) { //$NON-NLS-1$
        if (target instanceof IJavaElement) {
            IJavaElement javaElement = (IJavaElement) target;
            if (value.equals("isEnabled")) { //$NON-NLS-1$
                while (javaElement != null) {
                    switch (javaElement.getElementType()) {
                    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
                        IPackageFragmentRoot root = (IPackageFragmentRoot) javaElement;
                        return !root.isArchive();
                    case IJavaElement.PACKAGE_FRAGMENT:
                    case IJavaElement.COMPILATION_UNIT:
                    case IJavaElement.CLASS_FILE:
                    case IJavaElement.TYPE:
                        javaElement = javaElement.getParent();
                        break;
                    case IJavaElement.ANNOTATION:
                    case IJavaElement.FIELD:
                    case IJavaElement.IMPORT_CONTAINER:
                    case IJavaElement.IMPORT_DECLARATION:
                    case IJavaElement.INITIALIZER:
                    case IJavaElement.JAVA_MODEL:
                    case IJavaElement.LOCAL_VARIABLE:
                    case IJavaElement.METHOD:
                    case IJavaElement.PACKAGE_DECLARATION:
                    case IJavaElement.TYPE_PARAMETER:
                        return false;
                    case IJavaElement.JAVA_PROJECT:
                        return true;
                    default:
                        break;
                    }
                }
                return true;
            }
        }
    }
    return false;
}

From source file:org.eclipse.pde.api.tools.ui.internal.wizards.CompareOperation.java

License:Open Source License

/**
 * @param structuredSelection/*w w w.j  a  v a 2  s .co m*/
 * @param monitor
 * @return the scope
 */
public static ApiScope walkStructureSelection(IStructuredSelection structuredSelection,
        IProgressMonitor monitor) {
    Object[] selected = structuredSelection.toArray();
    ApiScope scope = new ApiScope();
    IApiBaseline workspaceBaseline = ApiBaselineManager.getManager().getWorkspaceBaseline();
    if (workspaceBaseline == null) {
        return scope;
    }
    Arrays.sort(selected, new Comparator<Object>() {
        @Override
        public int compare(Object o1, Object o2) {
            if (o1 instanceof IJavaElement && o2 instanceof IJavaElement) {
                IJavaElement element = (IJavaElement) o1;
                IJavaElement element2 = (IJavaElement) o2;
                return element.getElementType() - element2.getElementType();
            }
            return 0;
        }
    });
    int length = selected.length;
    for (int i = 0; i < length; i++) {
        Object currentSelection = selected[i];
        if (currentSelection instanceof IJavaElement) {
            IJavaElement element = (IJavaElement) currentSelection;
            IJavaProject javaProject = element.getJavaProject();
            try {
                switch (element.getElementType()) {
                case IJavaElement.COMPILATION_UNIT: {
                    ICompilationUnit compilationUnit = (ICompilationUnit) element;
                    IApiComponent apiComponent = workspaceBaseline
                            .getApiComponent(javaProject.getElementName());
                    if (apiComponent != null) {
                        addElementFor(compilationUnit, apiComponent, scope);
                    }
                    break;
                }
                case IJavaElement.PACKAGE_FRAGMENT: {
                    IPackageFragment fragment = (IPackageFragment) element;
                    IApiComponent apiComponent = workspaceBaseline
                            .getApiComponent(javaProject.getElementName());
                    IPackageFragmentRoot packageFragmentRoot = (IPackageFragmentRoot) fragment
                            .getAncestor(IJavaElement.PACKAGE_FRAGMENT_ROOT);
                    boolean isArchive = false;
                    if (packageFragmentRoot != null) {
                        isArchive = packageFragmentRoot.isArchive();
                    }
                    if (apiComponent != null) {
                        addElementFor(fragment, isArchive, apiComponent, scope);
                    }
                    break;
                }
                case IJavaElement.PACKAGE_FRAGMENT_ROOT: {
                    IPackageFragmentRoot fragmentRoot = (IPackageFragmentRoot) element;
                    IApiComponent apiComponent = workspaceBaseline
                            .getApiComponent(javaProject.getElementName());
                    if (apiComponent != null) {
                        addElementFor(fragmentRoot, apiComponent, scope);
                    }
                    break;
                }
                case IJavaElement.JAVA_PROJECT:
                    IApiComponent apiComponent = workspaceBaseline
                            .getApiComponent(javaProject.getElementName());
                    if (apiComponent != null) {
                        scope.addElement(apiComponent);
                    }
                    break;
                default:
                    break;
                }
            } catch (JavaModelException e) {
                ApiPlugin.log(e);
            } catch (CoreException e) {
                ApiPlugin.log(e);
            }
        }
    }
    return scope;
}

From source file:org.eclipse.pde.internal.core.JavaElementChangeListener.java

License:Open Source License

private void updateTable(IJavaElement element) {
    IJavaProject jProject = (IJavaProject) element.getAncestor(IJavaElement.JAVA_PROJECT);
    if (jProject != null) {
        IProject project = jProject.getProject();
        IPluginModelBase model = PluginRegistry.findModel(project);
        if (model != null) {
            String id = model.getPluginBase().getId();
            if (id != null)
                fTable.put(id, Long.toString(System.currentTimeMillis()));
        }//from  ww  w  . ja va2 s  .c  om
    }
}

From source file:org.eclipse.pde.internal.ui.refactoring.ManifestPackageMoveParticipant.java

License:Open Source License

protected boolean initialize(Object element) {
    if (element instanceof IPackageFragment) {
        IPackageFragment fragment = (IPackageFragment) element;
        IJavaProject javaProject = (IJavaProject) fragment.getAncestor(IJavaElement.JAVA_PROJECT);
        IProject project = javaProject.getProject();
        if (PDEProject.getManifest(project).exists()) {
            fProject = javaProject.getProject();
            fElements = new HashMap<Object, String>();
            fElements.put(fragment, getNewName(getArguments().getDestination(), element));
            return true;
        }/*from  www.  ja  va2s  .co  m*/
    }
    return false;
}