From 6ae3c375a9e8a97ff96649b3637e4a011d849990 Mon Sep 17 00:00:00 2001 From: Matei Zaharia Date: Sun, 12 Aug 2012 23:10:19 +0200 Subject: Renamed apply() to call() in Java API and allowed it to throw Exceptions --- examples/src/main/java/spark/examples/JavaHdfsLR.java | 9 +++------ examples/src/main/java/spark/examples/JavaTC.java | 16 +++++++++------- .../src/main/java/spark/examples/JavaWordCount.java | 18 ++++++++++-------- 3 files changed, 22 insertions(+), 21 deletions(-) (limited to 'examples/src/main/java') diff --git a/examples/src/main/java/spark/examples/JavaHdfsLR.java b/examples/src/main/java/spark/examples/JavaHdfsLR.java index c7a6b4405a..71fc13fbce 100644 --- a/examples/src/main/java/spark/examples/JavaHdfsLR.java +++ b/examples/src/main/java/spark/examples/JavaHdfsLR.java @@ -26,8 +26,7 @@ public class JavaHdfsLR { } static class ParsePoint extends Function { - - public DataPoint apply(String line) { + public DataPoint call(String line) { StringTokenizer tok = new StringTokenizer(line, " "); double y = Double.parseDouble(tok.nextToken()); double[] x = new double[D]; @@ -41,8 +40,7 @@ public class JavaHdfsLR { } static class VectorSum extends Function2 { - - public double[] apply(double[] a, double[] b) { + public double[] call(double[] a, double[] b) { double[] result = new double[D]; for (int j = 0; j < D; j++) { result[j] = a[j] + b[j]; @@ -52,14 +50,13 @@ public class JavaHdfsLR { } static class ComputeGradient extends Function { - double[] weights; public ComputeGradient(double[] weights) { this.weights = weights; } - public double[] apply(DataPoint p) { + public double[] call(DataPoint p) { double[] gradient = new double[D]; for (int i = 0; i < D; i++) { double dot = dot(weights, p.x); diff --git a/examples/src/main/java/spark/examples/JavaTC.java b/examples/src/main/java/spark/examples/JavaTC.java index e6ca69ff97..25a465ec8e 100644 --- a/examples/src/main/java/spark/examples/JavaTC.java +++ b/examples/src/main/java/spark/examples/JavaTC.java @@ -11,6 +11,9 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +/** + * Transitive closure on a graph, implemented in Java. + */ public class JavaTC { static int numEdges = 200; @@ -32,7 +35,7 @@ public class JavaTC { Integer, Integer> { static ProjectFn INSTANCE = new ProjectFn(); - public Tuple2 apply(Tuple2> triple) { + public Tuple2 call(Tuple2> triple) { return new Tuple2(triple._2()._2(), triple._2()._1()); } } @@ -53,12 +56,11 @@ public class JavaTC { // the graph to obtain the path (x, z). // Because join() joins on keys, the edges are stored in reversed order. - JavaPairRDD edges = tc.map(new PairFunction, - Integer, Integer>() { - @Override - public Tuple2 apply(Tuple2 e) { - return new Tuple2(e._2(), e._1()); - } + JavaPairRDD edges = tc.map( + new PairFunction, Integer, Integer>() { + public Tuple2 call(Tuple2 e) { + return new Tuple2(e._2(), e._1()); + } }); long oldCount = 0; diff --git a/examples/src/main/java/spark/examples/JavaWordCount.java b/examples/src/main/java/spark/examples/JavaWordCount.java index fb2feec09d..a44cf8a120 100644 --- a/examples/src/main/java/spark/examples/JavaWordCount.java +++ b/examples/src/main/java/spark/examples/JavaWordCount.java @@ -12,9 +12,7 @@ import java.util.Arrays; import java.util.List; public class JavaWordCount { - public static void main(String[] args) throws Exception { - if (args.length < 2) { System.err.println("Usage: JavaWordCount "); System.exit(1); @@ -23,16 +21,20 @@ public class JavaWordCount { JavaSparkContext ctx = new JavaSparkContext(args[0], "JavaWordCount"); JavaRDD lines = ctx.textFile(args[1], 1); - JavaPairRDD counts = lines.flatMap(new FlatMapFunction() { - public Iterable apply(String s) { + JavaRDD words = lines.flatMap(new FlatMapFunction() { + public Iterable call(String s) { return Arrays.asList(s.split(" ")); } - }).map(new PairFunction() { - public Tuple2 apply(String s) { + }); + + JavaPairRDD ones = words.map(new PairFunction() { + public Tuple2 call(String s) { return new Tuple2(s, 1); } - }).reduceByKey(new Function2() { - public Integer apply(Integer i1, Integer i2) { + }); + + JavaPairRDD counts = ones.reduceByKey(new Function2() { + public Integer call(Integer i1, Integer i2) { return i1 + i2; } }); -- cgit v1.2.3