Subversion Repositories SmartDukaan

Rev

Rev 8961 | 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.order;

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 FlipkartOrder implements org.apache.thrift.TBase<FlipkartOrder, FlipkartOrder._Fields>, java.io.Serializable, Cloneable {
  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("FlipkartOrder");

  private static final org.apache.thrift.protocol.TField FLIPKART_ORDER_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("flipkartOrderId", org.apache.thrift.protocol.TType.STRING, (short)1);
  private static final org.apache.thrift.protocol.TField FLIPKART_SUB_ORDER_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("flipkartSubOrderId", org.apache.thrift.protocol.TType.STRING, (short)2);
  private static final org.apache.thrift.protocol.TField FLIPKART_TXN_DATE_FIELD_DESC = new org.apache.thrift.protocol.TField("flipkartTxnDate", org.apache.thrift.protocol.TType.I64, (short)3);
  private static final org.apache.thrift.protocol.TField ORDER_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("orderId", org.apache.thrift.protocol.TType.I64, (short)4);
  private static final org.apache.thrift.protocol.TField SHIPPING_PRICE_FIELD_DESC = new org.apache.thrift.protocol.TField("shippingPrice", org.apache.thrift.protocol.TType.DOUBLE, (short)5);
  private static final org.apache.thrift.protocol.TField OCTROI_FEE_FIELD_DESC = new org.apache.thrift.protocol.TField("octroiFee", org.apache.thrift.protocol.TType.DOUBLE, (short)6);
  private static final org.apache.thrift.protocol.TField EMI_FEE_FIELD_DESC = new org.apache.thrift.protocol.TField("emiFee", org.apache.thrift.protocol.TType.DOUBLE, (short)7);
  private static final org.apache.thrift.protocol.TField MAX_NLC_FIELD_DESC = new org.apache.thrift.protocol.TField("maxNlc", org.apache.thrift.protocol.TType.DOUBLE, (short)8);

  private String flipkartOrderId; // required
  private String flipkartSubOrderId; // required
  private long flipkartTxnDate; // required
  private long orderId; // required
  private double shippingPrice; // required
  private double octroiFee; // required
  private double emiFee; // required
  private double maxNlc; // 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 {
    FLIPKART_ORDER_ID((short)1, "flipkartOrderId"),
    FLIPKART_SUB_ORDER_ID((short)2, "flipkartSubOrderId"),
    FLIPKART_TXN_DATE((short)3, "flipkartTxnDate"),
    ORDER_ID((short)4, "orderId"),
    SHIPPING_PRICE((short)5, "shippingPrice"),
    OCTROI_FEE((short)6, "octroiFee"),
    EMI_FEE((short)7, "emiFee"),
    MAX_NLC((short)8, "maxNlc");

    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: // FLIPKART_ORDER_ID
          return FLIPKART_ORDER_ID;
        case 2: // FLIPKART_SUB_ORDER_ID
          return FLIPKART_SUB_ORDER_ID;
        case 3: // FLIPKART_TXN_DATE
          return FLIPKART_TXN_DATE;
        case 4: // ORDER_ID
          return ORDER_ID;
        case 5: // SHIPPING_PRICE
          return SHIPPING_PRICE;
        case 6: // OCTROI_FEE
          return OCTROI_FEE;
        case 7: // EMI_FEE
          return EMI_FEE;
        case 8: // MAX_NLC
          return MAX_NLC;
        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 __FLIPKARTTXNDATE_ISSET_ID = 0;
  private static final int __ORDERID_ISSET_ID = 1;
  private static final int __SHIPPINGPRICE_ISSET_ID = 2;
  private static final int __OCTROIFEE_ISSET_ID = 3;
  private static final int __EMIFEE_ISSET_ID = 4;
  private static final int __MAXNLC_ISSET_ID = 5;
  private BitSet __isset_bit_vector = new BitSet(6);

  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.FLIPKART_ORDER_ID, new org.apache.thrift.meta_data.FieldMetaData("flipkartOrderId", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    tmpMap.put(_Fields.FLIPKART_SUB_ORDER_ID, new org.apache.thrift.meta_data.FieldMetaData("flipkartSubOrderId", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    tmpMap.put(_Fields.FLIPKART_TXN_DATE, new org.apache.thrift.meta_data.FieldMetaData("flipkartTxnDate", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.ORDER_ID, new org.apache.thrift.meta_data.FieldMetaData("orderId", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
    tmpMap.put(_Fields.SHIPPING_PRICE, new org.apache.thrift.meta_data.FieldMetaData("shippingPrice", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
    tmpMap.put(_Fields.OCTROI_FEE, new org.apache.thrift.meta_data.FieldMetaData("octroiFee", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
    tmpMap.put(_Fields.EMI_FEE, new org.apache.thrift.meta_data.FieldMetaData("emiFee", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
    tmpMap.put(_Fields.MAX_NLC, new org.apache.thrift.meta_data.FieldMetaData("maxNlc", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
    metaDataMap = Collections.unmodifiableMap(tmpMap);
    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(FlipkartOrder.class, metaDataMap);
  }

  public FlipkartOrder() {
  }

  public FlipkartOrder(
    String flipkartOrderId,
    String flipkartSubOrderId,
    long flipkartTxnDate,
    long orderId,
    double shippingPrice,
    double octroiFee,
    double emiFee,
    double maxNlc)
  {
    this();
    this.flipkartOrderId = flipkartOrderId;
    this.flipkartSubOrderId = flipkartSubOrderId;
    this.flipkartTxnDate = flipkartTxnDate;
    setFlipkartTxnDateIsSet(true);
    this.orderId = orderId;
    setOrderIdIsSet(true);
    this.shippingPrice = shippingPrice;
    setShippingPriceIsSet(true);
    this.octroiFee = octroiFee;
    setOctroiFeeIsSet(true);
    this.emiFee = emiFee;
    setEmiFeeIsSet(true);
    this.maxNlc = maxNlc;
    setMaxNlcIsSet(true);
  }

  /**
   * Performs a deep copy on <i>other</i>.
   */
  public FlipkartOrder(FlipkartOrder other) {
    __isset_bit_vector.clear();
    __isset_bit_vector.or(other.__isset_bit_vector);
    if (other.isSetFlipkartOrderId()) {
      this.flipkartOrderId = other.flipkartOrderId;
    }
    if (other.isSetFlipkartSubOrderId()) {
      this.flipkartSubOrderId = other.flipkartSubOrderId;
    }
    this.flipkartTxnDate = other.flipkartTxnDate;
    this.orderId = other.orderId;
    this.shippingPrice = other.shippingPrice;
    this.octroiFee = other.octroiFee;
    this.emiFee = other.emiFee;
    this.maxNlc = other.maxNlc;
  }

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

  @Override
  public void clear() {
    this.flipkartOrderId = null;
    this.flipkartSubOrderId = null;
    setFlipkartTxnDateIsSet(false);
    this.flipkartTxnDate = 0;
    setOrderIdIsSet(false);
    this.orderId = 0;
    setShippingPriceIsSet(false);
    this.shippingPrice = 0.0;
    setOctroiFeeIsSet(false);
    this.octroiFee = 0.0;
    setEmiFeeIsSet(false);
    this.emiFee = 0.0;
    setMaxNlcIsSet(false);
    this.maxNlc = 0.0;
  }

  public String getFlipkartOrderId() {
    return this.flipkartOrderId;
  }

  public void setFlipkartOrderId(String flipkartOrderId) {
    this.flipkartOrderId = flipkartOrderId;
  }

  public void unsetFlipkartOrderId() {
    this.flipkartOrderId = null;
  }

  /** Returns true if field flipkartOrderId is set (has been assigned a value) and false otherwise */
  public boolean isSetFlipkartOrderId() {
    return this.flipkartOrderId != null;
  }

  public void setFlipkartOrderIdIsSet(boolean value) {
    if (!value) {
      this.flipkartOrderId = null;
    }
  }

  public String getFlipkartSubOrderId() {
    return this.flipkartSubOrderId;
  }

  public void setFlipkartSubOrderId(String flipkartSubOrderId) {
    this.flipkartSubOrderId = flipkartSubOrderId;
  }

  public void unsetFlipkartSubOrderId() {
    this.flipkartSubOrderId = null;
  }

  /** Returns true if field flipkartSubOrderId is set (has been assigned a value) and false otherwise */
  public boolean isSetFlipkartSubOrderId() {
    return this.flipkartSubOrderId != null;
  }

  public void setFlipkartSubOrderIdIsSet(boolean value) {
    if (!value) {
      this.flipkartSubOrderId = null;
    }
  }

  public long getFlipkartTxnDate() {
    return this.flipkartTxnDate;
  }

  public void setFlipkartTxnDate(long flipkartTxnDate) {
    this.flipkartTxnDate = flipkartTxnDate;
    setFlipkartTxnDateIsSet(true);
  }

  public void unsetFlipkartTxnDate() {
    __isset_bit_vector.clear(__FLIPKARTTXNDATE_ISSET_ID);
  }

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

  public void setFlipkartTxnDateIsSet(boolean value) {
    __isset_bit_vector.set(__FLIPKARTTXNDATE_ISSET_ID, value);
  }

  public long getOrderId() {
    return this.orderId;
  }

  public void setOrderId(long orderId) {
    this.orderId = orderId;
    setOrderIdIsSet(true);
  }

  public void unsetOrderId() {
    __isset_bit_vector.clear(__ORDERID_ISSET_ID);
  }

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

  public void setOrderIdIsSet(boolean value) {
    __isset_bit_vector.set(__ORDERID_ISSET_ID, value);
  }

  public double getShippingPrice() {
    return this.shippingPrice;
  }

  public void setShippingPrice(double shippingPrice) {
    this.shippingPrice = shippingPrice;
    setShippingPriceIsSet(true);
  }

  public void unsetShippingPrice() {
    __isset_bit_vector.clear(__SHIPPINGPRICE_ISSET_ID);
  }

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

  public void setShippingPriceIsSet(boolean value) {
    __isset_bit_vector.set(__SHIPPINGPRICE_ISSET_ID, value);
  }

  public double getOctroiFee() {
    return this.octroiFee;
  }

  public void setOctroiFee(double octroiFee) {
    this.octroiFee = octroiFee;
    setOctroiFeeIsSet(true);
  }

  public void unsetOctroiFee() {
    __isset_bit_vector.clear(__OCTROIFEE_ISSET_ID);
  }

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

  public void setOctroiFeeIsSet(boolean value) {
    __isset_bit_vector.set(__OCTROIFEE_ISSET_ID, value);
  }

  public double getEmiFee() {
    return this.emiFee;
  }

  public void setEmiFee(double emiFee) {
    this.emiFee = emiFee;
    setEmiFeeIsSet(true);
  }

  public void unsetEmiFee() {
    __isset_bit_vector.clear(__EMIFEE_ISSET_ID);
  }

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

  public void setEmiFeeIsSet(boolean value) {
    __isset_bit_vector.set(__EMIFEE_ISSET_ID, value);
  }

  public double getMaxNlc() {
    return this.maxNlc;
  }

  public void setMaxNlc(double maxNlc) {
    this.maxNlc = maxNlc;
    setMaxNlcIsSet(true);
  }

  public void unsetMaxNlc() {
    __isset_bit_vector.clear(__MAXNLC_ISSET_ID);
  }

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

  public void setMaxNlcIsSet(boolean value) {
    __isset_bit_vector.set(__MAXNLC_ISSET_ID, value);
  }

  public void setFieldValue(_Fields field, Object value) {
    switch (field) {
    case FLIPKART_ORDER_ID:
      if (value == null) {
        unsetFlipkartOrderId();
      } else {
        setFlipkartOrderId((String)value);
      }
      break;

    case FLIPKART_SUB_ORDER_ID:
      if (value == null) {
        unsetFlipkartSubOrderId();
      } else {
        setFlipkartSubOrderId((String)value);
      }
      break;

    case FLIPKART_TXN_DATE:
      if (value == null) {
        unsetFlipkartTxnDate();
      } else {
        setFlipkartTxnDate((Long)value);
      }
      break;

    case ORDER_ID:
      if (value == null) {
        unsetOrderId();
      } else {
        setOrderId((Long)value);
      }
      break;

    case SHIPPING_PRICE:
      if (value == null) {
        unsetShippingPrice();
      } else {
        setShippingPrice((Double)value);
      }
      break;

    case OCTROI_FEE:
      if (value == null) {
        unsetOctroiFee();
      } else {
        setOctroiFee((Double)value);
      }
      break;

    case EMI_FEE:
      if (value == null) {
        unsetEmiFee();
      } else {
        setEmiFee((Double)value);
      }
      break;

    case MAX_NLC:
      if (value == null) {
        unsetMaxNlc();
      } else {
        setMaxNlc((Double)value);
      }
      break;

    }
  }

  public Object getFieldValue(_Fields field) {
    switch (field) {
    case FLIPKART_ORDER_ID:
      return getFlipkartOrderId();

    case FLIPKART_SUB_ORDER_ID:
      return getFlipkartSubOrderId();

    case FLIPKART_TXN_DATE:
      return Long.valueOf(getFlipkartTxnDate());

    case ORDER_ID:
      return Long.valueOf(getOrderId());

    case SHIPPING_PRICE:
      return Double.valueOf(getShippingPrice());

    case OCTROI_FEE:
      return Double.valueOf(getOctroiFee());

    case EMI_FEE:
      return Double.valueOf(getEmiFee());

    case MAX_NLC:
      return Double.valueOf(getMaxNlc());

    }
    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 FLIPKART_ORDER_ID:
      return isSetFlipkartOrderId();
    case FLIPKART_SUB_ORDER_ID:
      return isSetFlipkartSubOrderId();
    case FLIPKART_TXN_DATE:
      return isSetFlipkartTxnDate();
    case ORDER_ID:
      return isSetOrderId();
    case SHIPPING_PRICE:
      return isSetShippingPrice();
    case OCTROI_FEE:
      return isSetOctroiFee();
    case EMI_FEE:
      return isSetEmiFee();
    case MAX_NLC:
      return isSetMaxNlc();
    }
    throw new IllegalStateException();
  }

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

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

    boolean this_present_flipkartOrderId = true && this.isSetFlipkartOrderId();
    boolean that_present_flipkartOrderId = true && that.isSetFlipkartOrderId();
    if (this_present_flipkartOrderId || that_present_flipkartOrderId) {
      if (!(this_present_flipkartOrderId && that_present_flipkartOrderId))
        return false;
      if (!this.flipkartOrderId.equals(that.flipkartOrderId))
        return false;
    }

    boolean this_present_flipkartSubOrderId = true && this.isSetFlipkartSubOrderId();
    boolean that_present_flipkartSubOrderId = true && that.isSetFlipkartSubOrderId();
    if (this_present_flipkartSubOrderId || that_present_flipkartSubOrderId) {
      if (!(this_present_flipkartSubOrderId && that_present_flipkartSubOrderId))
        return false;
      if (!this.flipkartSubOrderId.equals(that.flipkartSubOrderId))
        return false;
    }

    boolean this_present_flipkartTxnDate = true;
    boolean that_present_flipkartTxnDate = true;
    if (this_present_flipkartTxnDate || that_present_flipkartTxnDate) {
      if (!(this_present_flipkartTxnDate && that_present_flipkartTxnDate))
        return false;
      if (this.flipkartTxnDate != that.flipkartTxnDate)
        return false;
    }

    boolean this_present_orderId = true;
    boolean that_present_orderId = true;
    if (this_present_orderId || that_present_orderId) {
      if (!(this_present_orderId && that_present_orderId))
        return false;
      if (this.orderId != that.orderId)
        return false;
    }

    boolean this_present_shippingPrice = true;
    boolean that_present_shippingPrice = true;
    if (this_present_shippingPrice || that_present_shippingPrice) {
      if (!(this_present_shippingPrice && that_present_shippingPrice))
        return false;
      if (this.shippingPrice != that.shippingPrice)
        return false;
    }

    boolean this_present_octroiFee = true;
    boolean that_present_octroiFee = true;
    if (this_present_octroiFee || that_present_octroiFee) {
      if (!(this_present_octroiFee && that_present_octroiFee))
        return false;
      if (this.octroiFee != that.octroiFee)
        return false;
    }

    boolean this_present_emiFee = true;
    boolean that_present_emiFee = true;
    if (this_present_emiFee || that_present_emiFee) {
      if (!(this_present_emiFee && that_present_emiFee))
        return false;
      if (this.emiFee != that.emiFee)
        return false;
    }

    boolean this_present_maxNlc = true;
    boolean that_present_maxNlc = true;
    if (this_present_maxNlc || that_present_maxNlc) {
      if (!(this_present_maxNlc && that_present_maxNlc))
        return false;
      if (this.maxNlc != that.maxNlc)
        return false;
    }

    return true;
  }

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

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

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

    lastComparison = Boolean.valueOf(isSetFlipkartOrderId()).compareTo(typedOther.isSetFlipkartOrderId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetFlipkartOrderId()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flipkartOrderId, typedOther.flipkartOrderId);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetFlipkartSubOrderId()).compareTo(typedOther.isSetFlipkartSubOrderId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetFlipkartSubOrderId()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flipkartSubOrderId, typedOther.flipkartSubOrderId);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetFlipkartTxnDate()).compareTo(typedOther.isSetFlipkartTxnDate());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetFlipkartTxnDate()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.flipkartTxnDate, typedOther.flipkartTxnDate);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetOrderId()).compareTo(typedOther.isSetOrderId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetOrderId()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.orderId, typedOther.orderId);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetShippingPrice()).compareTo(typedOther.isSetShippingPrice());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetShippingPrice()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.shippingPrice, typedOther.shippingPrice);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetOctroiFee()).compareTo(typedOther.isSetOctroiFee());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetOctroiFee()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.octroiFee, typedOther.octroiFee);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetEmiFee()).compareTo(typedOther.isSetEmiFee());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetEmiFee()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.emiFee, typedOther.emiFee);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetMaxNlc()).compareTo(typedOther.isSetMaxNlc());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetMaxNlc()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxNlc, typedOther.maxNlc);
      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: // FLIPKART_ORDER_ID
          if (field.type == org.apache.thrift.protocol.TType.STRING) {
            this.flipkartOrderId = iprot.readString();
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 2: // FLIPKART_SUB_ORDER_ID
          if (field.type == org.apache.thrift.protocol.TType.STRING) {
            this.flipkartSubOrderId = iprot.readString();
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 3: // FLIPKART_TXN_DATE
          if (field.type == org.apache.thrift.protocol.TType.I64) {
            this.flipkartTxnDate = iprot.readI64();
            setFlipkartTxnDateIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 4: // ORDER_ID
          if (field.type == org.apache.thrift.protocol.TType.I64) {
            this.orderId = iprot.readI64();
            setOrderIdIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 5: // SHIPPING_PRICE
          if (field.type == org.apache.thrift.protocol.TType.DOUBLE) {
            this.shippingPrice = iprot.readDouble();
            setShippingPriceIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 6: // OCTROI_FEE
          if (field.type == org.apache.thrift.protocol.TType.DOUBLE) {
            this.octroiFee = iprot.readDouble();
            setOctroiFeeIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 7: // EMI_FEE
          if (field.type == org.apache.thrift.protocol.TType.DOUBLE) {
            this.emiFee = iprot.readDouble();
            setEmiFeeIsSet(true);
          } else { 
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, field.type);
          }
          break;
        case 8: // MAX_NLC
          if (field.type == org.apache.thrift.protocol.TType.DOUBLE) {
            this.maxNlc = iprot.readDouble();
            setMaxNlcIsSet(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);
    if (this.flipkartOrderId != null) {
      oprot.writeFieldBegin(FLIPKART_ORDER_ID_FIELD_DESC);
      oprot.writeString(this.flipkartOrderId);
      oprot.writeFieldEnd();
    }
    if (this.flipkartSubOrderId != null) {
      oprot.writeFieldBegin(FLIPKART_SUB_ORDER_ID_FIELD_DESC);
      oprot.writeString(this.flipkartSubOrderId);
      oprot.writeFieldEnd();
    }
    oprot.writeFieldBegin(FLIPKART_TXN_DATE_FIELD_DESC);
    oprot.writeI64(this.flipkartTxnDate);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(ORDER_ID_FIELD_DESC);
    oprot.writeI64(this.orderId);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(SHIPPING_PRICE_FIELD_DESC);
    oprot.writeDouble(this.shippingPrice);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(OCTROI_FEE_FIELD_DESC);
    oprot.writeDouble(this.octroiFee);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(EMI_FEE_FIELD_DESC);
    oprot.writeDouble(this.emiFee);
    oprot.writeFieldEnd();
    oprot.writeFieldBegin(MAX_NLC_FIELD_DESC);
    oprot.writeDouble(this.maxNlc);
    oprot.writeFieldEnd();
    oprot.writeFieldStop();
    oprot.writeStructEnd();
  }

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

    sb.append("flipkartOrderId:");
    if (this.flipkartOrderId == null) {
      sb.append("null");
    } else {
      sb.append(this.flipkartOrderId);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("flipkartSubOrderId:");
    if (this.flipkartSubOrderId == null) {
      sb.append("null");
    } else {
      sb.append(this.flipkartSubOrderId);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("flipkartTxnDate:");
    sb.append(this.flipkartTxnDate);
    first = false;
    if (!first) sb.append(", ");
    sb.append("orderId:");
    sb.append(this.orderId);
    first = false;
    if (!first) sb.append(", ");
    sb.append("shippingPrice:");
    sb.append(this.shippingPrice);
    first = false;
    if (!first) sb.append(", ");
    sb.append("octroiFee:");
    sb.append(this.octroiFee);
    first = false;
    if (!first) sb.append(", ");
    sb.append("emiFee:");
    sb.append(this.emiFee);
    first = false;
    if (!first) sb.append(", ");
    sb.append("maxNlc:");
    sb.append(this.maxNlc);
    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);
    }
  }

}