Skip to content

Commit 1c1dfd6

Browse files
committed
Merge branch 'fix-cancelation'
Closes #239
2 parents fc4829d + 27abde6 commit 1c1dfd6

File tree

10 files changed

+24
-218
lines changed

10 files changed

+24
-218
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
</parent>
1111

1212
<artifactId>scijava-common</artifactId>
13-
<version>2.55.2-SNAPSHOT</version>
13+
<version>2.56.0-SNAPSHOT</version>
1414

1515
<name>SciJava Common</name>
1616
<description>SciJava Common is a shared library for SciJava software. It provides a plugin framework, with an extensible mechanism for service discovery, backed by its own annotation processor, so that plugins can be loaded dynamically. It is used by both ImageJ and SCIFIO.</description>

src/main/java/org/scijava/module/DefaultModuleService.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,11 @@
5353
import org.scijava.module.process.ModulePostprocessor;
5454
import org.scijava.module.process.ModulePreprocessor;
5555
import org.scijava.module.process.PostprocessorPlugin;
56-
import org.scijava.module.process.PostprocessorService;
5756
import org.scijava.module.process.PreprocessorPlugin;
58-
import org.scijava.module.process.PreprocessorService;
5957
import org.scijava.object.ObjectService;
6058
import org.scijava.plugin.Parameter;
6159
import org.scijava.plugin.Plugin;
60+
import org.scijava.plugin.PluginService;
6261
import org.scijava.prefs.PrefService;
6362
import org.scijava.service.AbstractService;
6463
import org.scijava.service.Service;
@@ -85,10 +84,7 @@ public class DefaultModuleService extends AbstractService implements
8584
private EventService eventService;
8685

8786
@Parameter
88-
private PreprocessorService preprocessorService;
89-
90-
@Parameter
91-
private PostprocessorService postprocessorService;
87+
private PluginService pluginService;
9288

9389
@Parameter
9490
private ObjectService objectService;
@@ -368,13 +364,13 @@ public void initialize() {
368364
/** Creates the preprocessor chain. */
369365
private List<? extends PreprocessorPlugin> pre(final boolean process) {
370366
if (!process) return null;
371-
return preprocessorService.getInstances();
367+
return pluginService.createInstancesOfType(PreprocessorPlugin.class);
372368
}
373369

374370
/** Creates the postprocessor chain. */
375371
private List<? extends PostprocessorPlugin> post(final boolean process) {
376372
if (!process) return null;
377-
return postprocessorService.getInstances();
373+
return pluginService.createInstancesOfType(PostprocessorPlugin.class);
378374
}
379375

380376
/**

src/main/java/org/scijava/module/process/DefaultPostprocessorService.java

Lines changed: 0 additions & 55 deletions
This file was deleted.

src/main/java/org/scijava/module/process/DefaultPreprocessorService.java

Lines changed: 0 additions & 55 deletions
This file was deleted.

src/main/java/org/scijava/module/process/PostprocessorPlugin.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333

3434
import org.scijava.Contextual;
3535
import org.scijava.plugin.Plugin;
36-
import org.scijava.plugin.SingletonPlugin;
36+
import org.scijava.plugin.SciJavaPlugin;
3737

3838
/**
3939
* A postprocessor plugin defines a step that occurs immediately following the
@@ -51,7 +51,7 @@
5151
* @author Curtis Rueden
5252
* @see ModulePostprocessor
5353
*/
54-
public interface PostprocessorPlugin extends SingletonPlugin, Contextual,
54+
public interface PostprocessorPlugin extends SciJavaPlugin, Contextual,
5555
ModulePostprocessor
5656
{
5757
// PostprocessorPlugin is a module postprocessor,

src/main/java/org/scijava/module/process/PostprocessorService.java

Lines changed: 0 additions & 46 deletions
This file was deleted.

src/main/java/org/scijava/module/process/PreprocessorPlugin.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333

3434
import org.scijava.Contextual;
3535
import org.scijava.plugin.Plugin;
36-
import org.scijava.plugin.SingletonPlugin;
36+
import org.scijava.plugin.SciJavaPlugin;
3737

3838
/**
3939
* A preprocessor plugin defines a step that occurs just prior to the actual
@@ -51,7 +51,7 @@
5151
* @author Curtis Rueden
5252
* @see ModulePreprocessor
5353
*/
54-
public interface PreprocessorPlugin extends SingletonPlugin, Contextual,
54+
public interface PreprocessorPlugin extends SciJavaPlugin, Contextual,
5555
ModulePreprocessor
5656
{
5757
// PreprocessorPlugin is a module preprocessor,

src/main/java/org/scijava/module/process/PreprocessorService.java

Lines changed: 0 additions & 46 deletions
This file was deleted.

src/test/java/org/scijava/ContextCreationTest.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,6 @@ public void testFull() {
100100
org.scijava.main.DefaultMainService.class,
101101
org.scijava.menu.DefaultMenuService.class,
102102
org.scijava.module.DefaultModuleService.class,
103-
org.scijava.module.process.DefaultPostprocessorService.class,
104-
org.scijava.module.process.DefaultPreprocessorService.class,
105103
org.scijava.object.DefaultObjectService.class,
106104
org.scijava.options.DefaultOptionsService.class,
107105
org.scijava.parse.DefaultParseService.class,

src/test/java/org/scijava/command/CommandModuleTest.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,12 @@ public void testCancelable() throws InterruptedException, ExecutionException {
5858
assertTrue(c.isCanceled());
5959
assertEquals("Stop! Collaborate and listen!", ice.getCancelReason());
6060
assertEquals("Stop! Collaborate and listen!", c.getCancelReason());
61+
62+
final CommandModule crow = commandService.run(CrowCommand.class, true).get();
63+
assertFalse(crow.isCanceled());
6164
}
62-
65+
66+
6367
@Test
6468
public void testNotCancelable() throws InterruptedException,
6569
ExecutionException
@@ -98,6 +102,16 @@ public void run() {
98102
}
99103
}
100104

105+
/** A {@link Cancelable} command which is not auto-canceled. */
106+
@Plugin(type = Command.class)
107+
public static class CrowCommand extends ContextCommand {
108+
109+
@Override
110+
public void run() {
111+
// everything's good
112+
}
113+
}
114+
101115
@Plugin(type = PreprocessorPlugin.class)
102116
public static class CommandCanceler extends AbstractPreprocessorPlugin {
103117

0 commit comments

Comments
 (0)