Skip to content

Commit f4c9e35

Browse files
committed
Add @Out(Void.class) annotations to writer implementations
The IDE uses the `@In` and `@Out` annotations to validate workflows. It issues warnings when no annotation is found. Since the writers don't actually output anything as part of the workflow, `Void.class` might make sense as their output type.
1 parent 31dd0ab commit f4c9e35

File tree

3 files changed

+10
-0
lines changed

3 files changed

+10
-0
lines changed

src/main/java/org/culturegraph/mf/stream/sink/ObjectWriter.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.culturegraph.mf.framework.ObjectReceiver;
2424
import org.culturegraph.mf.framework.annotations.Description;
2525
import org.culturegraph.mf.framework.annotations.In;
26+
import org.culturegraph.mf.framework.annotations.Out;
2627
import org.culturegraph.mf.framework.annotations.ReturnsAvailableArguments;
2728

2829

@@ -36,6 +37,7 @@
3637

3738
@Description("Writes objects to stdout or a file")
3839
@In(Object.class)
40+
@Out(Void.class)
3941
public final class ObjectWriter<T> implements ObjectReceiver<T> {
4042

4143
private static final String STDOUT = "stdout";

src/main/java/org/culturegraph/mf/stream/sink/TripleObjectWriter.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.culturegraph.mf.framework.DefaultObjectReceiver;
2828
import org.culturegraph.mf.framework.annotations.Description;
2929
import org.culturegraph.mf.framework.annotations.In;
30+
import org.culturegraph.mf.framework.annotations.Out;
3031
import org.culturegraph.mf.types.Triple;
3132

3233
/**
@@ -46,6 +47,7 @@
4647
+ "within `baseDir`. THIS MODULE SHOULD NOT BE USED IN ENVIRONMENTS IN WHICH "
4748
+ "THE VALUES OF SUBJECT AND PREDICATE A PROVIDED BY AN UNTRUSTED SOURCE!")
4849
@In(Triple.class)
50+
@Out(Void.class)
4951
public final class TripleObjectWriter extends DefaultObjectReceiver<Triple> {
5052

5153
private final String baseDir;

src/main/java/org/culturegraph/mf/stream/sink/TripleWriter.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,18 @@
2222

2323
import org.culturegraph.mf.exceptions.MetafactureException;
2424
import org.culturegraph.mf.framework.DefaultObjectReceiver;
25+
import org.culturegraph.mf.framework.annotations.Description;
26+
import org.culturegraph.mf.framework.annotations.In;
27+
import org.culturegraph.mf.framework.annotations.Out;
2528
import org.culturegraph.mf.types.Triple;
2629

2730
/**
2831
* @author Christoph Böhme
2932
*
3033
*/
34+
@Description("Writes triples into a file.")
35+
@In(Triple.class)
36+
@Out(Void.class)
3137
public final class TripleWriter extends DefaultObjectReceiver<Triple> {
3238

3339
public static final int BUFFERSIZE = 2048;

0 commit comments

Comments
 (0)