Skip to content

Commit

Permalink
Bit of refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
tanwanirahul committed Jan 30, 2016
1 parent b150c55 commit 9be0313
Showing 1 changed file with 11 additions and 24 deletions.
35 changes: 11 additions & 24 deletions src/main/scala/com/databricks/spark/csv/CsvParser.scala
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
*/
package com.databricks.spark.csv


import org.apache.spark.rdd.RDD
import org.apache.spark.sql.{DataFrame, SQLContext}
import org.apache.spark.sql.types.StructType
Expand Down Expand Up @@ -117,12 +116,11 @@ class CsvParser extends Serializable {
this
}

/** Returns a Schema RDD for the given CSV path. */
@throws[RuntimeException]
def csvFile(sqlContext: SQLContext, path: String): DataFrame = {
val relation: CsvRelation = CsvRelation(
() => TextFile.withCharset(sqlContext.sparkContext, path, charset),
Some(path),
/** Returns a csvRelation instance based on the state definition of csv parser.*/
private[csv] def csvRelation(sqlContext: SQLContext, csvRDD: RDD[String], path: Option[String]): CsvRelation = {
CsvRelation(
() => csvRDD,
path,
useHeader,
delimiter,
quote,
Expand All @@ -137,27 +135,16 @@ class CsvParser extends Serializable {
inferSchema,
codec,
nullValue)(sqlContext)
}
/** Returns a Schema RDD for the given CSV path. */
@throws[RuntimeException]
def csvFile(sqlContext: SQLContext, path: String): DataFrame = {
val relation: CsvRelation = csvRelation(sqlContext, TextFile.withCharset(sqlContext.sparkContext, path, charset), Some(path))
sqlContext.baseRelationToDataFrame(relation)
}

def csvRdd(sqlContext: SQLContext, csvRDD: RDD[String]): DataFrame = {
val relation: CsvRelation = CsvRelation(
() => csvRDD,
None,
useHeader,
delimiter,
quote,
escape,
comment,
parseMode,
parserLib,
ignoreLeadingWhiteSpace,
ignoreTrailingWhiteSpace,
treatEmptyValuesAsNulls,
schema,
inferSchema,
codec,
nullValue)(sqlContext)
val relation: CsvRelation = csvRelation(sqlContext, csvRDD, None)
sqlContext.baseRelationToDataFrame(relation)
}
}

0 comments on commit 9be0313

Please sign in to comment.