File tree Expand file tree Collapse file tree 1 file changed +11
-1
lines changed
src/main/java/org/scijava/search Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Original file line number Diff line number Diff line change 22package org .scijava .search ;
33
44import java .util .ArrayList ;
5+ import java .util .Collections ;
56import java .util .List ;
7+ import java .util .Optional ;
68
79import org .scijava .Context ;
810import org .scijava .log .LogService ;
@@ -88,7 +90,15 @@ public void terminate() {
8890 // -- Helper methods --
8991
9092 private List <Searcher > searchers () {
91- return pluginService .createInstancesOfType (Searcher .class );
93+ final List <Searcher > searchers = //
94+ pluginService .createInstancesOfType (Searcher .class );
95+
96+ // Check for a searcher that wants exclusive rights.
97+ final Optional <Searcher > exclusive = searchers .stream ().filter (
98+ searcher -> searcher .exclusive (query )).findFirst ();
99+
100+ return exclusive .isPresent () ? //
101+ Collections .singletonList (exclusive .get ()) : searchers ;
92102 }
93103
94104 private void cancelCurrentSearches () {
You can’t perform that action at this time.
0 commit comments