Subversion Repositories SmartDukaan

Rev

Rev 12256 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

/**
 * Autogenerated by Thrift Compiler (0.7.0)
 *
 * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 */
package in.shop2020.model.v1.catalog;

import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.util.HashMap;
import java.util.EnumMap;
import java.util.Set;
import java.util.HashSet;
import java.util.EnumSet;
import java.util.Collections;
import java.util.BitSet;
import java.nio.ByteBuffer;
import java.util.Arrays;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class CompetitorPricing implements org.apache.thrift.TBase<CompetitorPricing, CompetitorPricing._Fields>, java.io.Serializable, Cloneable {
  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("CompetitorPricing");

  private static final org.apache.thrift.protocol.TField ITEM_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("item_id", org.apache.thrift.protocol.TType.I64, (short)1);
  private static final org.apache.thrift.protocol.TField IS_SNAPDEAL_FIELD_DESC = new org.apache.thrift.protocol.TField("isSnapdeal", org.apache.thrift.protocol.TType.BOOL, (short)2);
  private static final org.apache.thrift.protocol.TField IS_FLIPKART_FIELD_DESC = new org.apache.thrift.protocol.TField("isFlipkart", org.apache.thrift.protocol.TType.BOOL, (short)3);
  private static final org.apache.thrift.protocol.TField IS_AMAZON_FIELD_DESC = new org.apache.thrift.protocol.TField("isAmazon", org.apache.thrift.protocol.TType.BOOL, (short)4);
  private static final org.apache.thrift.protocol.TField LOWEST_SNAPDEAL_PRICE_FIELD_DESC = new org.apache.thrift.protocol.TField("lowestSnapdealPrice", org.apache.thrift.protocol.TType.DOUBLE, (short)5);
  private static final org.apache.thrift.protocol.TField LOWEST_FLIPKART_PRICE_FIELD_DESC = new org.apache.thrift.protocol.TField("lowestFlipkartPrice", org.apache.thrift.protocol.TType.DOUBLE, (short)6);
  private static final org.apache.thrift.protocol.TField LOWEST_MFN_PRICE_FIELD_DESC = new org.apache.thrift.protocol.TField("lowestMfnPrice", org.apache.thrift.protocol.TType.DOUBLE, (short)7);
  private static final org.apache.thrift.protocol.TField LOWEST_FBA_PRICE_FIELD_DESC = new org.apache.thrift.protocol.TField("lowestFbaPrice", org.apache.thrift.protocol.TType.DOUBLE, (short)8);
  private static final org.apache.thrift.protocol.TField PROCESSED_FIELD_DESC = new org.apache.thrift.protocol.TField("processed", org.apache.thrift.protocol.TType.BOOL, (short)9);
  private static final org.apache.thrift.protocol.TField UPLOAD_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("uploadId", org.apache.thrift.protocol.TType.I64, (short)10);

  private long item_id; // required
  private boolean isSnapdeal; // required
  private boolean isFlipkart; // required
  private boolean isAmazon; // required
  private double lowestSnapdealPrice; // required
  private double lowestFlipkartPrice; // required
  private double lowestMfnPrice; // required
  private double lowestFbaPrice; // required
  private boolean processed; // required
  private long uploadId; // required

  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
    ITEM_ID((short)1, "item_id"),
    IS_SNAPDEAL((short)2, "isSnapdeal"),
    IS_FLIPKART((short)3, "isFlipkart"),
    IS_AMAZON((short)4, "isAmazon"),
    LOWEST_SNAPDEAL_PRICE((short)5, "lowestSnapdealPrice"),
    LOWEST_FLIPKART_PRICE((short)6, "lowestFlipkartPrice"),
    LOWEST_MFN_PRICE((short)7, "lowestMfnPrice"),
    LOWEST_FBA_PRICE((short)8, "lowestFbaPrice"),
    PROCESSED((short)9, "processed"),
    UPLOAD_ID((short)10, "uploadId");

    private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    static {
      for (_Fields field : EnumSet.allOf(_Fields.class)) {
        byName.put(field.getFieldName(), field);
      }
    }

    /**
     * Find the _Fields constant that matches fieldId, or null if its not found.
     */
    public static _Fields findByThriftId(int fieldId) {
      switch(fieldId) {
        case 1: // ITEM_ID
          return ITEM_ID;
        case 2: // IS_SNAPDEAL
          return IS_SNAPDEAL;
        case 3: // IS_FLIPKART
          return IS_FLIPKART;
        case 4: // IS_AMAZON
          return IS_AMAZON;
        case 5: // LOWEST_SNAPDEAL_PRICE
          return LOWEST_SNAPDEAL_PRICE;
        case 6: // LOWEST_FLIPKART_PRICE
          return LOWEST_FLIPKART_PRICE;
        case 7: // LOWEST_MFN_PRICE
          return LOWEST_MFN_PRICE;
        case 8: // LOWEST_FBA_PRICE
          return LOWEST_FBA_PRICE;
        case 9: // PROCESSED
          return PROCESSED;
        case 10: // UPLOAD_ID
          return UPLOAD_ID;
        default:
          return null;
      }
    }

    /**
     * Find the _Fields constant that matches fieldId, throwing an exception
     * if it is not found.
     */
    public static _Fields findByThriftIdOrThrow(int fieldId) {
      _Fields fields = findByThriftId(fieldId);
      if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
      return fields;
    }

    /**
     * Find the _Fields constant that matches name, or null if its not found.
     */
    public static _Fields findByName(String name) {
      return byName.get(name);
    }

    private final short _thriftId;
    private final String _fieldName;

    _Fields(short thriftId, String fieldName) {
      _thriftId = thriftId;
      _fieldName = fieldName;
    }

    public short getThriftFieldId() {
      return _thriftId;
    }

    public String getFieldName() {
      return _fieldName;
    }
  }

  // isset id assignments
  private static final int __ITEM_ID_ISSET_ID = 0;
  private static final int __ISSNAPDEAL_ISSET_ID = 1;
  private static final int __ISFLIPKART_ISSET_ID = 2;
  private static final int __ISAMAZON_ISSET_ID = 3;
  private static final int __LOWESTSNAPDEALPRICE_ISSET_ID = 4;
  private static final int __LOWESTFLIPKARTPRICE_ISSET_ID = 5;
  private static final int __LOWESTMFNPRICE_ISSET_ID = 6;
  private static final int __LOWESTFBAPRICE_ISSET_ID = 7;
  private static final int __PROCESSED_ISSET_ID = 8;
  private static final int __UPLOADID_ISSET_ID = 9;
  private BitSet __isset_bit_vector = new BitSet(10);

  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
  static {
    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
    tmpMap.put(_Fields.ITEM_ID, new org.apache.thrift.meta_data.FieldMetaData("item_id", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.IS_SNAPDEAL, new org.apache.thrift.meta_data.FieldMetaData("isSnapdeal", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
    tmpMap.put(_Fields.IS_FLIPKART, new org.apache.thrift.meta_data.FieldMetaData("isFlipkart", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
    tmpMap.put(_Fields.IS_AMAZON, new org.apache.thrift.meta_data.FieldMetaData("isAmazon", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
    tmpMap.put(_Fields.LOWEST_SNAPDEAL_PRICE, new org.apache.thrift.meta_data.FieldMetaData("lowestSnapdealPrice", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
    tmpMap.put(_Fields.LOWEST_FLIPKART_PRICE, new org.apache.thrift.meta_data.FieldMetaData("lowestFlipkartPrice", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
    tmpMap.put(_Fields.LOWEST_MFN_PRICE, new org.apache.thrift.meta_data.FieldMetaData("lowestMfnPrice", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
    tmpMap.put(_Fields.LOWEST_FBA_PRICE, new org.apache.thrift.meta_data.FieldMetaData("lowestFbaPrice", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
    tmpMap.put(_Fields.PROCESSED, new org.apache.thrift.meta_data.FieldMetaData("processed", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
    tmpMap.put(_Fields.UPLOAD_ID, new org.apache.thrift.meta_data.FieldMetaData("uploadId", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    metaDataMap = Collections.unmodifiableMap(tmpMap);
    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(CompetitorPricing.class, metaDataMap);
  }

  public CompetitorPricing() {
  }

  public CompetitorPricing(
    long item_id,
    boolean isSnapdeal,
    boolean isFlipkart,
    boolean isAmazon,
    double lowestSnapdealPrice,
    double lowestFlipkartPrice,
    double lowestMfnPrice,
    double lowestFbaPrice,
    boolean processed,
    long uploadId)
  {
    this();
    this.item_id = item_id;
    setItem_idIsSet(true);
    this.isSnapdeal = isSnapdeal;
    setIsSnapdealIsSet(true);
    this.isFlipkart = isFlipkart;
    setIsFlipkartIsSet(true);
    this.isAmazon = isAmazon;
    setIsAmazonIsSet(true);
    this.lowestSnapdealPrice = lowestSnapdealPrice;
    setLowestSnapdealPriceIsSet(true);
    this.lowestFlipkartPrice = lowestFlipkartPrice;
    setLowestFlipkartPriceIsSet(true);
    this.lowestMfnPrice = lowestMfnPrice;
    setLowestMfnPriceIsSet(true);
    this.lowestFbaPrice = lowestFbaPrice;
    setLowestFbaPriceIsSet(true);
    this.processed = processed;
    setProcessedIsSet(true);
    this.uploadId = uploadId;
    setUploadIdIsSet(true);
  }

  /**
   * Performs a deep copy on <i>other</i>.
   */
  public CompetitorPricing(CompetitorPricing other) {
    __isset_bit_vector.clear();
    __isset_bit_vector.or(other.__isset_bit_vector);
    this.item_id = other.item_id;
    this.isSnapdeal = other.isSnapdeal;
    this.isFlipkart = other.isFlipkart;
    this.isAmazon = other.isAmazon;
    this.lowestSnapdealPrice = other.lowestSnapdealPrice;
    this.lowestFlipkartPrice = other.lowestFlipkartPrice;
    this.lowestMfnPrice = other.lowestMfnPrice;
    this.lowestFbaPrice = other.lowestFbaPrice;
    this.processed = other.processed;
    this.uploadId = other.uploadId;
  }

  public CompetitorPricing deepCopy() {
    return new CompetitorPricing(this);
  }

  @Override
  public void clear() {
    setItem_idIsSet(false);
    this.item_id = 0;
    setIsSnapdealIsSet(false);
    this.isSnapdeal = false;
    setIsFlipkartIsSet(false);
    this.isFlipkart = false;
    setIsAmazonIsSet(false);
    this.isAmazon = false;
    setLowestSnapdealPriceIsSet(false);
    this.lowestSnapdealPrice = 0.0;
    setLowestFlipkartPriceIsSet(false);
    this.lowestFlipkartPrice = 0.0;
    setLowestMfnPriceIsSet(false);
    this.lowestMfnPrice = 0.0;
    setLowestFbaPriceIsSet(false);
    this.lowestFbaPrice = 0.0;
    setProcessedIsSet(false);
    this.processed = false;
    setUploadIdIsSet(false);
    this.uploadId = 0;
  }

  public long getItem_id() {
    return this.item_id;
  }

  public void setItem_id(long item_id) {
    this.item_id = item_id;
    setItem_idIsSet(true);
  }

  public void unsetItem_id() {
    __isset_bit_vector.clear(__ITEM_ID_ISSET_ID);
  }

  /** Returns true if field item_id is set (has been assigned a value) and false otherwise */
  public boolean isSetItem_id() {
    return __isset_bit_vector.get(__ITEM_ID_ISSET_ID);
  }

  public void setItem_idIsSet(boolean value) {
    __isset_bit_vector.set(__ITEM_ID_ISSET_ID, value);
  }

  public boolean isIsSnapdeal() {
    return this.isSnapdeal;
  }

  public void setIsSnapdeal(boolean isSnapdeal) {
    this.isSnapdeal = isSnapdeal;
    setIsSnapdealIsSet(true);
  }

  public void unsetIsSnapdeal() {
    __isset_bit_vector.clear(__ISSNAPDEAL_ISSET_ID);
  }

  /** Returns true if field isSnapdeal is set (has been assigned a value) and false otherwise */
  public boolean isSetIsSnapdeal() {
    return __isset_bit_vector.get(__ISSNAPDEAL_ISSET_ID);
  }

  public void setIsSnapdealIsSet(boolean value) {
    __isset_bit_vector.set(__ISSNAPDEAL_ISSET_ID, value);
  }

  public boolean isIsFlipkart() {
    return this.isFlipkart;
  }

  public void setIsFlipkart(boolean isFlipkart) {
    this.isFlipkart = isFlipkart;
    setIsFlipkartIsSet(true);
  }

  public void unsetIsFlipkart() {
    __isset_bit_vector.clear(__ISFLIPKART_ISSET_ID);
  }

  /** Returns true if field isFlipkart is set (has been assigned a value) and false otherwise */
  public boolean isSetIsFlipkart() {
    return __isset_bit_vector.get(__ISFLIPKART_ISSET_ID);
  }

  public void setIsFlipkartIsSet(boolean value) {
    __isset_bit_vector.set(__ISFLIPKART_ISSET_ID, value);
  }

  public boolean isIsAmazon() {
    return this.isAmazon;
  }

  public void setIsAmazon(boolean isAmazon) {
    this.isAmazon = isAmazon;
    setIsAmazonIsSet(true);
  }

  public void unsetIsAmazon() {
    __isset_bit_vector.clear(__ISAMAZON_ISSET_ID);
  }

  /** Returns true if field isAmazon is set (has been assigned a value) and false otherwise */
  public boolean isSetIsAmazon() {
    return __isset_bit_vector.get(__ISAMAZON_ISSET_ID);
  }

  public void setIsAmazonIsSet(boolean value) {
    __isset_bit_vector.set(__ISAMAZON_ISSET_ID, value);
  }

  public double getLowestSnapdealPrice() {
    return this.lowestSnapdealPrice;
  }

  public void setLowestSnapdealPrice(double lowestSnapdealPrice) {
    this.lowestSnapdealPrice = lowestSnapdealPrice;
    setLowestSnapdealPriceIsSet(true);
  }

  public void unsetLowestSnapdealPrice() {
    __isset_bit_vector.clear(__LOWESTSNAPDEALPRICE_ISSET_ID);
  }

  /** Returns true if field lowestSnapdealPrice is set (has been assigned a value) and false otherwise */
  public boolean isSetLowestSnapdealPrice() {
    return __isset_bit_vector.get(__LOWESTSNAPDEALPRICE_ISSET_ID);
  }

  public void setLowestSnapdealPriceIsSet(boolean value) {
    __isset_bit_vector.set(__LOWESTSNAPDEALPRICE_ISSET_ID, value);
  }

  public double getLowestFlipkartPrice() {
    return this.lowestFlipkartPrice;
  }

  public void setLowestFlipkartPrice(double lowestFlipkartPrice) {
    this.lowestFlipkartPrice = lowestFlipkartPrice;
    setLowestFlipkartPriceIsSet(true);
  }

  public void unsetLowestFlipkartPrice() {
    __isset_bit_vector.clear(__LOWESTFLIPKARTPRICE_ISSET_ID);
  }

  /** Returns true if field lowestFlipkartPrice is set (has been assigned a value) and false otherwise */
  public boolean isSetLowestFlipkartPrice() {
    return __isset_bit_vector.get(__LOWESTFLIPKARTPRICE_ISSET_ID);
  }

  public void setLowestFlipkartPriceIsSet(boolean value) {
    __isset_bit_vector.set(__LOWESTFLIPKARTPRICE_ISSET_ID, value);
  }

  public double getLowestMfnPrice() {
    return this.lowestMfnPrice;
  }

  public void setLowestMfnPrice(double lowestMfnPrice) {
    this.lowestMfnPrice = lowestMfnPrice;
    setLowestMfnPriceIsSet(true);
  }

  public void unsetLowestMfnPrice() {
    __isset_bit_vector.clear(__LOWESTMFNPRICE_ISSET_ID);
  }

  /** Returns true if field lowestMfnPrice is set (has been assigned a value) and false otherwise */
  public boolean isSetLowestMfnPrice() {
    return __isset_bit_vector.get(__LOWESTMFNPRICE_ISSET_ID);
  }

  public void setLowestMfnPriceIsSet(boolean value) {
    __isset_bit_vector.set(__LOWESTMFNPRICE_ISSET_ID, value);
  }

  public double getLowestFbaPrice() {
    return this.lowestFbaPrice;
  }

  public void setLowestFbaPrice(double lowestFbaPrice) {
    this.lowestFbaPrice = lowestFbaPrice;
    setLowestFbaPriceIsSet(true);
  }

  public void unsetLowestFbaPrice() {
    __isset_bit_vector.clear(__LOWESTFBAPRICE_ISSET_ID);
  }

  /** Returns true if field lowestFbaPrice is set (has been assigned a value) and false otherwise */
  public boolean isSetLowestFbaPrice() {
    return __isset_bit_vector.get(__LOWESTFBAPRICE_ISSET_ID);
  }

  public void setLowestFbaPriceIsSet(boolean value) {
    __isset_bit_vector.set(__LOWESTFBAPRICE_ISSET_ID, value);
  }

  public boolean isProcessed() {
    return this.processed;
  }

  public void setProcessed(boolean processed) {
    this.processed = processed;
    setProcessedIsSet(true);
  }

  public void unsetProcessed() {
    __isset_bit_vector.clear(__PROCESSED_ISSET_ID);
  }

  /** Returns true if field processed is set (has been assigned a value) and false otherwise */
  public boolean isSetProcessed() {
    return __isset_bit_vector.get(__PROCESSED_ISSET_ID);
  }

  public void setProcessedIsSet(boolean value) {
    __isset_bit_vector.set(__PROCESSED_ISSET_ID, value);
  }

  public long getUploadId() {
    return this.uploadId;
  }

  public void setUploadId(long uploadId) {
    this.uploadId = uploadId;
    setUploadIdIsSet(true);
  }

  public void unsetUploadId() {
    __isset_bit_vector.clear(__UPLOADID_ISSET_ID);
  }

  /** Returns true if field uploadId is set (has been assigned a value) and false otherwise */
  public boolean isSetUploadId() {
    return __isset_bit_vector.get(__UPLOADID_ISSET_ID);
  }

  public void setUploadIdIsSet(boolean value) {
    __isset_bit_vector.set(__UPLOADID_ISSET_ID, value);
  }

  public void setFieldValue(_Fields field, Object value) {
    switch (field) {
    case ITEM_ID:
      if (value == null) {
        unsetItem_id();
      } else {
        setItem_id((Long)value);
      }
      break;

    case IS_SNAPDEAL:
      if (value == null) {
        unsetIsSnapdeal();
      } else {
        setIsSnapdeal((Boolean)value);
      }
      break;

    case IS_FLIPKART:
      if (value == null) {
        unsetIsFlipkart();
      } else {
        setIsFlipkart((Boolean)value);
      }
      break;

    case IS_AMAZON:
      if (value == null) {
        unsetIsAmazon();
      } else {
        setIsAmazon((Boolean)value);
      }
      break;

    case LOWEST_SNAPDEAL_PRICE:
      if (value == null) {
        unsetLowestSnapdealPrice();
      } else {
        setLowestSnapdealPrice((Double)value);
      }
      break;

    case LOWEST_FLIPKART_PRICE:
      if (value == null) {
        unsetLowestFlipkartPrice();
      } else {
        setLowestFlipkartPrice((Double)value);
      }
      break;

    case LOWEST_MFN_PRICE:
      if (value == null) {
        unsetLowestMfnPrice();
      } else {
        setLowestMfnPrice((Double)value);
      }
      break;

    case LOWEST_FBA_PRICE:
      if (value == null) {
        unsetLowestFbaPrice();
      } else {
        setLowestFbaPrice((Double)value);
      }
      break;

    case PROCESSED:
      if (value == null) {
        unsetProcessed();
      } else {
        setProcessed((Boolean)value);
      }
      break;

    case UPLOAD_ID:
      if (value == null) {
        unsetUploadId();
      } else {
        setUploadId((Long)value);
      }
      break;

    }
  }

  public Object getFieldValue(_Fields field) {
    switch (field) {
    case ITEM_ID:
      return Long.valueOf(getItem_id());

    case IS_SNAPDEAL:
      return Boolean.valueOf(isIsSnapdeal());

    case IS_FLIPKART:
      return Boolean.valueOf(isIsFlipkart());

    case IS_AMAZON:
      return Boolean.valueOf(isIsAmazon());

    case LOWEST_SNAPDEAL_PRICE:
      return Double.valueOf(getLowestSnapdealPrice());

    case LOWEST_FLIPKART_PRICE:
      return Double.valueOf(getLowestFlipkartPrice());

    case LOWEST_MFN_PRICE:
      return Double.valueOf(getLowestMfnPrice());

    case LOWEST_FBA_PRICE:
      return Double.valueOf(getLowestFbaPrice());

    case PROCESSED:
      return Boolean.valueOf(isProcessed());

    case UPLOAD_ID:
      return Long.valueOf(getUploadId());

    }
    throw new IllegalStateException();
  }

  /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
  public boolean isSet(_Fields field) {
    if (field == null) {
      throw new IllegalArgumentException();
    }

    switch (field) {
    case ITEM_ID:
      return isSetItem_id();
    case IS_SNAPDEAL:
      return isSetIsSnapdeal();
    case IS_FLIPKART:
      return isSetIsFlipkart();
    case IS_AMAZON:
      return isSetIsAmazon();
    case LOWEST_SNAPDEAL_PRICE:
      return isSetLowestSnapdealPrice();
    case LOWEST_FLIPKART_PRICE:
      return isSetLowestFlipkartPrice();
    case LOWEST_MFN_PRICE:
      return isSetLowestMfnPrice();
    case LOWEST_FBA_PRICE:
      return isSetLowestFbaPrice();
    case PROCESSED:
      return isSetProcessed();
    case UPLOAD_ID:
      return isSetUploadId();
    }
    throw new IllegalStateException();
  }

  @Override
  public boolean equals(Object that) {
    if (that == null)
      return false;
    if (that instanceof CompetitorPricing)
      return this.equals((CompetitorPricing)that);
    return false;
  }

  public boolean equals(CompetitorPricing that) {
    if (that == null)
      return false;

    boolean this_present_item_id = true;
    boolean that_present_item_id = true;
    if (this_present_item_id || that_present_item_id) {
      if (!(this_present_item_id && that_present_item_id))
        return false;
      if (this.item_id != that.item_id)
        return false;
    }

    boolean this_present_isSnapdeal = true;
    boolean that_present_isSnapdeal = true;
    if (this_present_isSnapdeal || that_present_isSnapdeal) {
      if (!(this_present_isSnapdeal && that_present_isSnapdeal))
        return false;
      if (this.isSnapdeal != that.isSnapdeal)
        return false;
    }

    boolean this_present_isFlipkart = true;
    boolean that_present_isFlipkart = true;
    if (this_present_isFlipkart || that_present_isFlipkart) {
      if (!(this_present_isFlipkart && that_present_isFlipkart))
        return false;
      if (this.isFlipkart != that.isFlipkart)
        return false;
    }

    boolean this_present_isAmazon = true;
    boolean that_present_isAmazon = true;
    if (this_present_isAmazon || that_present_isAmazon) {
      if (!(this_present_isAmazon && that_present_isAmazon))
        return false;
      if (this.isAmazon != that.isAmazon)
        return false;
    }

    boolean this_present_lowestSnapdealPrice = true;
    boolean that_present_lowestSnapdealPrice = true;
    if (this_present_lowestSnapdealPrice || that_present_lowestSnapdealPrice) {
      if (!(this_present_lowestSnapdealPrice && that_present_lowestSnapdealPrice))
        return false;
      if (this.lowestSnapdealPrice != that.lowestSnapdealPrice)
        return false;
    }

    boolean this_present_lowestFlipkartPrice = true;
    boolean that_present_lowestFlipkartPrice = true;
    if (this_present_lowestFlipkartPrice || that_present_lowestFlipkartPrice) {
      if (!(this_present_lowestFlipkartPrice && that_present_lowestFlipkartPrice))
        return false;
      if (this.lowestFlipkartPrice != that.lowestFlipkartPrice)
        return false;
    }

    boolean this_present_lowestMfnPrice = true;
    boolean that_present_lowestMfnPrice = true;
    if (this_present_lowestMfnPrice || that_present_lowestMfnPrice) {
      if (!(this_present_lowestMfnPrice && that_present_lowestMfnPrice))
        return false;
      if (this.lowestMfnPrice != that.lowestMfnPrice)
        return false;
    }

    boolean this_present_lowestFbaPrice = true;
    boolean that_present_lowestFbaPrice = true;
    if (this_present_lowestFbaPrice || that_present_lowestFbaPrice) {
      if (!(this_present_lowestFbaPrice && that_present_lowestFbaPrice))
        return false;
      if (this.lowestFbaPrice != that.lowestFbaPrice)
        return false;
    }

    boolean this_present_processed = true;
    boolean that_present_processed = true;
    if (this_present_processed || that_present_processed) {
      if (!(this_present_processed && that_present_processed))
        return false;
      if (this.processed != that.processed)
        return false;
    }

    boolean this_present_uploadId = true;
    boolean that_present_uploadId = true;
    if (this_present_uploadId || that_present_uploadId) {
      if (!(this_present_uploadId && that_present_uploadId))
        return false;
      if (this.uploadId != that.uploadId)
        return false;
    }

    return true;
  }

  @Override
  public int hashCode() {
    return 0;
  }

  public int compareTo(CompetitorPricing other) {
    if (!getClass().equals(other.getClass())) {
      return getClass().getName().compareTo(other.getClass().getName());
    }

    int lastComparison = 0;
    CompetitorPricing typedOther = (CompetitorPricing)other;

    lastComparison = Boolean.valueOf(isSetItem_id()).compareTo(typedOther.isSetItem_id());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetItem_id()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.item_id, typedOther.item_id);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetIsSnapdeal()).compareTo(typedOther.isSetIsSnapdeal());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetIsSnapdeal()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.isSnapdeal, typedOther.isSnapdeal);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetIsFlipkart()).compareTo(typedOther.isSetIsFlipkart());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetIsFlipkart()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.isFlipkart, typedOther.isFlipkart);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetIsAmazon()).compareTo(typedOther.isSetIsAmazon());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetIsAmazon()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.isAmazon, typedOther.isAmazon);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetLowestSnapdealPrice()).compareTo(typedOther.isSetLowestSnapdealPrice());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetLowestSnapdealPrice()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lowestSnapdealPrice, typedOther.lowestSnapdealPrice);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetLowestFlipkartPrice()).compareTo(typedOther.isSetLowestFlipkartPrice());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetLowestFlipkartPrice()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lowestFlipkartPrice, typedOther.lowestFlipkartPrice);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetLowestMfnPrice()).compareTo(typedOther.isSetLowestMfnPrice());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetLowestMfnPrice()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lowestMfnPrice, typedOther.lowestMfnPrice);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetLowestFbaPrice()).compareTo(typedOther.isSetLowestFbaPrice());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetLowestFbaPrice()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lowestFbaPrice, typedOther.lowestFbaPrice);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetProcessed()).compareTo(typedOther.isSetProcessed());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetProcessed()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.processed, typedOther.processed);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetUploadId()).compareTo(typedOther.isSetUploadId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetUploadId()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.uploadId, typedOther.uploadId);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    return 0;
  }

  public _Fields fieldForId(int fieldId) {
    return _Fields.findByThriftId(fieldId);
  }

  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
    org.apache.thrift.protocol.TField field;
    iprot.readStructBegin();
    while (true)
    {
      field = iprot.readFieldBegin();
      if (field.type == org.apache.thrift.protocol.TType.STOP) { 
        break;
      }
      switch (field.id) {
        case 1: // ITEM_ID
          if (field.type == org.apache.thrift.protocol.TType.I64) {
            this.item_id = iprot.readI64();
            setItem_idIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 2: // IS_SNAPDEAL
          if (field.type == org.apache.thrift.protocol.TType.BOOL) {
            this.isSnapdeal = iprot.readBool();
            setIsSnapdealIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 3: // IS_FLIPKART
          if (field.type == org.apache.thrift.protocol.TType.BOOL) {
            this.isFlipkart = iprot.readBool();
            setIsFlipkartIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 4: // IS_AMAZON
          if (field.type == org.apache.thrift.protocol.TType.BOOL) {
            this.isAmazon = iprot.readBool();
            setIsAmazonIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 5: // LOWEST_SNAPDEAL_PRICE
          if (field.type == org.apache.thrift.protocol.TType.DOUBLE) {
            this.lowestSnapdealPrice = iprot.readDouble();
            setLowestSnapdealPriceIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 6: // LOWEST_FLIPKART_PRICE
          if (field.type == org.apache.thrift.protocol.TType.DOUBLE) {
            this.lowestFlipkartPrice = iprot.readDouble();
            setLowestFlipkartPriceIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 7: // LOWEST_MFN_PRICE
          if (field.type == org.apache.thrift.protocol.TType.DOUBLE) {
            this.lowestMfnPrice = iprot.readDouble();
            setLowestMfnPriceIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 8: // LOWEST_FBA_PRICE
          if (field.type == org.apache.thrift.protocol.TType.DOUBLE) {
            this.lowestFbaPrice = iprot.readDouble();
            setLowestFbaPriceIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 9: // PROCESSED
          if (field.type == org.apache.thrift.protocol.TType.BOOL) {
            this.processed = iprot.readBool();
            setProcessedIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 10: // UPLOAD_ID
          if (field.type == org.apache.thrift.protocol.TType.I64) {
            this.uploadId = iprot.readI64();
            setUploadIdIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        default:
          org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
      }
      iprot.readFieldEnd();
    }
    iprot.readStructEnd();
    validate();
  }

  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
    validate();

    oprot.writeStructBegin(STRUCT_DESC);
    oprot.writeFieldBegin(ITEM_ID_FIELD_DESC);
    oprot.writeI64(this.item_id);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(IS_SNAPDEAL_FIELD_DESC);
    oprot.writeBool(this.isSnapdeal);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(IS_FLIPKART_FIELD_DESC);
    oprot.writeBool(this.isFlipkart);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(IS_AMAZON_FIELD_DESC);
    oprot.writeBool(this.isAmazon);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(LOWEST_SNAPDEAL_PRICE_FIELD_DESC);
    oprot.writeDouble(this.lowestSnapdealPrice);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(LOWEST_FLIPKART_PRICE_FIELD_DESC);
    oprot.writeDouble(this.lowestFlipkartPrice);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(LOWEST_MFN_PRICE_FIELD_DESC);
    oprot.writeDouble(this.lowestMfnPrice);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(LOWEST_FBA_PRICE_FIELD_DESC);
    oprot.writeDouble(this.lowestFbaPrice);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(PROCESSED_FIELD_DESC);
    oprot.writeBool(this.processed);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(UPLOAD_ID_FIELD_DESC);
    oprot.writeI64(this.uploadId);
    oprot.writeFieldEnd();
    oprot.writeFieldStop();
    oprot.writeStructEnd();
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder("CompetitorPricing(");
    boolean first = true;

    sb.append("item_id:");
    sb.append(this.item_id);
    first = false;
    if (!first) sb.append(", ");
    sb.append("isSnapdeal:");
    sb.append(this.isSnapdeal);
    first = false;
    if (!first) sb.append(", ");
    sb.append("isFlipkart:");
    sb.append(this.isFlipkart);
    first = false;
    if (!first) sb.append(", ");
    sb.append("isAmazon:");
    sb.append(this.isAmazon);
    first = false;
    if (!first) sb.append(", ");
    sb.append("lowestSnapdealPrice:");
    sb.append(this.lowestSnapdealPrice);
    first = false;
    if (!first) sb.append(", ");
    sb.append("lowestFlipkartPrice:");
    sb.append(this.lowestFlipkartPrice);
    first = false;
    if (!first) sb.append(", ");
    sb.append("lowestMfnPrice:");
    sb.append(this.lowestMfnPrice);
    first = false;
    if (!first) sb.append(", ");
    sb.append("lowestFbaPrice:");
    sb.append(this.lowestFbaPrice);
    first = false;
    if (!first) sb.append(", ");
    sb.append("processed:");
    sb.append(this.processed);
    first = false;
    if (!first) sb.append(", ");
    sb.append("uploadId:");
    sb.append(this.uploadId);
    first = false;
    sb.append(")");
    return sb.toString();
  }

  public void validate() throws org.apache.thrift.TException {
    // check for required fields
  }

  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
    try {
      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
    } catch (org.apache.thrift.TException te) {
      throw new java.io.IOException(te);
    }
  }

  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
    try {
      // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
      __isset_bit_vector = new BitSet(1);
      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
    } catch (org.apache.thrift.TException te) {
      throw new java.io.IOException(te);
    }
  }

}