diff --git a/java/google/registry/mapreduce/MapreduceRunner.java b/java/google/registry/mapreduce/MapreduceRunner.java index d5a80cdc4..06ab73816 100644 --- a/java/google/registry/mapreduce/MapreduceRunner.java +++ b/java/google/registry/mapreduce/MapreduceRunner.java @@ -186,8 +186,8 @@ public class MapreduceRunner { createMapreduceJob( Mapper mapper, Reducer reducer, - Output output, - Iterable> inputs) { + Iterable> inputs, + Output output) { checkCommonRequiredFields(inputs, mapper); checkArgumentNotNull(reducer, "reducer"); return new MapReduceJob<>( @@ -229,8 +229,30 @@ public class MapreduceRunner { Mapper mapper, Reducer reducer, Iterable> inputs) { - return runAsPipeline( - createMapreduceJob(mapper, reducer, new NoOutput(), inputs)); + return runMapreduce(mapper, reducer, inputs, new NoOutput()); + } + + /** + * Kick off a mapreduce job with specified Output handler. + * + * @see #createMapreduceJob for creating and running a mapreduce as part of a pipeline + * + * @param mapper instance of a mapper class + * @param reducer instance of a reducer class + * @param inputs input sources for the mapper + * @param mapper input type + * @param emitted key type + * @param emitted value type + * @param emitted output type + * @param return value of output + * @return the job id + */ + public final String runMapreduce( + Mapper mapper, + Reducer reducer, + Iterable> inputs, + Output output) { + return runAsPipeline(createMapreduceJob(mapper, reducer, inputs, output)); } private void checkCommonRequiredFields(Iterable inputs, Mapper mapper) {