// Path: spark/src/main/java/com/github/boneill42/model/Product.java
// public class Product implements Serializable {
//     private static final long serialVersionUID = 1L;
//     private Integer id;
//     private String name;
//     private Float price;
// 
//     public Product() {
//     }
// 
//     public Product(Integer id, String name, Float price) {
//         this.id = id;
//         this.name = name;
//         this.price = price;
//     }
// 
//     public Integer getId() {
//         return id;
//     }
// 
//     public void setId(Integer id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public Float getPrice() {
//         return price;
//     }
// 
//     public void setPrice(Float price) {
//         this.price = price;
//     }
// 
//     @Override
//     public String toString() {
//         return MessageFormat.format("Product'{'id={0}, name=''{1}'', price={2}'}'", id, name, price);
//     }
//     
//     public static List<String> columns() {
//         List<String> columns = new ArrayList<String>();
//         columns.add("id");
//         columns.add("name");
//         columns.add("price"); 
//         return columns;
//     }
// 
// }


import java.io.Serializable;
import scala.Option;
import scala.collection.Seq;
import com.datastax.driver.core.ProtocolVersion;
import com.datastax.driver.core.Row;
import com.datastax.spark.connector.cql.TableDef;
import com.datastax.spark.connector.rdd.reader.RowReader;
import com.datastax.spark.connector.rdd.reader.RowReaderFactory;
import com.datastax.spark.connector.rdd.reader.RowReaderOptions;
import com.github.boneill42.model.Product;
package com.github.boneill42.dao;




public class ProductRowReader extends GenericRowReader<Product> {
    private static final long serialVersionUID = 1L;
    private static RowReader<Product> reader = new ProductRowReader();

    public static class ProductRowReaderFactory implements RowReaderFactory<Product>, Serializable{
        private static final long serialVersionUID = 1L;

        @Override
        public RowReader<Product> rowReader(TableDef arg0, RowReaderOptions arg1) {
            return reader;
        }

        @Override
        public RowReaderOptions rowReader$default$2() {
            return null;
        }

        @Override
        public Class<Product> targetClass() {
            return Product.class;
        }        
    }

// Path: spark/src/main/java/com/github/boneill42/model/Product.java
// public class Product implements Serializable {
//     private static final long serialVersionUID = 1L;
//     private Integer id;
//     private String name;
//     private Float price;
// 
//     public Product() {
//     }
// 
//     public Product(Integer id, String name, Float price) {
//         this.id = id;
//         this.name = name;
//         this.price = price;
//     }
// 
//     public Integer getId() {
//         return id;
//     }
// 
//     public void setId(Integer id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public Float getPrice() {
//         return price;
//     }
// 
//     public void setPrice(Float price) {
//         this.price = price;
//     }
// 
//     @Override
//     public String toString() {
//         return MessageFormat.format("Product'{'id={0}, name=''{1}'', price={2}'}'", id, name, price);
//     }
//     
//     public static List<String> columns() {
//         List<String> columns = new ArrayList<String>();
//         columns.add("id");
//         columns.add("name");
//         columns.add("price"); 
//         return columns;
//     }
// 
// }


// Path: spark/src/main/java/com/github/boneill42/dao/ProductRowReader.java
import java.io.Serializable;
import scala.Option;
import scala.collection.Seq;
import com.datastax.driver.core.ProtocolVersion;
import com.datastax.driver.core.Row;
import com.datastax.spark.connector.cql.TableDef;
import com.datastax.spark.connector.rdd.reader.RowReader;
import com.datastax.spark.connector.rdd.reader.RowReaderFactory;
import com.datastax.spark.connector.rdd.reader.RowReaderOptions;
import com.github.boneill42.model.Product;

package com.github.boneill42.dao;




public class ProductRowReader extends GenericRowReader<Product> {
    private static final long serialVersionUID = 1L;
    private static RowReader<Product> reader = new ProductRowReader();

    public static class ProductRowReaderFactory implements RowReaderFactory<Product>, Serializable{
        private static final long serialVersionUID = 1L;

        @Override
        public RowReader<Product> rowReader(TableDef arg0, RowReaderOptions arg1) {
            return reader;
        }

        @Override
        public RowReaderOptions rowReader$default$2() {
            return null;
        }

        @Override
        public Class<Product> targetClass() {
            return Product.class;
        }        
    }

    @Override