// ORM class for table 'null'
// WARNING: This class is AUTO-GENERATED. Modify at your own risk.
//
// Debug information:
// Generated date: Thu Sep 22 10:48:47 BST 2016
// For connector: org.apache.sqoop.manager.OracleManager
import org.apache.hadoop.io.BytesWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.io.Writable;
import org.apache.hadoop.mapred.lib.db.DBWritable;
import com.cloudera.sqoop.lib.JdbcWritableBridge;
import com.cloudera.sqoop.lib.DelimiterSet;
import com.cloudera.sqoop.lib.FieldFormatter;
import com.cloudera.sqoop.lib.RecordParser;
import com.cloudera.sqoop.lib.BooleanParser;
import com.cloudera.sqoop.lib.BlobRef;
import com.cloudera.sqoop.lib.ClobRef;
import com.cloudera.sqoop.lib.LargeObjectLoader;
import com.cloudera.sqoop.lib.SqoopRecord;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.sql.Date;
import java.sql.Time;
import java.sql.Timestamp;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;

public class QueryResult extends SqoopRecord  implements DBWritable, Writable {
  private final int PROTOCOL_VERSION = 3;
  public int getClassFormatVersion() { return PROTOCOL_VERSION; }
  protected ResultSet __cur_result_set;
  private java.math.BigDecimal PROD_ID;
  public java.math.BigDecimal get_PROD_ID() {
    return PROD_ID;
  }
  public void set_PROD_ID(java.math.BigDecimal PROD_ID) {
    this.PROD_ID = PROD_ID;
  }
  public QueryResult with_PROD_ID(java.math.BigDecimal PROD_ID) {
    this.PROD_ID = PROD_ID;
    return this;
  }
  private java.math.BigDecimal CUST_ID;
  public java.math.BigDecimal get_CUST_ID() {
    return CUST_ID;
  }
  public void set_CUST_ID(java.math.BigDecimal CUST_ID) {
    this.CUST_ID = CUST_ID;
  }
  public QueryResult with_CUST_ID(java.math.BigDecimal CUST_ID) {
    this.CUST_ID = CUST_ID;
    return this;
  }
  private java.sql.Timestamp TIME_ID;
  public java.sql.Timestamp get_TIME_ID() {
    return TIME_ID;
  }
  public void set_TIME_ID(java.sql.Timestamp TIME_ID) {
    this.TIME_ID = TIME_ID;
  }
  public QueryResult with_TIME_ID(java.sql.Timestamp TIME_ID) {
    this.TIME_ID = TIME_ID;
    return this;
  }
  private java.math.BigDecimal CHANNEL_ID;
  public java.math.BigDecimal get_CHANNEL_ID() {
    return CHANNEL_ID;
  }
  public void set_CHANNEL_ID(java.math.BigDecimal CHANNEL_ID) {
    this.CHANNEL_ID = CHANNEL_ID;
  }
  public QueryResult with_CHANNEL_ID(java.math.BigDecimal CHANNEL_ID) {
    this.CHANNEL_ID = CHANNEL_ID;
    return this;
  }
  private java.math.BigDecimal PROMO_ID;
  public java.math.BigDecimal get_PROMO_ID() {
    return PROMO_ID;
  }
  public void set_PROMO_ID(java.math.BigDecimal PROMO_ID) {
    this.PROMO_ID = PROMO_ID;
  }
  public QueryResult with_PROMO_ID(java.math.BigDecimal PROMO_ID) {
    this.PROMO_ID = PROMO_ID;
    return this;
  }
  private java.math.BigDecimal QUANTITY_SOLD;
  public java.math.BigDecimal get_QUANTITY_SOLD() {
    return QUANTITY_SOLD;
  }
  public void set_QUANTITY_SOLD(java.math.BigDecimal QUANTITY_SOLD) {
    this.QUANTITY_SOLD = QUANTITY_SOLD;
  }
  public QueryResult with_QUANTITY_SOLD(java.math.BigDecimal QUANTITY_SOLD) {
    this.QUANTITY_SOLD = QUANTITY_SOLD;
    return this;
  }
  private java.math.BigDecimal AMOUNT_SOLD;
  public java.math.BigDecimal get_AMOUNT_SOLD() {
    return AMOUNT_SOLD;
  }
  public void set_AMOUNT_SOLD(java.math.BigDecimal AMOUNT_SOLD) {
    this.AMOUNT_SOLD = AMOUNT_SOLD;
  }
  public QueryResult with_AMOUNT_SOLD(java.math.BigDecimal AMOUNT_SOLD) {
    this.AMOUNT_SOLD = AMOUNT_SOLD;
    return this;
  }
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (!(o instanceof QueryResult)) {
      return false;
    }
    QueryResult that = (QueryResult) o;
    boolean equal = true;
    equal = equal && (this.PROD_ID == null ? that.PROD_ID == null : this.PROD_ID.equals(that.PROD_ID));
    equal = equal && (this.CUST_ID == null ? that.CUST_ID == null : this.CUST_ID.equals(that.CUST_ID));
    equal = equal && (this.TIME_ID == null ? that.TIME_ID == null : this.TIME_ID.equals(that.TIME_ID));
    equal = equal && (this.CHANNEL_ID == null ? that.CHANNEL_ID == null : this.CHANNEL_ID.equals(that.CHANNEL_ID));
    equal = equal && (this.PROMO_ID == null ? that.PROMO_ID == null : this.PROMO_ID.equals(that.PROMO_ID));
    equal = equal && (this.QUANTITY_SOLD == null ? that.QUANTITY_SOLD == null : this.QUANTITY_SOLD.equals(that.QUANTITY_SOLD));
    equal = equal && (this.AMOUNT_SOLD == null ? that.AMOUNT_SOLD == null : this.AMOUNT_SOLD.equals(that.AMOUNT_SOLD));
    return equal;
  }
  public boolean equals0(Object o) {
    if (this == o) {
      return true;
    }
    if (!(o instanceof QueryResult)) {
      return false;
    }
    QueryResult that = (QueryResult) o;
    boolean equal = true;
    equal = equal && (this.PROD_ID == null ? that.PROD_ID == null : this.PROD_ID.equals(that.PROD_ID));
    equal = equal && (this.CUST_ID == null ? that.CUST_ID == null : this.CUST_ID.equals(that.CUST_ID));
    equal = equal && (this.TIME_ID == null ? that.TIME_ID == null : this.TIME_ID.equals(that.TIME_ID));
    equal = equal && (this.CHANNEL_ID == null ? that.CHANNEL_ID == null : this.CHANNEL_ID.equals(that.CHANNEL_ID));
    equal = equal && (this.PROMO_ID == null ? that.PROMO_ID == null : this.PROMO_ID.equals(that.PROMO_ID));
    equal = equal && (this.QUANTITY_SOLD == null ? that.QUANTITY_SOLD == null : this.QUANTITY_SOLD.equals(that.QUANTITY_SOLD));
    equal = equal && (this.AMOUNT_SOLD == null ? that.AMOUNT_SOLD == null : this.AMOUNT_SOLD.equals(that.AMOUNT_SOLD));
    return equal;
  }
  public void readFields(ResultSet __dbResults) throws SQLException {
    this.__cur_result_set = __dbResults;
    this.PROD_ID = JdbcWritableBridge.readBigDecimal(1, __dbResults);
    this.CUST_ID = JdbcWritableBridge.readBigDecimal(2, __dbResults);
    this.TIME_ID = JdbcWritableBridge.readTimestamp(3, __dbResults);
    this.CHANNEL_ID = JdbcWritableBridge.readBigDecimal(4, __dbResults);
    this.PROMO_ID = JdbcWritableBridge.readBigDecimal(5, __dbResults);
    this.QUANTITY_SOLD = JdbcWritableBridge.readBigDecimal(6, __dbResults);
    this.AMOUNT_SOLD = JdbcWritableBridge.readBigDecimal(7, __dbResults);
  }
  public void readFields0(ResultSet __dbResults) throws SQLException {
    this.PROD_ID = JdbcWritableBridge.readBigDecimal(1, __dbResults);
    this.CUST_ID = JdbcWritableBridge.readBigDecimal(2, __dbResults);
    this.TIME_ID = JdbcWritableBridge.readTimestamp(3, __dbResults);
    this.CHANNEL_ID = JdbcWritableBridge.readBigDecimal(4, __dbResults);
    this.PROMO_ID = JdbcWritableBridge.readBigDecimal(5, __dbResults);
    this.QUANTITY_SOLD = JdbcWritableBridge.readBigDecimal(6, __dbResults);
    this.AMOUNT_SOLD = JdbcWritableBridge.readBigDecimal(7, __dbResults);
  }
  public void loadLargeObjects(LargeObjectLoader __loader)
      throws SQLException, IOException, InterruptedException {
  }
  public void loadLargeObjects0(LargeObjectLoader __loader)
      throws SQLException, IOException, InterruptedException {
  }
  public void write(PreparedStatement __dbStmt) throws SQLException {
    write(__dbStmt, 0);
  }

  public int write(PreparedStatement __dbStmt, int __off) throws SQLException {
    JdbcWritableBridge.writeBigDecimal(PROD_ID, 1 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(CUST_ID, 2 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeTimestamp(TIME_ID, 3 + __off, 93, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(CHANNEL_ID, 4 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(PROMO_ID, 5 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(QUANTITY_SOLD, 6 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(AMOUNT_SOLD, 7 + __off, 2, __dbStmt);
    return 7;
  }
  public void write0(PreparedStatement __dbStmt, int __off) throws SQLException {
    JdbcWritableBridge.writeBigDecimal(PROD_ID, 1 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(CUST_ID, 2 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeTimestamp(TIME_ID, 3 + __off, 93, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(CHANNEL_ID, 4 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(PROMO_ID, 5 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(QUANTITY_SOLD, 6 + __off, 2, __dbStmt);
    JdbcWritableBridge.writeBigDecimal(AMOUNT_SOLD, 7 + __off, 2, __dbStmt);
  }
  public void readFields(DataInput __dataIn) throws IOException {
this.readFields0(__dataIn);  }
  public void readFields0(DataInput __dataIn) throws IOException {
    if (__dataIn.readBoolean()) { 
        this.PROD_ID = null;
    } else {
    this.PROD_ID = com.cloudera.sqoop.lib.BigDecimalSerializer.readFields(__dataIn);
    }
    if (__dataIn.readBoolean()) { 
        this.CUST_ID = null;
    } else {
    this.CUST_ID = com.cloudera.sqoop.lib.BigDecimalSerializer.readFields(__dataIn);
    }
    if (__dataIn.readBoolean()) { 
        this.TIME_ID = null;
    } else {
    this.TIME_ID = new Timestamp(__dataIn.readLong());
    this.TIME_ID.setNanos(__dataIn.readInt());
    }
    if (__dataIn.readBoolean()) { 
        this.CHANNEL_ID = null;
    } else {
    this.CHANNEL_ID = com.cloudera.sqoop.lib.BigDecimalSerializer.readFields(__dataIn);
    }
    if (__dataIn.readBoolean()) { 
        this.PROMO_ID = null;
    } else {
    this.PROMO_ID = com.cloudera.sqoop.lib.BigDecimalSerializer.readFields(__dataIn);
    }
    if (__dataIn.readBoolean()) { 
        this.QUANTITY_SOLD = null;
    } else {
    this.QUANTITY_SOLD = com.cloudera.sqoop.lib.BigDecimalSerializer.readFields(__dataIn);
    }
    if (__dataIn.readBoolean()) { 
        this.AMOUNT_SOLD = null;
    } else {
    this.AMOUNT_SOLD = com.cloudera.sqoop.lib.BigDecimalSerializer.readFields(__dataIn);
    }
  }
  public void write(DataOutput __dataOut) throws IOException {
    if (null == this.PROD_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.PROD_ID, __dataOut);
    }
    if (null == this.CUST_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.CUST_ID, __dataOut);
    }
    if (null == this.TIME_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    __dataOut.writeLong(this.TIME_ID.getTime());
    __dataOut.writeInt(this.TIME_ID.getNanos());
    }
    if (null == this.CHANNEL_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.CHANNEL_ID, __dataOut);
    }
    if (null == this.PROMO_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.PROMO_ID, __dataOut);
    }
    if (null == this.QUANTITY_SOLD) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.QUANTITY_SOLD, __dataOut);
    }
    if (null == this.AMOUNT_SOLD) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.AMOUNT_SOLD, __dataOut);
    }
  }
  public void write0(DataOutput __dataOut) throws IOException {
    if (null == this.PROD_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.PROD_ID, __dataOut);
    }
    if (null == this.CUST_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.CUST_ID, __dataOut);
    }
    if (null == this.TIME_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    __dataOut.writeLong(this.TIME_ID.getTime());
    __dataOut.writeInt(this.TIME_ID.getNanos());
    }
    if (null == this.CHANNEL_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.CHANNEL_ID, __dataOut);
    }
    if (null == this.PROMO_ID) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.PROMO_ID, __dataOut);
    }
    if (null == this.QUANTITY_SOLD) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.QUANTITY_SOLD, __dataOut);
    }
    if (null == this.AMOUNT_SOLD) { 
        __dataOut.writeBoolean(true);
    } else {
        __dataOut.writeBoolean(false);
    com.cloudera.sqoop.lib.BigDecimalSerializer.write(this.AMOUNT_SOLD, __dataOut);
    }
  }
  private static final DelimiterSet __outputDelimiters = new DelimiterSet((char) 1, (char) 10, (char) 0, (char) 0, false);
  public String toString() {
    return toString(__outputDelimiters, true);
  }
  public String toString(DelimiterSet delimiters) {
    return toString(delimiters, true);
  }
  public String toString(boolean useRecordDelim) {
    return toString(__outputDelimiters, useRecordDelim);
  }
  public String toString(DelimiterSet delimiters, boolean useRecordDelim) {
    StringBuilder __sb = new StringBuilder();
    char fieldDelim = delimiters.getFieldsTerminatedBy();
    __sb.append(FieldFormatter.escapeAndEnclose(PROD_ID==null?"null":PROD_ID.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(CUST_ID==null?"null":CUST_ID.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(TIME_ID==null?"null":"" + TIME_ID, delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(CHANNEL_ID==null?"null":CHANNEL_ID.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(PROMO_ID==null?"null":PROMO_ID.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(QUANTITY_SOLD==null?"null":QUANTITY_SOLD.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(AMOUNT_SOLD==null?"null":AMOUNT_SOLD.toPlainString(), delimiters));
    if (useRecordDelim) {
      __sb.append(delimiters.getLinesTerminatedBy());
    }
    return __sb.toString();
  }
  public void toString0(DelimiterSet delimiters, StringBuilder __sb, char fieldDelim) {
    __sb.append(FieldFormatter.escapeAndEnclose(PROD_ID==null?"null":PROD_ID.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(CUST_ID==null?"null":CUST_ID.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(TIME_ID==null?"null":"" + TIME_ID, delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(CHANNEL_ID==null?"null":CHANNEL_ID.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(PROMO_ID==null?"null":PROMO_ID.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(QUANTITY_SOLD==null?"null":QUANTITY_SOLD.toPlainString(), delimiters));
    __sb.append(fieldDelim);
    __sb.append(FieldFormatter.escapeAndEnclose(AMOUNT_SOLD==null?"null":AMOUNT_SOLD.toPlainString(), delimiters));
  }
  private static final DelimiterSet __inputDelimiters = new DelimiterSet((char) 1, (char) 10, (char) 0, (char) 0, false);
  private RecordParser __parser;
  public void parse(Text __record) throws RecordParser.ParseError {
    if (null == this.__parser) {
      this.__parser = new RecordParser(__inputDelimiters);
    }
    List<String> __fields = this.__parser.parseRecord(__record);
    __loadFromFields(__fields);
  }

  public void parse(CharSequence __record) throws RecordParser.ParseError {
    if (null == this.__parser) {
      this.__parser = new RecordParser(__inputDelimiters);
    }
    List<String> __fields = this.__parser.parseRecord(__record);
    __loadFromFields(__fields);
  }

  public void parse(byte [] __record) throws RecordParser.ParseError {
    if (null == this.__parser) {
      this.__parser = new RecordParser(__inputDelimiters);
    }
    List<String> __fields = this.__parser.parseRecord(__record);
    __loadFromFields(__fields);
  }

  public void parse(char [] __record) throws RecordParser.ParseError {
    if (null == this.__parser) {
      this.__parser = new RecordParser(__inputDelimiters);
    }
    List<String> __fields = this.__parser.parseRecord(__record);
    __loadFromFields(__fields);
  }

  public void parse(ByteBuffer __record) throws RecordParser.ParseError {
    if (null == this.__parser) {
      this.__parser = new RecordParser(__inputDelimiters);
    }
    List<String> __fields = this.__parser.parseRecord(__record);
    __loadFromFields(__fields);
  }

  public void parse(CharBuffer __record) throws RecordParser.ParseError {
    if (null == this.__parser) {
      this.__parser = new RecordParser(__inputDelimiters);
    }
    List<String> __fields = this.__parser.parseRecord(__record);
    __loadFromFields(__fields);
  }

  private void __loadFromFields(List<String> fields) {
    Iterator<String> __it = fields.listIterator();
    String __cur_str = null;
    try {
    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.PROD_ID = null; } else {
      this.PROD_ID = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.CUST_ID = null; } else {
      this.CUST_ID = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.TIME_ID = null; } else {
      this.TIME_ID = java.sql.Timestamp.valueOf(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.CHANNEL_ID = null; } else {
      this.CHANNEL_ID = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.PROMO_ID = null; } else {
      this.PROMO_ID = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.QUANTITY_SOLD = null; } else {
      this.QUANTITY_SOLD = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.AMOUNT_SOLD = null; } else {
      this.AMOUNT_SOLD = new java.math.BigDecimal(__cur_str);
    }

    } catch (RuntimeException e) {    throw new RuntimeException("Can't parse input data: '" + __cur_str + "'", e);    }  }

  private void __loadFromFields0(Iterator<String> __it) {
    String __cur_str = null;
    try {
    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.PROD_ID = null; } else {
      this.PROD_ID = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.CUST_ID = null; } else {
      this.CUST_ID = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.TIME_ID = null; } else {
      this.TIME_ID = java.sql.Timestamp.valueOf(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.CHANNEL_ID = null; } else {
      this.CHANNEL_ID = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.PROMO_ID = null; } else {
      this.PROMO_ID = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.QUANTITY_SOLD = null; } else {
      this.QUANTITY_SOLD = new java.math.BigDecimal(__cur_str);
    }

    __cur_str = __it.next();
    if (__cur_str.equals("null") || __cur_str.length() == 0) { this.AMOUNT_SOLD = null; } else {
      this.AMOUNT_SOLD = new java.math.BigDecimal(__cur_str);
    }

    } catch (RuntimeException e) {    throw new RuntimeException("Can't parse input data: '" + __cur_str + "'", e);    }  }

  public Object clone() throws CloneNotSupportedException {
    QueryResult o = (QueryResult) super.clone();
    o.TIME_ID = (o.TIME_ID != null) ? (java.sql.Timestamp) o.TIME_ID.clone() : null;
    return o;
  }

  public void clone0(QueryResult o) throws CloneNotSupportedException {
    o.TIME_ID = (o.TIME_ID != null) ? (java.sql.Timestamp) o.TIME_ID.clone() : null;
  }

  public Map<String, Object> getFieldMap() {
    Map<String, Object> __sqoop$field_map = new TreeMap<String, Object>();
    __sqoop$field_map.put("PROD_ID", this.PROD_ID);
    __sqoop$field_map.put("CUST_ID", this.CUST_ID);
    __sqoop$field_map.put("TIME_ID", this.TIME_ID);
    __sqoop$field_map.put("CHANNEL_ID", this.CHANNEL_ID);
    __sqoop$field_map.put("PROMO_ID", this.PROMO_ID);
    __sqoop$field_map.put("QUANTITY_SOLD", this.QUANTITY_SOLD);
    __sqoop$field_map.put("AMOUNT_SOLD", this.AMOUNT_SOLD);
    return __sqoop$field_map;
  }

  public void getFieldMap0(Map<String, Object> __sqoop$field_map) {
    __sqoop$field_map.put("PROD_ID", this.PROD_ID);
    __sqoop$field_map.put("CUST_ID", this.CUST_ID);
    __sqoop$field_map.put("TIME_ID", this.TIME_ID);
    __sqoop$field_map.put("CHANNEL_ID", this.CHANNEL_ID);
    __sqoop$field_map.put("PROMO_ID", this.PROMO_ID);
    __sqoop$field_map.put("QUANTITY_SOLD", this.QUANTITY_SOLD);
    __sqoop$field_map.put("AMOUNT_SOLD", this.AMOUNT_SOLD);
  }

  public void setField(String __fieldName, Object __fieldVal) {
    if ("PROD_ID".equals(__fieldName)) {
      this.PROD_ID = (java.math.BigDecimal) __fieldVal;
    }
    else    if ("CUST_ID".equals(__fieldName)) {
      this.CUST_ID = (java.math.BigDecimal) __fieldVal;
    }
    else    if ("TIME_ID".equals(__fieldName)) {
      this.TIME_ID = (java.sql.Timestamp) __fieldVal;
    }
    else    if ("CHANNEL_ID".equals(__fieldName)) {
      this.CHANNEL_ID = (java.math.BigDecimal) __fieldVal;
    }
    else    if ("PROMO_ID".equals(__fieldName)) {
      this.PROMO_ID = (java.math.BigDecimal) __fieldVal;
    }
    else    if ("QUANTITY_SOLD".equals(__fieldName)) {
      this.QUANTITY_SOLD = (java.math.BigDecimal) __fieldVal;
    }
    else    if ("AMOUNT_SOLD".equals(__fieldName)) {
      this.AMOUNT_SOLD = (java.math.BigDecimal) __fieldVal;
    }
    else {
      throw new RuntimeException("No such field: " + __fieldName);
    }
  }
  public boolean setField0(String __fieldName, Object __fieldVal) {
    if ("PROD_ID".equals(__fieldName)) {
      this.PROD_ID = (java.math.BigDecimal) __fieldVal;
      return true;
    }
    else    if ("CUST_ID".equals(__fieldName)) {
      this.CUST_ID = (java.math.BigDecimal) __fieldVal;
      return true;
    }
    else    if ("TIME_ID".equals(__fieldName)) {
      this.TIME_ID = (java.sql.Timestamp) __fieldVal;
      return true;
    }
    else    if ("CHANNEL_ID".equals(__fieldName)) {
      this.CHANNEL_ID = (java.math.BigDecimal) __fieldVal;
      return true;
    }
    else    if ("PROMO_ID".equals(__fieldName)) {
      this.PROMO_ID = (java.math.BigDecimal) __fieldVal;
      return true;
    }
    else    if ("QUANTITY_SOLD".equals(__fieldName)) {
      this.QUANTITY_SOLD = (java.math.BigDecimal) __fieldVal;
      return true;
    }
    else    if ("AMOUNT_SOLD".equals(__fieldName)) {
      this.AMOUNT_SOLD = (java.math.BigDecimal) __fieldVal;
      return true;
    }
    else {
      return false;    }
  }
}
