Added a method to create PartitionPruningRDD.

This commit is contained in:
Reynold Xin 2013-02-19 16:03:52 -08:00
parent 03d847999e
commit 130f704baf

View file

@ -40,3 +40,15 @@ class PartitionPruningRDD[T: ClassManifest](
override protected def getPartitions: Array[Partition] = override protected def getPartitions: Array[Partition] =
getDependencies.head.asInstanceOf[PruneDependency[T]].partitions getDependencies.head.asInstanceOf[PruneDependency[T]].partitions
} }
object PartitionPruningRDD {
/**
* Create a PartitionPruningRDD. This function can be used to create the PartitionPruningRDD
* when its type T is not known at compile time.
*/
def create[T](rdd: RDD[T], partitionFilterFunc: Int => Boolean) = {
new PartitionPruningRDD[T](rdd, partitionFilterFunc)(rdd.elementClassManifest)
}
}