Skip to content

Commit 368048a

Browse files
committed
ScriptHeaderService: move default method impls to iface
1 parent 9bab076 commit 368048a

File tree

2 files changed

+24
-29
lines changed

2 files changed

+24
-29
lines changed

src/main/java/org/scijava/script/DefaultScriptHeaderService.java

Lines changed: 1 addition & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -45,32 +45,5 @@ public class DefaultScriptHeaderService extends
4545
AbstractHandlerService<ScriptLanguage, ScriptHeader> implements
4646
ScriptHeaderService
4747
{
48-
49-
// -- ScriptHeaderService methods --
50-
51-
@Override
52-
public String getHeader(final ScriptLanguage language) {
53-
StringBuilder header = new StringBuilder();
54-
for (final ScriptHeader scriptHeader : getInstances()) {
55-
if (scriptHeader.supports(language)) {
56-
header.append(scriptHeader.getHeader());
57-
header.append("\n");
58-
}
59-
}
60-
61-
return header.toString();
62-
}
63-
64-
// -- HandlerService methods --
65-
66-
@Override
67-
public Class<ScriptHeader> getPluginType() {
68-
return ScriptHeader.class;
69-
}
70-
71-
@Override
72-
public Class<ScriptLanguage> getType() {
73-
return ScriptLanguage.class;
74-
}
75-
48+
// NB: No implementation needed.
7649
}

src/main/java/org/scijava/script/ScriptHeaderService.java

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,5 +58,27 @@ public interface ScriptHeaderService extends
5858
* @param language - Language to look up
5959
* @return The combined header text to insert at the top of a script.
6060
*/
61-
String getHeader(final ScriptLanguage language);
61+
default String getHeader(final ScriptLanguage language) {
62+
StringBuilder header = new StringBuilder();
63+
for (final ScriptHeader scriptHeader : getInstances()) {
64+
if (scriptHeader.supports(language)) {
65+
header.append(scriptHeader.getHeader());
66+
header.append("\n");
67+
}
68+
}
69+
70+
return header.toString();
71+
}
72+
73+
// -- HandlerService methods --
74+
75+
@Override
76+
default Class<ScriptHeader> getPluginType() {
77+
return ScriptHeader.class;
78+
}
79+
80+
@Override
81+
default Class<ScriptLanguage> getType() {
82+
return ScriptLanguage.class;
83+
}
6284
}

0 commit comments

Comments
 (0)