Skip to content

Commit c3d560a

Browse files
committed
Make RichPlugin implement more useful interfaces
Now, all rich plugins are Identifiable, Locatable and Versioned.
1 parent 3ff7c91 commit c3d560a

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

src/main/java/org/scijava/plugin/RichPlugin.java

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,10 @@
3232
package org.scijava.plugin;
3333

3434
import org.scijava.Contextual;
35+
import org.scijava.Identifiable;
36+
import org.scijava.Locatable;
3537
import org.scijava.Prioritized;
38+
import org.scijava.Versioned;
3639

3740
/**
3841
* Base interface for {@link Contextual}, {@link Prioritized} plugins that
@@ -42,8 +45,15 @@
4245
*
4346
* @author Curtis Rueden
4447
*/
45-
public interface RichPlugin extends Contextual, Prioritized, HasPluginInfo,
46-
SciJavaPlugin
48+
public interface RichPlugin extends SciJavaPlugin, Contextual, Prioritized,
49+
HasPluginInfo, Identifiable, Locatable, Versioned
4750
{
48-
// NB: Marker interface.
51+
52+
// -- Identifiable methods --
53+
54+
@Override
55+
default String getIdentifier() {
56+
return "plugin:" + getClass().getName();
57+
}
58+
4959
}

0 commit comments

Comments
 (0)