aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorSean Owen <sowen@cloudera.com>2015-08-25 12:33:13 +0100
committerSean Owen <sowen@cloudera.com>2015-08-25 12:33:13 +0100
commit69c9c177160e32a2fbc9b36ecc52156077fca6fc (patch)
tree57345aaf19c3149038bfca5c4ddccf33d41bdd5b /examples
parent7f1e507bf7e82bff323c5dec3c1ee044687c4173 (diff)
downloadspark-69c9c177160e32a2fbc9b36ecc52156077fca6fc.tar.gz
spark-69c9c177160e32a2fbc9b36ecc52156077fca6fc.tar.bz2
spark-69c9c177160e32a2fbc9b36ecc52156077fca6fc.zip
[SPARK-9613] [CORE] Ban use of JavaConversions and migrate all existing uses to JavaConverters
Replace `JavaConversions` implicits with `JavaConverters` Most occurrences I've seen so far are necessary conversions; a few have been avoidable. None are in critical code as far as I see, yet. Author: Sean Owen <sowen@cloudera.com> Closes #8033 from srowen/SPARK-9613.
Diffstat (limited to 'examples')
-rw-r--r--examples/src/main/scala/org/apache/spark/examples/CassandraCQLTest.scala15
-rw-r--r--examples/src/main/scala/org/apache/spark/examples/CassandraTest.scala6
-rw-r--r--examples/src/main/scala/org/apache/spark/examples/DriverSubmissionTest.scala6
-rw-r--r--examples/src/main/scala/org/apache/spark/examples/pythonconverters/AvroConverters.scala16
-rw-r--r--examples/src/main/scala/org/apache/spark/examples/pythonconverters/CassandraConverters.scala14
-rw-r--r--examples/src/main/scala/org/apache/spark/examples/pythonconverters/HBaseConverters.scala5
6 files changed, 27 insertions, 35 deletions
diff --git a/examples/src/main/scala/org/apache/spark/examples/CassandraCQLTest.scala b/examples/src/main/scala/org/apache/spark/examples/CassandraCQLTest.scala
index 36832f51d2..fa07c1e501 100644
--- a/examples/src/main/scala/org/apache/spark/examples/CassandraCQLTest.scala
+++ b/examples/src/main/scala/org/apache/spark/examples/CassandraCQLTest.scala
@@ -19,10 +19,7 @@
package org.apache.spark.examples
import java.nio.ByteBuffer
-
-import scala.collection.JavaConversions._
-import scala.collection.mutable.ListBuffer
-import scala.collection.immutable.Map
+import java.util.Collections
import org.apache.cassandra.hadoop.ConfigHelper
import org.apache.cassandra.hadoop.cql3.CqlPagingInputFormat
@@ -32,7 +29,6 @@ import org.apache.cassandra.utils.ByteBufferUtil
import org.apache.hadoop.mapreduce.Job
import org.apache.spark.{SparkConf, SparkContext}
-import org.apache.spark.SparkContext._
/*
@@ -121,12 +117,9 @@ object CassandraCQLTest {
val casoutputCF = aggregatedRDD.map {
case (productId, saleCount) => {
- val outColFamKey = Map("prod_id" -> ByteBufferUtil.bytes(productId))
- val outKey: java.util.Map[String, ByteBuffer] = outColFamKey
- var outColFamVal = new ListBuffer[ByteBuffer]
- outColFamVal += ByteBufferUtil.bytes(saleCount)
- val outVal: java.util.List[ByteBuffer] = outColFamVal
- (outKey, outVal)
+ val outKey = Collections.singletonMap("prod_id", ByteBufferUtil.bytes(productId))
+ val outVal = Collections.singletonList(ByteBufferUtil.bytes(saleCount))
+ (outKey, outVal)
}
}
diff --git a/examples/src/main/scala/org/apache/spark/examples/CassandraTest.scala b/examples/src/main/scala/org/apache/spark/examples/CassandraTest.scala
index 96ef3e198e..2e56d24c60 100644
--- a/examples/src/main/scala/org/apache/spark/examples/CassandraTest.scala
+++ b/examples/src/main/scala/org/apache/spark/examples/CassandraTest.scala
@@ -19,10 +19,9 @@
package org.apache.spark.examples
import java.nio.ByteBuffer
+import java.util.Arrays
import java.util.SortedMap
-import scala.collection.JavaConversions._
-
import org.apache.cassandra.db.IColumn
import org.apache.cassandra.hadoop.ColumnFamilyOutputFormat
import org.apache.cassandra.hadoop.ConfigHelper
@@ -32,7 +31,6 @@ import org.apache.cassandra.utils.ByteBufferUtil
import org.apache.hadoop.mapreduce.Job
import org.apache.spark.{SparkConf, SparkContext}
-import org.apache.spark.SparkContext._
/*
* This example demonstrates using Spark with Cassandra with the New Hadoop API and Cassandra
@@ -118,7 +116,7 @@ object CassandraTest {
val outputkey = ByteBufferUtil.bytes(word + "-COUNT-" + System.currentTimeMillis)
- val mutations: java.util.List[Mutation] = new Mutation() :: new Mutation() :: Nil
+ val mutations = Arrays.asList(new Mutation(), new Mutation())
mutations.get(0).setColumn_or_supercolumn(new ColumnOrSuperColumn())
mutations.get(0).column_or_supercolumn.setColumn(colWord)
mutations.get(1).setColumn_or_supercolumn(new ColumnOrSuperColumn())
diff --git a/examples/src/main/scala/org/apache/spark/examples/DriverSubmissionTest.scala b/examples/src/main/scala/org/apache/spark/examples/DriverSubmissionTest.scala
index c42df2b884..bec61f3cd4 100644
--- a/examples/src/main/scala/org/apache/spark/examples/DriverSubmissionTest.scala
+++ b/examples/src/main/scala/org/apache/spark/examples/DriverSubmissionTest.scala
@@ -18,7 +18,7 @@
// scalastyle:off println
package org.apache.spark.examples
-import scala.collection.JavaConversions._
+import scala.collection.JavaConverters._
import org.apache.spark.util.Utils
@@ -36,10 +36,10 @@ object DriverSubmissionTest {
val properties = Utils.getSystemProperties
println("Environment variables containing SPARK_TEST:")
- env.filter{case (k, v) => k.contains("SPARK_TEST")}.foreach(println)
+ env.asScala.filter { case (k, _) => k.contains("SPARK_TEST")}.foreach(println)
println("System properties containing spark.test:")
- properties.filter{case (k, v) => k.toString.contains("spark.test")}.foreach(println)
+ properties.filter { case (k, _) => k.toString.contains("spark.test") }.foreach(println)
for (i <- 1 until numSecondsToSleep) {
println(s"Alive for $i out of $numSecondsToSleep seconds")
diff --git a/examples/src/main/scala/org/apache/spark/examples/pythonconverters/AvroConverters.scala b/examples/src/main/scala/org/apache/spark/examples/pythonconverters/AvroConverters.scala
index 3ebb112fc0..805184e740 100644
--- a/examples/src/main/scala/org/apache/spark/examples/pythonconverters/AvroConverters.scala
+++ b/examples/src/main/scala/org/apache/spark/examples/pythonconverters/AvroConverters.scala
@@ -19,7 +19,7 @@ package org.apache.spark.examples.pythonconverters
import java.util.{Collection => JCollection, Map => JMap}
-import scala.collection.JavaConversions._
+import scala.collection.JavaConverters._
import org.apache.avro.generic.{GenericFixed, IndexedRecord}
import org.apache.avro.mapred.AvroWrapper
@@ -58,7 +58,7 @@ object AvroConversionUtil extends Serializable {
val map = new java.util.HashMap[String, Any]
obj match {
case record: IndexedRecord =>
- record.getSchema.getFields.zipWithIndex.foreach { case (f, i) =>
+ record.getSchema.getFields.asScala.zipWithIndex.foreach { case (f, i) =>
map.put(f.name, fromAvro(record.get(i), f.schema))
}
case other => throw new SparkException(
@@ -68,9 +68,9 @@ object AvroConversionUtil extends Serializable {
}
def unpackMap(obj: Any, schema: Schema): JMap[String, Any] = {
- obj.asInstanceOf[JMap[_, _]].map { case (key, value) =>
+ obj.asInstanceOf[JMap[_, _]].asScala.map { case (key, value) =>
(key.toString, fromAvro(value, schema.getValueType))
- }
+ }.asJava
}
def unpackFixed(obj: Any, schema: Schema): Array[Byte] = {
@@ -91,17 +91,17 @@ object AvroConversionUtil extends Serializable {
def unpackArray(obj: Any, schema: Schema): JCollection[Any] = obj match {
case c: JCollection[_] =>
- c.map(fromAvro(_, schema.getElementType))
+ c.asScala.map(fromAvro(_, schema.getElementType)).toSeq.asJava
case arr: Array[_] if arr.getClass.getComponentType.isPrimitive =>
- arr.toSeq
+ arr.toSeq.asJava.asInstanceOf[JCollection[Any]]
case arr: Array[_] =>
- arr.map(fromAvro(_, schema.getElementType)).toSeq
+ arr.map(fromAvro(_, schema.getElementType)).toSeq.asJava
case other => throw new SparkException(
s"Unknown ARRAY type ${other.getClass.getName}")
}
def unpackUnion(obj: Any, schema: Schema): Any = {
- schema.getTypes.toList match {
+ schema.getTypes.asScala.toList match {
case List(s) => fromAvro(obj, s)
case List(n, s) if n.getType == NULL => fromAvro(obj, s)
case List(s, n) if n.getType == NULL => fromAvro(obj, s)
diff --git a/examples/src/main/scala/org/apache/spark/examples/pythonconverters/CassandraConverters.scala b/examples/src/main/scala/org/apache/spark/examples/pythonconverters/CassandraConverters.scala
index 83feb5703b..00ce47af48 100644
--- a/examples/src/main/scala/org/apache/spark/examples/pythonconverters/CassandraConverters.scala
+++ b/examples/src/main/scala/org/apache/spark/examples/pythonconverters/CassandraConverters.scala
@@ -17,11 +17,13 @@
package org.apache.spark.examples.pythonconverters
-import org.apache.spark.api.python.Converter
import java.nio.ByteBuffer
+
+import scala.collection.JavaConverters._
+
import org.apache.cassandra.utils.ByteBufferUtil
-import collection.JavaConversions._
+import org.apache.spark.api.python.Converter
/**
* Implementation of [[org.apache.spark.api.python.Converter]] that converts Cassandra
@@ -30,7 +32,7 @@ import collection.JavaConversions._
class CassandraCQLKeyConverter extends Converter[Any, java.util.Map[String, Int]] {
override def convert(obj: Any): java.util.Map[String, Int] = {
val result = obj.asInstanceOf[java.util.Map[String, ByteBuffer]]
- mapAsJavaMap(result.mapValues(bb => ByteBufferUtil.toInt(bb)))
+ result.asScala.mapValues(ByteBufferUtil.toInt).asJava
}
}
@@ -41,7 +43,7 @@ class CassandraCQLKeyConverter extends Converter[Any, java.util.Map[String, Int]
class CassandraCQLValueConverter extends Converter[Any, java.util.Map[String, String]] {
override def convert(obj: Any): java.util.Map[String, String] = {
val result = obj.asInstanceOf[java.util.Map[String, ByteBuffer]]
- mapAsJavaMap(result.mapValues(bb => ByteBufferUtil.string(bb)))
+ result.asScala.mapValues(ByteBufferUtil.string).asJava
}
}
@@ -52,7 +54,7 @@ class CassandraCQLValueConverter extends Converter[Any, java.util.Map[String, St
class ToCassandraCQLKeyConverter extends Converter[Any, java.util.Map[String, ByteBuffer]] {
override def convert(obj: Any): java.util.Map[String, ByteBuffer] = {
val input = obj.asInstanceOf[java.util.Map[String, Int]]
- mapAsJavaMap(input.mapValues(i => ByteBufferUtil.bytes(i)))
+ input.asScala.mapValues(ByteBufferUtil.bytes).asJava
}
}
@@ -63,6 +65,6 @@ class ToCassandraCQLKeyConverter extends Converter[Any, java.util.Map[String, By
class ToCassandraCQLValueConverter extends Converter[Any, java.util.List[ByteBuffer]] {
override def convert(obj: Any): java.util.List[ByteBuffer] = {
val input = obj.asInstanceOf[java.util.List[String]]
- seqAsJavaList(input.map(s => ByteBufferUtil.bytes(s)))
+ input.asScala.map(ByteBufferUtil.bytes).asJava
}
}
diff --git a/examples/src/main/scala/org/apache/spark/examples/pythonconverters/HBaseConverters.scala b/examples/src/main/scala/org/apache/spark/examples/pythonconverters/HBaseConverters.scala
index 90d48a6410..0a25ee7ae5 100644
--- a/examples/src/main/scala/org/apache/spark/examples/pythonconverters/HBaseConverters.scala
+++ b/examples/src/main/scala/org/apache/spark/examples/pythonconverters/HBaseConverters.scala
@@ -17,7 +17,7 @@
package org.apache.spark.examples.pythonconverters
-import scala.collection.JavaConversions._
+import scala.collection.JavaConverters._
import scala.util.parsing.json.JSONObject
import org.apache.spark.api.python.Converter
@@ -33,7 +33,6 @@ import org.apache.hadoop.hbase.CellUtil
*/
class HBaseResultToStringConverter extends Converter[Any, String] {
override def convert(obj: Any): String = {
- import collection.JavaConverters._
val result = obj.asInstanceOf[Result]
val output = result.listCells.asScala.map(cell =>
Map(
@@ -77,7 +76,7 @@ class StringToImmutableBytesWritableConverter extends Converter[Any, ImmutableBy
*/
class StringListToPutConverter extends Converter[Any, Put] {
override def convert(obj: Any): Put = {
- val output = obj.asInstanceOf[java.util.ArrayList[String]].map(Bytes.toBytes(_)).toArray
+ val output = obj.asInstanceOf[java.util.ArrayList[String]].asScala.map(Bytes.toBytes).toArray
val put = new Put(output(0))
put.add(output(1), output(2), output(3))
}