Example usage for org.eclipse.jdt.core.dom IPackageBinding getJavaElement

List of usage examples for org.eclipse.jdt.core.dom IPackageBinding getJavaElement

Introduction

In this page you can find the example usage for org.eclipse.jdt.core.dom IPackageBinding getJavaElement.

Prototype

public IJavaElement getJavaElement();

Source Link

Document

Returns the Java element that corresponds to this binding.

Usage

From source file:org.autorefactor.refactoring.rules.DeadCodeEliminationRefactoring.java

License:Open Source License

/** This method is extremely expensive. */
@OnEclipseVersionUpgrade("Replace monitor.newChild(1) by monitor.split(1)")
private boolean isMethodUsedInItsPackage(IMethodBinding methodBinding, MethodDeclaration node) {
    final IPackageBinding methodPackage = methodBinding.getDeclaringClass().getPackage();

    final AtomicBoolean methodIsUsedInPackage = new AtomicBoolean(false);
    final SearchRequestor requestor = new SearchRequestor() {
        @Override/*www  .j a v a 2 s  . c  om*/
        public void acceptSearchMatch(SearchMatch match) {
            methodIsUsedInPackage.set(true);
        }
    };

    final SubMonitor subMonitor = SubMonitor.convert(ctx.getProgressMonitor(), 1);
    final SubMonitor childMonitor = subMonitor.newChild(1);
    try {
        final SearchEngine searchEngine = new SearchEngine();
        searchEngine.search(createPattern(methodBinding.getJavaElement(), REFERENCES, R_EXACT_MATCH),
                new SearchParticipant[] { SearchEngine.getDefaultSearchParticipant() },
                SearchEngine.createJavaSearchScope(new IJavaElement[] { methodPackage.getJavaElement() }),
                requestor, childMonitor);
        return methodIsUsedInPackage.get();
    } catch (CoreException e) {
        throw new UnhandledException(node, e);
    } finally {
        childMonitor.done();
    }
}

From source file:org.autorefactor.refactoring.rules.SuperCallRatherThanUselessOverridingRefactoring.java

License:Open Source License

/** This method is extremely expensive. */
private boolean isMethodUsedInItsPackage(final IMethodBinding methodBinding, MethodDeclaration node) {
    final IPackageBinding methodPackage = methodBinding.getDeclaringClass().getPackage();

    final AtomicBoolean methodIsUsedInPackage = new AtomicBoolean(false);
    final SearchRequestor requestor = new SearchRequestor() {
        @Override//  ww w  . j a v a 2  s .  c o m
        public void acceptSearchMatch(SearchMatch match) {
            methodIsUsedInPackage.set(true);
        }
    };

    try {
        final SearchEngine searchEngine = new SearchEngine();
        searchEngine.search(createPattern(methodBinding.getJavaElement(), REFERENCES, R_EXACT_MATCH),
                new SearchParticipant[] { SearchEngine.getDefaultSearchParticipant() },
                SearchEngine.createJavaSearchScope(new IJavaElement[] { methodPackage.getJavaElement() }),
                requestor, ctx.getProgressMonitor());
        return methodIsUsedInPackage.get();
    } catch (CoreException e) {
        throw new UnhandledException(node, e);
    }
}