All Downloads are FREE. Search and download functionalities are using the official Maven repository.

tech.aroma.thrift.ServiceAnnouncement Maven / Gradle / Ivy

Go to download

Part of the Aroma Project. This project contains the Service and Model Definitions. From this the Server and Client interfaces are generated for the Aroma Service.

There is a newer version: 2.2
Show newest version
/**
 * Autogenerated by Thrift Compiler (0.9.3)
 *
 * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 *  @generated
 */
package tech.aroma.thrift;

import org.apache.thrift.scheme.IScheme;
import org.apache.thrift.scheme.SchemeFactory;
import org.apache.thrift.scheme.StandardScheme;

import org.apache.thrift.scheme.TupleScheme;
import org.apache.thrift.protocol.TTupleProtocol;
import org.apache.thrift.protocol.TProtocolException;
import org.apache.thrift.EncodingUtils;
import org.apache.thrift.TException;
import org.apache.thrift.async.AsyncMethodCallback;
import org.apache.thrift.server.AbstractNonblockingServer.*;
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 javax.annotation.Generated;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
/**
 * Defines an Aroma announcement.
 * Examples include:
 * + Going down for system maintenance
 * + Looking for feedback
 * + New Update available
 * + Other news
 */
@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-05-10")
public class ServiceAnnouncement implements org.apache.thrift.TBase, java.io.Serializable, Cloneable, Comparable {
  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ServiceAnnouncement");

  private static final org.apache.thrift.protocol.TField MESSAGE_FIELD_DESC = new org.apache.thrift.protocol.TField("message", org.apache.thrift.protocol.TType.STRING, (short)1);
  private static final org.apache.thrift.protocol.TField IMPORTANCE_FIELD_DESC = new org.apache.thrift.protocol.TField("importance", org.apache.thrift.protocol.TType.I32, (short)2);
  private static final org.apache.thrift.protocol.TField ID_FIELD_DESC = new org.apache.thrift.protocol.TField("id", org.apache.thrift.protocol.TType.STRING, (short)3);
  private static final org.apache.thrift.protocol.TField TIME_OF_EXPIRATION_FIELD_DESC = new org.apache.thrift.protocol.TField("timeOfExpiration", org.apache.thrift.protocol.TType.I64, (short)4);

  private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>();
  static {
    schemes.put(StandardScheme.class, new ServiceAnnouncementStandardSchemeFactory());
    schemes.put(TupleScheme.class, new ServiceAnnouncementTupleSchemeFactory());
  }

  public String message; // required
  /**
   * 
   * @see Urgency
   */
  public Urgency importance; // required
  /**
   * Each announcement has an ID so that it can be dismissed by users.
   */
  public String id; // required
  /**
   * An announcement is irrelevant after this time.
   */
  public long timeOfExpiration; // 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 {
    MESSAGE((short)1, "message"),
    /**
     * 
     * @see Urgency
     */
    IMPORTANCE((short)2, "importance"),
    /**
     * Each announcement has an ID so that it can be dismissed by users.
     */
    ID((short)3, "id"),
    /**
     * An announcement is irrelevant after this time.
     */
    TIME_OF_EXPIRATION((short)4, "timeOfExpiration");

    private static final Map byName = new HashMap();

    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: // MESSAGE
          return MESSAGE;
        case 2: // IMPORTANCE
          return IMPORTANCE;
        case 3: // ID
          return ID;
        case 4: // TIME_OF_EXPIRATION
          return TIME_OF_EXPIRATION;
        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 __TIMEOFEXPIRATION_ISSET_ID = 0;
  private byte __isset_bitfield = 0;
  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.MESSAGE, new org.apache.thrift.meta_data.FieldMetaData("message", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
    tmpMap.put(_Fields.IMPORTANCE, new org.apache.thrift.meta_data.FieldMetaData("importance", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, Urgency.class)));
    tmpMap.put(_Fields.ID, new org.apache.thrift.meta_data.FieldMetaData("id", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING        , "uuid")));
    tmpMap.put(_Fields.TIME_OF_EXPIRATION, new org.apache.thrift.meta_data.FieldMetaData("timeOfExpiration", org.apache.thrift.TFieldRequirementType.DEFAULT, 
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64        , "timestamp")));
    metaDataMap = Collections.unmodifiableMap(tmpMap);
    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ServiceAnnouncement.class, metaDataMap);
  }

  public ServiceAnnouncement() {
  }

  public ServiceAnnouncement(
    String message,
    Urgency importance,
    String id,
    long timeOfExpiration)
  {
    this();
    this.message = message;
    this.importance = importance;
    this.id = id;
    this.timeOfExpiration = timeOfExpiration;
    setTimeOfExpirationIsSet(true);
  }

  /**
   * Performs a deep copy on other.
   */
  public ServiceAnnouncement(ServiceAnnouncement other) {
    __isset_bitfield = other.__isset_bitfield;
    if (other.isSetMessage()) {
      this.message = other.message;
    }
    if (other.isSetImportance()) {
      this.importance = other.importance;
    }
    if (other.isSetId()) {
      this.id = other.id;
    }
    this.timeOfExpiration = other.timeOfExpiration;
  }

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

  @Override
  public void clear() {
    this.message = null;
    this.importance = null;
    this.id = null;
    setTimeOfExpirationIsSet(false);
    this.timeOfExpiration = 0;
  }

  public String getMessage() {
    return this.message;
  }

  public ServiceAnnouncement setMessage(String message) {
    this.message = message;
    return this;
  }

  public void unsetMessage() {
    this.message = null;
  }

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

  public void setMessageIsSet(boolean value) {
    if (!value) {
      this.message = null;
    }
  }

  /**
   * 
   * @see Urgency
   */
  public Urgency getImportance() {
    return this.importance;
  }

  /**
   * 
   * @see Urgency
   */
  public ServiceAnnouncement setImportance(Urgency importance) {
    this.importance = importance;
    return this;
  }

  public void unsetImportance() {
    this.importance = null;
  }

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

  public void setImportanceIsSet(boolean value) {
    if (!value) {
      this.importance = null;
    }
  }

  /**
   * Each announcement has an ID so that it can be dismissed by users.
   */
  public String getId() {
    return this.id;
  }

  /**
   * Each announcement has an ID so that it can be dismissed by users.
   */
  public ServiceAnnouncement setId(String id) {
    this.id = id;
    return this;
  }

  public void unsetId() {
    this.id = null;
  }

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

  public void setIdIsSet(boolean value) {
    if (!value) {
      this.id = null;
    }
  }

  /**
   * An announcement is irrelevant after this time.
   */
  public long getTimeOfExpiration() {
    return this.timeOfExpiration;
  }

  /**
   * An announcement is irrelevant after this time.
   */
  public ServiceAnnouncement setTimeOfExpiration(long timeOfExpiration) {
    this.timeOfExpiration = timeOfExpiration;
    setTimeOfExpirationIsSet(true);
    return this;
  }

  public void unsetTimeOfExpiration() {
    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __TIMEOFEXPIRATION_ISSET_ID);
  }

  /** Returns true if field timeOfExpiration is set (has been assigned a value) and false otherwise */
  public boolean isSetTimeOfExpiration() {
    return EncodingUtils.testBit(__isset_bitfield, __TIMEOFEXPIRATION_ISSET_ID);
  }

  public void setTimeOfExpirationIsSet(boolean value) {
    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __TIMEOFEXPIRATION_ISSET_ID, value);
  }

  public void setFieldValue(_Fields field, Object value) {
    switch (field) {
    case MESSAGE:
      if (value == null) {
        unsetMessage();
      } else {
        setMessage((String)value);
      }
      break;

    case IMPORTANCE:
      if (value == null) {
        unsetImportance();
      } else {
        setImportance((Urgency)value);
      }
      break;

    case ID:
      if (value == null) {
        unsetId();
      } else {
        setId((String)value);
      }
      break;

    case TIME_OF_EXPIRATION:
      if (value == null) {
        unsetTimeOfExpiration();
      } else {
        setTimeOfExpiration((Long)value);
      }
      break;

    }
  }

  public Object getFieldValue(_Fields field) {
    switch (field) {
    case MESSAGE:
      return getMessage();

    case IMPORTANCE:
      return getImportance();

    case ID:
      return getId();

    case TIME_OF_EXPIRATION:
      return getTimeOfExpiration();

    }
    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 MESSAGE:
      return isSetMessage();
    case IMPORTANCE:
      return isSetImportance();
    case ID:
      return isSetId();
    case TIME_OF_EXPIRATION:
      return isSetTimeOfExpiration();
    }
    throw new IllegalStateException();
  }

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

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

    boolean this_present_message = true && this.isSetMessage();
    boolean that_present_message = true && that.isSetMessage();
    if (this_present_message || that_present_message) {
      if (!(this_present_message && that_present_message))
        return false;
      if (!this.message.equals(that.message))
        return false;
    }

    boolean this_present_importance = true && this.isSetImportance();
    boolean that_present_importance = true && that.isSetImportance();
    if (this_present_importance || that_present_importance) {
      if (!(this_present_importance && that_present_importance))
        return false;
      if (!this.importance.equals(that.importance))
        return false;
    }

    boolean this_present_id = true && this.isSetId();
    boolean that_present_id = true && that.isSetId();
    if (this_present_id || that_present_id) {
      if (!(this_present_id && that_present_id))
        return false;
      if (!this.id.equals(that.id))
        return false;
    }

    boolean this_present_timeOfExpiration = true;
    boolean that_present_timeOfExpiration = true;
    if (this_present_timeOfExpiration || that_present_timeOfExpiration) {
      if (!(this_present_timeOfExpiration && that_present_timeOfExpiration))
        return false;
      if (this.timeOfExpiration != that.timeOfExpiration)
        return false;
    }

    return true;
  }

  @Override
  public int hashCode() {
    List list = new ArrayList();

    boolean present_message = true && (isSetMessage());
    list.add(present_message);
    if (present_message)
      list.add(message);

    boolean present_importance = true && (isSetImportance());
    list.add(present_importance);
    if (present_importance)
      list.add(importance.getValue());

    boolean present_id = true && (isSetId());
    list.add(present_id);
    if (present_id)
      list.add(id);

    boolean present_timeOfExpiration = true;
    list.add(present_timeOfExpiration);
    if (present_timeOfExpiration)
      list.add(timeOfExpiration);

    return list.hashCode();
  }

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

    int lastComparison = 0;

    lastComparison = Boolean.valueOf(isSetMessage()).compareTo(other.isSetMessage());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetMessage()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.message, other.message);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetImportance()).compareTo(other.isSetImportance());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetImportance()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.importance, other.importance);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetId()).compareTo(other.isSetId());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetId()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.id, other.id);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetTimeOfExpiration()).compareTo(other.isSetTimeOfExpiration());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetTimeOfExpiration()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.timeOfExpiration, other.timeOfExpiration);
      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 {
    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
  }

  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
  }

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

    sb.append("message:");
    if (this.message == null) {
      sb.append("null");
    } else {
      sb.append(this.message);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("importance:");
    if (this.importance == null) {
      sb.append("null");
    } else {
      sb.append(this.importance);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("id:");
    if (this.id == null) {
      sb.append("null");
    } else {
      sb.append(this.id);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("timeOfExpiration:");
    sb.append(this.timeOfExpiration);
    first = false;
    sb.append(")");
    return sb.toString();
  }

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

  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_bitfield = 0;
      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);
    }
  }

  private static class ServiceAnnouncementStandardSchemeFactory implements SchemeFactory {
    public ServiceAnnouncementStandardScheme getScheme() {
      return new ServiceAnnouncementStandardScheme();
    }
  }

  private static class ServiceAnnouncementStandardScheme extends StandardScheme {

    public void read(org.apache.thrift.protocol.TProtocol iprot, ServiceAnnouncement struct) throws org.apache.thrift.TException {
      org.apache.thrift.protocol.TField schemeField;
      iprot.readStructBegin();
      while (true)
      {
        schemeField = iprot.readFieldBegin();
        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
          break;
        }
        switch (schemeField.id) {
          case 1: // MESSAGE
            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
              struct.message = iprot.readString();
              struct.setMessageIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 2: // IMPORTANCE
            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
              struct.importance = tech.aroma.thrift.Urgency.findByValue(iprot.readI32());
              struct.setImportanceIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 3: // ID
            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
              struct.id = iprot.readString();
              struct.setIdIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 4: // TIME_OF_EXPIRATION
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.timeOfExpiration = iprot.readI64();
              struct.setTimeOfExpirationIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          default:
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
        }
        iprot.readFieldEnd();
      }
      iprot.readStructEnd();

      // check for required fields of primitive type, which can't be checked in the validate method
      struct.validate();
    }

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

      oprot.writeStructBegin(STRUCT_DESC);
      if (struct.message != null) {
        oprot.writeFieldBegin(MESSAGE_FIELD_DESC);
        oprot.writeString(struct.message);
        oprot.writeFieldEnd();
      }
      if (struct.importance != null) {
        oprot.writeFieldBegin(IMPORTANCE_FIELD_DESC);
        oprot.writeI32(struct.importance.getValue());
        oprot.writeFieldEnd();
      }
      if (struct.id != null) {
        oprot.writeFieldBegin(ID_FIELD_DESC);
        oprot.writeString(struct.id);
        oprot.writeFieldEnd();
      }
      oprot.writeFieldBegin(TIME_OF_EXPIRATION_FIELD_DESC);
      oprot.writeI64(struct.timeOfExpiration);
      oprot.writeFieldEnd();
      oprot.writeFieldStop();
      oprot.writeStructEnd();
    }

  }

  private static class ServiceAnnouncementTupleSchemeFactory implements SchemeFactory {
    public ServiceAnnouncementTupleScheme getScheme() {
      return new ServiceAnnouncementTupleScheme();
    }
  }

  private static class ServiceAnnouncementTupleScheme extends TupleScheme {

    @Override
    public void write(org.apache.thrift.protocol.TProtocol prot, ServiceAnnouncement struct) throws org.apache.thrift.TException {
      TTupleProtocol oprot = (TTupleProtocol) prot;
      BitSet optionals = new BitSet();
      if (struct.isSetMessage()) {
        optionals.set(0);
      }
      if (struct.isSetImportance()) {
        optionals.set(1);
      }
      if (struct.isSetId()) {
        optionals.set(2);
      }
      if (struct.isSetTimeOfExpiration()) {
        optionals.set(3);
      }
      oprot.writeBitSet(optionals, 4);
      if (struct.isSetMessage()) {
        oprot.writeString(struct.message);
      }
      if (struct.isSetImportance()) {
        oprot.writeI32(struct.importance.getValue());
      }
      if (struct.isSetId()) {
        oprot.writeString(struct.id);
      }
      if (struct.isSetTimeOfExpiration()) {
        oprot.writeI64(struct.timeOfExpiration);
      }
    }

    @Override
    public void read(org.apache.thrift.protocol.TProtocol prot, ServiceAnnouncement struct) throws org.apache.thrift.TException {
      TTupleProtocol iprot = (TTupleProtocol) prot;
      BitSet incoming = iprot.readBitSet(4);
      if (incoming.get(0)) {
        struct.message = iprot.readString();
        struct.setMessageIsSet(true);
      }
      if (incoming.get(1)) {
        struct.importance = tech.aroma.thrift.Urgency.findByValue(iprot.readI32());
        struct.setImportanceIsSet(true);
      }
      if (incoming.get(2)) {
        struct.id = iprot.readString();
        struct.setIdIsSet(true);
      }
      if (incoming.get(3)) {
        struct.timeOfExpiration = iprot.readI64();
        struct.setTimeOfExpirationIsSet(true);
      }
    }
  }

}