Lines 16-21
Link Here
|
16 |
import org.eclipse.core.resources.IResource; |
16 |
import org.eclipse.core.resources.IResource; |
17 |
import org.eclipse.core.runtime.IPath; |
17 |
import org.eclipse.core.runtime.IPath; |
18 |
import org.eclipse.core.runtime.IProgressMonitor; |
18 |
import org.eclipse.core.runtime.IProgressMonitor; |
|
|
19 |
import org.eclipse.core.runtime.NullProgressMonitor; |
19 |
import org.eclipse.core.runtime.SubProgressMonitor; |
20 |
import org.eclipse.core.runtime.SubProgressMonitor; |
20 |
import org.eclipse.jdt.core.*; |
21 |
import org.eclipse.jdt.core.*; |
21 |
import org.eclipse.jdt.core.compiler.CharOperation; |
22 |
import org.eclipse.jdt.core.compiler.CharOperation; |
Lines 444-450
Link Here
|
444 |
final Map binariesFromIndexMatches, |
445 |
final Map binariesFromIndexMatches, |
445 |
final IPathRequestor pathRequestor, |
446 |
final IPathRequestor pathRequestor, |
446 |
int waitingPolicy, // WaitUntilReadyToSearch | ForceImmediateSearch | CancelIfNotReadyToSearch |
447 |
int waitingPolicy, // WaitUntilReadyToSearch | ForceImmediateSearch | CancelIfNotReadyToSearch |
447 |
IProgressMonitor progressMonitor) { |
448 |
final IProgressMonitor progressMonitor) { |
448 |
|
449 |
|
449 |
/* embed constructs inside arrays so as to pass them to (inner) collector */ |
450 |
/* embed constructs inside arrays so as to pass them to (inner) collector */ |
450 |
final Queue queue = new Queue(); |
451 |
final Queue queue = new Queue(); |
Lines 519-525
Link Here
|
519 |
|
520 |
|
520 |
// search all index references to a given supertype |
521 |
// search all index references to a given supertype |
521 |
pattern.superSimpleName = currentTypeName; |
522 |
pattern.superSimpleName = currentTypeName; |
522 |
indexManager.performConcurrentJob(job, waitingPolicy, null); // no sub progress monitor since its too costly for deep hierarchies |
523 |
indexManager.performConcurrentJob(job, waitingPolicy, progressMonitor == null ? null : new NullProgressMonitor() { |
|
|
524 |
// don't report progress since this is too costly for deep hierarchies |
525 |
// just handle isCanceled() (seehttps://bugs.eclipse.org/bugs/show_bug.cgi?id=179511) |
526 |
public void setCanceled(boolean value) { |
527 |
progressMonitor.setCanceled(value); |
528 |
} |
529 |
public boolean isCanceled() { |
530 |
return progressMonitor.isCanceled(); |
531 |
} |
532 |
}); |
523 |
if (progressMonitor != null && ++ticks <= MAXTICKS) |
533 |
if (progressMonitor != null && ++ticks <= MAXTICKS) |
524 |
progressMonitor.worked(1); |
534 |
progressMonitor.worked(1); |
525 |
|
535 |
|