| package io.pivotal.gemfire.spark.connector.javaapi; |
| |
| import org.apache.spark.SparkContext; |
| import org.apache.spark.api.java.JavaSparkContext; |
| import org.apache.spark.api.java.JavaPairRDD; |
| import org.apache.spark.api.java.JavaRDD; |
| import org.apache.spark.sql.SQLContext; |
| import org.apache.spark.streaming.api.java.JavaDStream; |
| import org.apache.spark.streaming.api.java.JavaPairDStream; |
| import scala.Tuple2; |
| |
| import io.pivotal.gemfire.spark.connector.package$; |
| |
| /** |
| * The main entry point to Spark GemFire Connector Java API. |
| * |
| * There are several helpful static factory methods which build useful wrappers |
| * around Spark Context, Streaming Context and RDD. There are also helper methods |
| * to convert JavaRDD<Tuple2<K, V>> to JavaPairRDD<K, V>. |
| */ |
| public final class GemFireJavaUtil { |
| |
| /** constants */ |
| public static String GemFireLocatorPropKey = package$.MODULE$.GemFireLocatorPropKey(); |
| // partitioner related keys and values |
| public static String PreferredPartitionerPropKey = package$.MODULE$.PreferredPartitionerPropKey(); |
| public static String NumberPartitionsPerServerPropKey = package$.MODULE$.NumberPartitionsPerServerPropKey(); |
| public static String OnePartitionPartitionerName = package$.MODULE$.OnePartitionPartitionerName(); |
| public static String ServerSplitsPartitionerName = package$.MODULE$.ServerSplitsPartitionerName(); |
| |
| |
| /** The private constructor is used prevents user from creating instance of this class. */ |
| private GemFireJavaUtil() { } |
| |
| /** |
| * A static factory method to create a {@link GemFireJavaSparkContextFunctions} based |
| * on an existing {@link SparkContext} instance. |
| */ |
| public static GemFireJavaSparkContextFunctions javaFunctions(SparkContext sc) { |
| return new GemFireJavaSparkContextFunctions(sc); |
| } |
| |
| /** |
| * A static factory method to create a {@link GemFireJavaSparkContextFunctions} based |
| * on an existing {@link JavaSparkContext} instance. |
| */ |
| public static GemFireJavaSparkContextFunctions javaFunctions(JavaSparkContext jsc) { |
| return new GemFireJavaSparkContextFunctions(JavaSparkContext.toSparkContext(jsc)); |
| } |
| |
| /** |
| * A static factory method to create a {@link GemFireJavaPairRDDFunctions} based on an |
| * existing {@link org.apache.spark.api.java.JavaPairRDD} instance. |
| */ |
| public static <K, V> GemFireJavaPairRDDFunctions<K, V> javaFunctions(JavaPairRDD<K, V> rdd) { |
| return new GemFireJavaPairRDDFunctions<K, V>(rdd); |
| } |
| |
| /** |
| * A static factory method to create a {@link GemFireJavaRDDFunctions} based on an |
| * existing {@link org.apache.spark.api.java.JavaRDD} instance. |
| */ |
| public static <T> GemFireJavaRDDFunctions<T> javaFunctions(JavaRDD<T> rdd) { |
| return new GemFireJavaRDDFunctions<T>(rdd); |
| } |
| |
| /** |
| * A static factory method to create a {@link GemFireJavaPairDStreamFunctions} based on an |
| * existing {@link org.apache.spark.streaming.api.java.JavaPairDStream} instance. |
| */ |
| public static <K, V> GemFireJavaPairDStreamFunctions<K, V> javaFunctions(JavaPairDStream<K, V> ds) { |
| return new GemFireJavaPairDStreamFunctions<>(ds); |
| } |
| |
| /** |
| * A static factory method to create a {@link GemFireJavaDStreamFunctions} based on an |
| * existing {@link org.apache.spark.streaming.api.java.JavaDStream} instance. |
| */ |
| public static <T> GemFireJavaDStreamFunctions<T> javaFunctions(JavaDStream<T> ds) { |
| return new GemFireJavaDStreamFunctions<>(ds); |
| } |
| |
| /** Convert an instance of {@link org.apache.spark.api.java.JavaRDD}<<Tuple2<K, V>> |
| * to a {@link org.apache.spark.api.java.JavaPairRDD}<K, V>. |
| */ |
| public static <K, V> JavaPairRDD<K, V> toJavaPairRDD(JavaRDD<Tuple2<K, V>> rdd) { |
| return JavaAPIHelper.toJavaPairRDD(rdd); |
| } |
| |
| /** Convert an instance of {@link org.apache.spark.streaming.api.java.JavaDStream}<<Tuple2<K, V>> |
| * to a {@link org.apache.spark.streaming.api.java.JavaPairDStream}<K, V>. |
| */ |
| public static <K, V> JavaPairDStream<K, V> toJavaPairDStream(JavaDStream<Tuple2<K, V>> ds) { |
| return JavaAPIHelper.toJavaPairDStream(ds); |
| } |
| |
| /** |
| * A static factory method to create a {@link GemFireJavaSQLContextFunctions} based |
| * on an existing {@link SQLContext} instance. |
| */ |
| public static GemFireJavaSQLContextFunctions javaFunctions(SQLContext sqlContext) { |
| return new GemFireJavaSQLContextFunctions(sqlContext); |
| } |
| |
| } |