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

org.gel.models.participant.avro.GermlineSample Maven / Gradle / Ivy

/**
 * Autogenerated by Avro
 * 
 * DO NOT EDIT DIRECTLY
 */
package org.gel.models.participant.avro;  
@SuppressWarnings("all")
/** A germline sample */
@org.apache.avro.specific.AvroGenerated
public class GermlineSample extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord {
  public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"GermlineSample\",\"namespace\":\"org.gel.models.participant.avro\",\"doc\":\"A germline sample\",\"fields\":[{\"name\":\"sampleId\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Sample identifier (e.g, LP00012645_5GH))\"},{\"name\":\"labSampleId\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Lab sample identifier\"},{\"name\":\"LDPCode\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"LDP Code (Local Delivery Partner)\"},{\"name\":\"source\",\"type\":[\"null\",{\"type\":\"enum\",\"name\":\"SampleSource\",\"doc\":\"The source of the sample\\n    NOTE: IN GMS, BONE_MARROW_ASPIRATE_TUMOUR_CELLS and BONE_MARROW_ASPIRATE_TUMOUR_SORTED_CELLS are deprecated as they have been separated into their respective biotypes\",\"symbols\":[\"AMNIOTIC_FLUID\",\"BLOOD\",\"BONE_MARROW\",\"BONE_MARROW_ASPIRATE_TUMOUR_CELLS\",\"BONE_MARROW_ASPIRATE_TUMOUR_SORTED_CELLS\",\"BUCCAL_SWAB\",\"CHORIONIC_VILLUS_SAMPLE\",\"FIBROBLAST\",\"FLUID\",\"FRESH_TISSUE_IN_CULTURE_MEDIUM\",\"OTHER\",\"SALIVA\",\"TISSUE\",\"TUMOUR\",\"URINE\"]}],\"doc\":\"Source of the sample\"},{\"name\":\"product\",\"type\":[\"null\",{\"type\":\"enum\",\"name\":\"Product\",\"symbols\":[\"DNA\",\"RNA\"]}],\"doc\":\"Product of the sample\"},{\"name\":\"preparationMethod\",\"type\":[\"null\",{\"type\":\"enum\",\"name\":\"PreparationMethod\",\"doc\":\"In 100K, preparation Method of sample\\n    NOTE: In GMS, this field is deprecated in favour of StorageMedium and Method\",\"symbols\":[\"ASPIRATE\",\"CD128_SORTED_CELLS\",\"CD138_SORTED_CELLS\",\"EDTA\",\"FF\",\"FFPE\",\"LI_HEP\",\"ORAGENE\"]}],\"doc\":\"Preparation method\\n        NOTE: In GMS, this has been deprecated in favour of Method and storageMedium\"},{\"name\":\"programmePhase\",\"type\":[\"null\",{\"type\":\"enum\",\"name\":\"ProgrammePhase\",\"symbols\":[\"CRUK\",\"OXFORD\",\"CLL\",\"IIP\",\"MAIN\",\"EXPT\"]}],\"doc\":\"Genomics England programme phase\"},{\"name\":\"clinicalSampleDateTime\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"The time when the sample was received. In the format YYYY-MM-DDTHH:MM:SS+0000\"},{\"name\":\"participantId\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}]},{\"name\":\"participantUid\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"Participant UId of the sample\"},{\"name\":\"sampleUid\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}]},{\"name\":\"maskedPid\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}]},{\"name\":\"method\",\"type\":[\"null\",{\"type\":\"enum\",\"name\":\"Method\",\"doc\":\"In GMS, Method is defined as how the sample was taken directly from the patient\",\"symbols\":[\"ASPIRATE\",\"BIOPSY\",\"NOT_APPLICABLE\",\"RESECTION\",\"SORTED_OTHER\",\"UNKNOWN\",\"UNSORTED\",\"CD138_SORTED\"]}],\"doc\":\"In GMS, this is how the sample was extracted from the participant\"},{\"name\":\"storageMedium\",\"type\":[\"null\",{\"type\":\"enum\",\"name\":\"StorageMedium\",\"doc\":\"In GMS, storage medium of sample\",\"symbols\":[\"EDTA\",\"FF\",\"LI_HEP\",\"ORAGENE\",\"FFPE\"]}],\"doc\":\"In GMS, this is what solvent/medium the sample was stored in\"},{\"name\":\"sampleType\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"In GMS, this is the sampleType as entered by the clinician in TOMs\"},{\"name\":\"sampleState\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"In GMS, this is the sampleState as entered by the clinician in TOMs\"}]}");
  public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
  /** Sample identifier (e.g, LP00012645_5GH)) */
   private java.lang.String sampleId;
  /** Lab sample identifier */
   private java.lang.String labSampleId;
  /** LDP Code (Local Delivery Partner) */
   private java.lang.String LDPCode;
  /** Source of the sample */
   private org.gel.models.participant.avro.SampleSource source;
  /** Product of the sample */
   private org.gel.models.participant.avro.Product product;
  /** Preparation method
        NOTE: In GMS, this has been deprecated in favour of Method and storageMedium */
   private org.gel.models.participant.avro.PreparationMethod preparationMethod;
  /** Genomics England programme phase */
   private org.gel.models.participant.avro.ProgrammePhase programmePhase;
  /** The time when the sample was received. In the format YYYY-MM-DDTHH:MM:SS+0000 */
   private java.lang.String clinicalSampleDateTime;
   private java.lang.String participantId;
  /** Participant UId of the sample */
   private java.lang.String participantUid;
   private java.lang.String sampleUid;
   private java.lang.String maskedPid;
  /** In GMS, this is how the sample was extracted from the participant */
   private org.gel.models.participant.avro.Method method;
  /** In GMS, this is what solvent/medium the sample was stored in */
   private org.gel.models.participant.avro.StorageMedium storageMedium;
  /** In GMS, this is the sampleType as entered by the clinician in TOMs */
   private java.lang.String sampleType;
  /** In GMS, this is the sampleState as entered by the clinician in TOMs */
   private java.lang.String sampleState;

  /**
   * Default constructor.  Note that this does not initialize fields
   * to their default values from the schema.  If that is desired then
   * one should use newBuilder(). 
   */
  public GermlineSample() {}

  /**
   * All-args constructor.
   */
  public GermlineSample(java.lang.String sampleId, java.lang.String labSampleId, java.lang.String LDPCode, org.gel.models.participant.avro.SampleSource source, org.gel.models.participant.avro.Product product, org.gel.models.participant.avro.PreparationMethod preparationMethod, org.gel.models.participant.avro.ProgrammePhase programmePhase, java.lang.String clinicalSampleDateTime, java.lang.String participantId, java.lang.String participantUid, java.lang.String sampleUid, java.lang.String maskedPid, org.gel.models.participant.avro.Method method, org.gel.models.participant.avro.StorageMedium storageMedium, java.lang.String sampleType, java.lang.String sampleState) {
    this.sampleId = sampleId;
    this.labSampleId = labSampleId;
    this.LDPCode = LDPCode;
    this.source = source;
    this.product = product;
    this.preparationMethod = preparationMethod;
    this.programmePhase = programmePhase;
    this.clinicalSampleDateTime = clinicalSampleDateTime;
    this.participantId = participantId;
    this.participantUid = participantUid;
    this.sampleUid = sampleUid;
    this.maskedPid = maskedPid;
    this.method = method;
    this.storageMedium = storageMedium;
    this.sampleType = sampleType;
    this.sampleState = sampleState;
  }

  public org.apache.avro.Schema getSchema() { return SCHEMA$; }
  // Used by DatumWriter.  Applications should not call. 
  public java.lang.Object get(int field$) {
    switch (field$) {
    case 0: return sampleId;
    case 1: return labSampleId;
    case 2: return LDPCode;
    case 3: return source;
    case 4: return product;
    case 5: return preparationMethod;
    case 6: return programmePhase;
    case 7: return clinicalSampleDateTime;
    case 8: return participantId;
    case 9: return participantUid;
    case 10: return sampleUid;
    case 11: return maskedPid;
    case 12: return method;
    case 13: return storageMedium;
    case 14: return sampleType;
    case 15: return sampleState;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }
  // Used by DatumReader.  Applications should not call. 
  @SuppressWarnings(value="unchecked")
  public void put(int field$, java.lang.Object value$) {
    switch (field$) {
    case 0: sampleId = (java.lang.String)value$; break;
    case 1: labSampleId = (java.lang.String)value$; break;
    case 2: LDPCode = (java.lang.String)value$; break;
    case 3: source = (org.gel.models.participant.avro.SampleSource)value$; break;
    case 4: product = (org.gel.models.participant.avro.Product)value$; break;
    case 5: preparationMethod = (org.gel.models.participant.avro.PreparationMethod)value$; break;
    case 6: programmePhase = (org.gel.models.participant.avro.ProgrammePhase)value$; break;
    case 7: clinicalSampleDateTime = (java.lang.String)value$; break;
    case 8: participantId = (java.lang.String)value$; break;
    case 9: participantUid = (java.lang.String)value$; break;
    case 10: sampleUid = (java.lang.String)value$; break;
    case 11: maskedPid = (java.lang.String)value$; break;
    case 12: method = (org.gel.models.participant.avro.Method)value$; break;
    case 13: storageMedium = (org.gel.models.participant.avro.StorageMedium)value$; break;
    case 14: sampleType = (java.lang.String)value$; break;
    case 15: sampleState = (java.lang.String)value$; break;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }

  /**
   * Gets the value of the 'sampleId' field.
   * Sample identifier (e.g, LP00012645_5GH))   */
  public java.lang.String getSampleId() {
    return sampleId;
  }

  /**
   * Sets the value of the 'sampleId' field.
   * Sample identifier (e.g, LP00012645_5GH))   * @param value the value to set.
   */
  public void setSampleId(java.lang.String value) {
    this.sampleId = value;
  }

  /**
   * Gets the value of the 'labSampleId' field.
   * Lab sample identifier   */
  public java.lang.String getLabSampleId() {
    return labSampleId;
  }

  /**
   * Sets the value of the 'labSampleId' field.
   * Lab sample identifier   * @param value the value to set.
   */
  public void setLabSampleId(java.lang.String value) {
    this.labSampleId = value;
  }

  /**
   * Gets the value of the 'LDPCode' field.
   * LDP Code (Local Delivery Partner)   */
  public java.lang.String getLDPCode() {
    return LDPCode;
  }

  /**
   * Sets the value of the 'LDPCode' field.
   * LDP Code (Local Delivery Partner)   * @param value the value to set.
   */
  public void setLDPCode(java.lang.String value) {
    this.LDPCode = value;
  }

  /**
   * Gets the value of the 'source' field.
   * Source of the sample   */
  public org.gel.models.participant.avro.SampleSource getSource() {
    return source;
  }

  /**
   * Sets the value of the 'source' field.
   * Source of the sample   * @param value the value to set.
   */
  public void setSource(org.gel.models.participant.avro.SampleSource value) {
    this.source = value;
  }

  /**
   * Gets the value of the 'product' field.
   * Product of the sample   */
  public org.gel.models.participant.avro.Product getProduct() {
    return product;
  }

  /**
   * Sets the value of the 'product' field.
   * Product of the sample   * @param value the value to set.
   */
  public void setProduct(org.gel.models.participant.avro.Product value) {
    this.product = value;
  }

  /**
   * Gets the value of the 'preparationMethod' field.
   * Preparation method
        NOTE: In GMS, this has been deprecated in favour of Method and storageMedium   */
  public org.gel.models.participant.avro.PreparationMethod getPreparationMethod() {
    return preparationMethod;
  }

  /**
   * Sets the value of the 'preparationMethod' field.
   * Preparation method
        NOTE: In GMS, this has been deprecated in favour of Method and storageMedium   * @param value the value to set.
   */
  public void setPreparationMethod(org.gel.models.participant.avro.PreparationMethod value) {
    this.preparationMethod = value;
  }

  /**
   * Gets the value of the 'programmePhase' field.
   * Genomics England programme phase   */
  public org.gel.models.participant.avro.ProgrammePhase getProgrammePhase() {
    return programmePhase;
  }

  /**
   * Sets the value of the 'programmePhase' field.
   * Genomics England programme phase   * @param value the value to set.
   */
  public void setProgrammePhase(org.gel.models.participant.avro.ProgrammePhase value) {
    this.programmePhase = value;
  }

  /**
   * Gets the value of the 'clinicalSampleDateTime' field.
   * The time when the sample was received. In the format YYYY-MM-DDTHH:MM:SS+0000   */
  public java.lang.String getClinicalSampleDateTime() {
    return clinicalSampleDateTime;
  }

  /**
   * Sets the value of the 'clinicalSampleDateTime' field.
   * The time when the sample was received. In the format YYYY-MM-DDTHH:MM:SS+0000   * @param value the value to set.
   */
  public void setClinicalSampleDateTime(java.lang.String value) {
    this.clinicalSampleDateTime = value;
  }

  /**
   * Gets the value of the 'participantId' field.
   */
  public java.lang.String getParticipantId() {
    return participantId;
  }

  /**
   * Sets the value of the 'participantId' field.
   * @param value the value to set.
   */
  public void setParticipantId(java.lang.String value) {
    this.participantId = value;
  }

  /**
   * Gets the value of the 'participantUid' field.
   * Participant UId of the sample   */
  public java.lang.String getParticipantUid() {
    return participantUid;
  }

  /**
   * Sets the value of the 'participantUid' field.
   * Participant UId of the sample   * @param value the value to set.
   */
  public void setParticipantUid(java.lang.String value) {
    this.participantUid = value;
  }

  /**
   * Gets the value of the 'sampleUid' field.
   */
  public java.lang.String getSampleUid() {
    return sampleUid;
  }

  /**
   * Sets the value of the 'sampleUid' field.
   * @param value the value to set.
   */
  public void setSampleUid(java.lang.String value) {
    this.sampleUid = value;
  }

  /**
   * Gets the value of the 'maskedPid' field.
   */
  public java.lang.String getMaskedPid() {
    return maskedPid;
  }

  /**
   * Sets the value of the 'maskedPid' field.
   * @param value the value to set.
   */
  public void setMaskedPid(java.lang.String value) {
    this.maskedPid = value;
  }

  /**
   * Gets the value of the 'method' field.
   * In GMS, this is how the sample was extracted from the participant   */
  public org.gel.models.participant.avro.Method getMethod() {
    return method;
  }

  /**
   * Sets the value of the 'method' field.
   * In GMS, this is how the sample was extracted from the participant   * @param value the value to set.
   */
  public void setMethod(org.gel.models.participant.avro.Method value) {
    this.method = value;
  }

  /**
   * Gets the value of the 'storageMedium' field.
   * In GMS, this is what solvent/medium the sample was stored in   */
  public org.gel.models.participant.avro.StorageMedium getStorageMedium() {
    return storageMedium;
  }

  /**
   * Sets the value of the 'storageMedium' field.
   * In GMS, this is what solvent/medium the sample was stored in   * @param value the value to set.
   */
  public void setStorageMedium(org.gel.models.participant.avro.StorageMedium value) {
    this.storageMedium = value;
  }

  /**
   * Gets the value of the 'sampleType' field.
   * In GMS, this is the sampleType as entered by the clinician in TOMs   */
  public java.lang.String getSampleType() {
    return sampleType;
  }

  /**
   * Sets the value of the 'sampleType' field.
   * In GMS, this is the sampleType as entered by the clinician in TOMs   * @param value the value to set.
   */
  public void setSampleType(java.lang.String value) {
    this.sampleType = value;
  }

  /**
   * Gets the value of the 'sampleState' field.
   * In GMS, this is the sampleState as entered by the clinician in TOMs   */
  public java.lang.String getSampleState() {
    return sampleState;
  }

  /**
   * Sets the value of the 'sampleState' field.
   * In GMS, this is the sampleState as entered by the clinician in TOMs   * @param value the value to set.
   */
  public void setSampleState(java.lang.String value) {
    this.sampleState = value;
  }

  /** Creates a new GermlineSample RecordBuilder */
  public static org.gel.models.participant.avro.GermlineSample.Builder newBuilder() {
    return new org.gel.models.participant.avro.GermlineSample.Builder();
  }
  
  /** Creates a new GermlineSample RecordBuilder by copying an existing Builder */
  public static org.gel.models.participant.avro.GermlineSample.Builder newBuilder(org.gel.models.participant.avro.GermlineSample.Builder other) {
    return new org.gel.models.participant.avro.GermlineSample.Builder(other);
  }
  
  /** Creates a new GermlineSample RecordBuilder by copying an existing GermlineSample instance */
  public static org.gel.models.participant.avro.GermlineSample.Builder newBuilder(org.gel.models.participant.avro.GermlineSample other) {
    return new org.gel.models.participant.avro.GermlineSample.Builder(other);
  }
  
  /**
   * RecordBuilder for GermlineSample instances.
   */
  public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBase
    implements org.apache.avro.data.RecordBuilder {

    private java.lang.String sampleId;
    private java.lang.String labSampleId;
    private java.lang.String LDPCode;
    private org.gel.models.participant.avro.SampleSource source;
    private org.gel.models.participant.avro.Product product;
    private org.gel.models.participant.avro.PreparationMethod preparationMethod;
    private org.gel.models.participant.avro.ProgrammePhase programmePhase;
    private java.lang.String clinicalSampleDateTime;
    private java.lang.String participantId;
    private java.lang.String participantUid;
    private java.lang.String sampleUid;
    private java.lang.String maskedPid;
    private org.gel.models.participant.avro.Method method;
    private org.gel.models.participant.avro.StorageMedium storageMedium;
    private java.lang.String sampleType;
    private java.lang.String sampleState;

    /** Creates a new Builder */
    private Builder() {
      super(org.gel.models.participant.avro.GermlineSample.SCHEMA$);
    }
    
    /** Creates a Builder by copying an existing Builder */
    private Builder(org.gel.models.participant.avro.GermlineSample.Builder other) {
      super(other);
      if (isValidValue(fields()[0], other.sampleId)) {
        this.sampleId = data().deepCopy(fields()[0].schema(), other.sampleId);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.labSampleId)) {
        this.labSampleId = data().deepCopy(fields()[1].schema(), other.labSampleId);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.LDPCode)) {
        this.LDPCode = data().deepCopy(fields()[2].schema(), other.LDPCode);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.source)) {
        this.source = data().deepCopy(fields()[3].schema(), other.source);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.product)) {
        this.product = data().deepCopy(fields()[4].schema(), other.product);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.preparationMethod)) {
        this.preparationMethod = data().deepCopy(fields()[5].schema(), other.preparationMethod);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.programmePhase)) {
        this.programmePhase = data().deepCopy(fields()[6].schema(), other.programmePhase);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.clinicalSampleDateTime)) {
        this.clinicalSampleDateTime = data().deepCopy(fields()[7].schema(), other.clinicalSampleDateTime);
        fieldSetFlags()[7] = true;
      }
      if (isValidValue(fields()[8], other.participantId)) {
        this.participantId = data().deepCopy(fields()[8].schema(), other.participantId);
        fieldSetFlags()[8] = true;
      }
      if (isValidValue(fields()[9], other.participantUid)) {
        this.participantUid = data().deepCopy(fields()[9].schema(), other.participantUid);
        fieldSetFlags()[9] = true;
      }
      if (isValidValue(fields()[10], other.sampleUid)) {
        this.sampleUid = data().deepCopy(fields()[10].schema(), other.sampleUid);
        fieldSetFlags()[10] = true;
      }
      if (isValidValue(fields()[11], other.maskedPid)) {
        this.maskedPid = data().deepCopy(fields()[11].schema(), other.maskedPid);
        fieldSetFlags()[11] = true;
      }
      if (isValidValue(fields()[12], other.method)) {
        this.method = data().deepCopy(fields()[12].schema(), other.method);
        fieldSetFlags()[12] = true;
      }
      if (isValidValue(fields()[13], other.storageMedium)) {
        this.storageMedium = data().deepCopy(fields()[13].schema(), other.storageMedium);
        fieldSetFlags()[13] = true;
      }
      if (isValidValue(fields()[14], other.sampleType)) {
        this.sampleType = data().deepCopy(fields()[14].schema(), other.sampleType);
        fieldSetFlags()[14] = true;
      }
      if (isValidValue(fields()[15], other.sampleState)) {
        this.sampleState = data().deepCopy(fields()[15].schema(), other.sampleState);
        fieldSetFlags()[15] = true;
      }
    }
    
    /** Creates a Builder by copying an existing GermlineSample instance */
    private Builder(org.gel.models.participant.avro.GermlineSample other) {
            super(org.gel.models.participant.avro.GermlineSample.SCHEMA$);
      if (isValidValue(fields()[0], other.sampleId)) {
        this.sampleId = data().deepCopy(fields()[0].schema(), other.sampleId);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.labSampleId)) {
        this.labSampleId = data().deepCopy(fields()[1].schema(), other.labSampleId);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.LDPCode)) {
        this.LDPCode = data().deepCopy(fields()[2].schema(), other.LDPCode);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.source)) {
        this.source = data().deepCopy(fields()[3].schema(), other.source);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.product)) {
        this.product = data().deepCopy(fields()[4].schema(), other.product);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.preparationMethod)) {
        this.preparationMethod = data().deepCopy(fields()[5].schema(), other.preparationMethod);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.programmePhase)) {
        this.programmePhase = data().deepCopy(fields()[6].schema(), other.programmePhase);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.clinicalSampleDateTime)) {
        this.clinicalSampleDateTime = data().deepCopy(fields()[7].schema(), other.clinicalSampleDateTime);
        fieldSetFlags()[7] = true;
      }
      if (isValidValue(fields()[8], other.participantId)) {
        this.participantId = data().deepCopy(fields()[8].schema(), other.participantId);
        fieldSetFlags()[8] = true;
      }
      if (isValidValue(fields()[9], other.participantUid)) {
        this.participantUid = data().deepCopy(fields()[9].schema(), other.participantUid);
        fieldSetFlags()[9] = true;
      }
      if (isValidValue(fields()[10], other.sampleUid)) {
        this.sampleUid = data().deepCopy(fields()[10].schema(), other.sampleUid);
        fieldSetFlags()[10] = true;
      }
      if (isValidValue(fields()[11], other.maskedPid)) {
        this.maskedPid = data().deepCopy(fields()[11].schema(), other.maskedPid);
        fieldSetFlags()[11] = true;
      }
      if (isValidValue(fields()[12], other.method)) {
        this.method = data().deepCopy(fields()[12].schema(), other.method);
        fieldSetFlags()[12] = true;
      }
      if (isValidValue(fields()[13], other.storageMedium)) {
        this.storageMedium = data().deepCopy(fields()[13].schema(), other.storageMedium);
        fieldSetFlags()[13] = true;
      }
      if (isValidValue(fields()[14], other.sampleType)) {
        this.sampleType = data().deepCopy(fields()[14].schema(), other.sampleType);
        fieldSetFlags()[14] = true;
      }
      if (isValidValue(fields()[15], other.sampleState)) {
        this.sampleState = data().deepCopy(fields()[15].schema(), other.sampleState);
        fieldSetFlags()[15] = true;
      }
    }

    /** Gets the value of the 'sampleId' field */
    public java.lang.String getSampleId() {
      return sampleId;
    }
    
    /** Sets the value of the 'sampleId' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setSampleId(java.lang.String value) {
      validate(fields()[0], value);
      this.sampleId = value;
      fieldSetFlags()[0] = true;
      return this; 
    }
    
    /** Checks whether the 'sampleId' field has been set */
    public boolean hasSampleId() {
      return fieldSetFlags()[0];
    }
    
    /** Clears the value of the 'sampleId' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearSampleId() {
      sampleId = null;
      fieldSetFlags()[0] = false;
      return this;
    }

    /** Gets the value of the 'labSampleId' field */
    public java.lang.String getLabSampleId() {
      return labSampleId;
    }
    
    /** Sets the value of the 'labSampleId' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setLabSampleId(java.lang.String value) {
      validate(fields()[1], value);
      this.labSampleId = value;
      fieldSetFlags()[1] = true;
      return this; 
    }
    
    /** Checks whether the 'labSampleId' field has been set */
    public boolean hasLabSampleId() {
      return fieldSetFlags()[1];
    }
    
    /** Clears the value of the 'labSampleId' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearLabSampleId() {
      labSampleId = null;
      fieldSetFlags()[1] = false;
      return this;
    }

    /** Gets the value of the 'LDPCode' field */
    public java.lang.String getLDPCode() {
      return LDPCode;
    }
    
    /** Sets the value of the 'LDPCode' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setLDPCode(java.lang.String value) {
      validate(fields()[2], value);
      this.LDPCode = value;
      fieldSetFlags()[2] = true;
      return this; 
    }
    
    /** Checks whether the 'LDPCode' field has been set */
    public boolean hasLDPCode() {
      return fieldSetFlags()[2];
    }
    
    /** Clears the value of the 'LDPCode' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearLDPCode() {
      LDPCode = null;
      fieldSetFlags()[2] = false;
      return this;
    }

    /** Gets the value of the 'source' field */
    public org.gel.models.participant.avro.SampleSource getSource() {
      return source;
    }
    
    /** Sets the value of the 'source' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setSource(org.gel.models.participant.avro.SampleSource value) {
      validate(fields()[3], value);
      this.source = value;
      fieldSetFlags()[3] = true;
      return this; 
    }
    
    /** Checks whether the 'source' field has been set */
    public boolean hasSource() {
      return fieldSetFlags()[3];
    }
    
    /** Clears the value of the 'source' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearSource() {
      source = null;
      fieldSetFlags()[3] = false;
      return this;
    }

    /** Gets the value of the 'product' field */
    public org.gel.models.participant.avro.Product getProduct() {
      return product;
    }
    
    /** Sets the value of the 'product' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setProduct(org.gel.models.participant.avro.Product value) {
      validate(fields()[4], value);
      this.product = value;
      fieldSetFlags()[4] = true;
      return this; 
    }
    
    /** Checks whether the 'product' field has been set */
    public boolean hasProduct() {
      return fieldSetFlags()[4];
    }
    
    /** Clears the value of the 'product' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearProduct() {
      product = null;
      fieldSetFlags()[4] = false;
      return this;
    }

    /** Gets the value of the 'preparationMethod' field */
    public org.gel.models.participant.avro.PreparationMethod getPreparationMethod() {
      return preparationMethod;
    }
    
    /** Sets the value of the 'preparationMethod' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setPreparationMethod(org.gel.models.participant.avro.PreparationMethod value) {
      validate(fields()[5], value);
      this.preparationMethod = value;
      fieldSetFlags()[5] = true;
      return this; 
    }
    
    /** Checks whether the 'preparationMethod' field has been set */
    public boolean hasPreparationMethod() {
      return fieldSetFlags()[5];
    }
    
    /** Clears the value of the 'preparationMethod' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearPreparationMethod() {
      preparationMethod = null;
      fieldSetFlags()[5] = false;
      return this;
    }

    /** Gets the value of the 'programmePhase' field */
    public org.gel.models.participant.avro.ProgrammePhase getProgrammePhase() {
      return programmePhase;
    }
    
    /** Sets the value of the 'programmePhase' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setProgrammePhase(org.gel.models.participant.avro.ProgrammePhase value) {
      validate(fields()[6], value);
      this.programmePhase = value;
      fieldSetFlags()[6] = true;
      return this; 
    }
    
    /** Checks whether the 'programmePhase' field has been set */
    public boolean hasProgrammePhase() {
      return fieldSetFlags()[6];
    }
    
    /** Clears the value of the 'programmePhase' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearProgrammePhase() {
      programmePhase = null;
      fieldSetFlags()[6] = false;
      return this;
    }

    /** Gets the value of the 'clinicalSampleDateTime' field */
    public java.lang.String getClinicalSampleDateTime() {
      return clinicalSampleDateTime;
    }
    
    /** Sets the value of the 'clinicalSampleDateTime' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setClinicalSampleDateTime(java.lang.String value) {
      validate(fields()[7], value);
      this.clinicalSampleDateTime = value;
      fieldSetFlags()[7] = true;
      return this; 
    }
    
    /** Checks whether the 'clinicalSampleDateTime' field has been set */
    public boolean hasClinicalSampleDateTime() {
      return fieldSetFlags()[7];
    }
    
    /** Clears the value of the 'clinicalSampleDateTime' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearClinicalSampleDateTime() {
      clinicalSampleDateTime = null;
      fieldSetFlags()[7] = false;
      return this;
    }

    /** Gets the value of the 'participantId' field */
    public java.lang.String getParticipantId() {
      return participantId;
    }
    
    /** Sets the value of the 'participantId' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setParticipantId(java.lang.String value) {
      validate(fields()[8], value);
      this.participantId = value;
      fieldSetFlags()[8] = true;
      return this; 
    }
    
    /** Checks whether the 'participantId' field has been set */
    public boolean hasParticipantId() {
      return fieldSetFlags()[8];
    }
    
    /** Clears the value of the 'participantId' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearParticipantId() {
      participantId = null;
      fieldSetFlags()[8] = false;
      return this;
    }

    /** Gets the value of the 'participantUid' field */
    public java.lang.String getParticipantUid() {
      return participantUid;
    }
    
    /** Sets the value of the 'participantUid' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setParticipantUid(java.lang.String value) {
      validate(fields()[9], value);
      this.participantUid = value;
      fieldSetFlags()[9] = true;
      return this; 
    }
    
    /** Checks whether the 'participantUid' field has been set */
    public boolean hasParticipantUid() {
      return fieldSetFlags()[9];
    }
    
    /** Clears the value of the 'participantUid' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearParticipantUid() {
      participantUid = null;
      fieldSetFlags()[9] = false;
      return this;
    }

    /** Gets the value of the 'sampleUid' field */
    public java.lang.String getSampleUid() {
      return sampleUid;
    }
    
    /** Sets the value of the 'sampleUid' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setSampleUid(java.lang.String value) {
      validate(fields()[10], value);
      this.sampleUid = value;
      fieldSetFlags()[10] = true;
      return this; 
    }
    
    /** Checks whether the 'sampleUid' field has been set */
    public boolean hasSampleUid() {
      return fieldSetFlags()[10];
    }
    
    /** Clears the value of the 'sampleUid' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearSampleUid() {
      sampleUid = null;
      fieldSetFlags()[10] = false;
      return this;
    }

    /** Gets the value of the 'maskedPid' field */
    public java.lang.String getMaskedPid() {
      return maskedPid;
    }
    
    /** Sets the value of the 'maskedPid' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setMaskedPid(java.lang.String value) {
      validate(fields()[11], value);
      this.maskedPid = value;
      fieldSetFlags()[11] = true;
      return this; 
    }
    
    /** Checks whether the 'maskedPid' field has been set */
    public boolean hasMaskedPid() {
      return fieldSetFlags()[11];
    }
    
    /** Clears the value of the 'maskedPid' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearMaskedPid() {
      maskedPid = null;
      fieldSetFlags()[11] = false;
      return this;
    }

    /** Gets the value of the 'method' field */
    public org.gel.models.participant.avro.Method getMethod() {
      return method;
    }
    
    /** Sets the value of the 'method' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setMethod(org.gel.models.participant.avro.Method value) {
      validate(fields()[12], value);
      this.method = value;
      fieldSetFlags()[12] = true;
      return this; 
    }
    
    /** Checks whether the 'method' field has been set */
    public boolean hasMethod() {
      return fieldSetFlags()[12];
    }
    
    /** Clears the value of the 'method' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearMethod() {
      method = null;
      fieldSetFlags()[12] = false;
      return this;
    }

    /** Gets the value of the 'storageMedium' field */
    public org.gel.models.participant.avro.StorageMedium getStorageMedium() {
      return storageMedium;
    }
    
    /** Sets the value of the 'storageMedium' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setStorageMedium(org.gel.models.participant.avro.StorageMedium value) {
      validate(fields()[13], value);
      this.storageMedium = value;
      fieldSetFlags()[13] = true;
      return this; 
    }
    
    /** Checks whether the 'storageMedium' field has been set */
    public boolean hasStorageMedium() {
      return fieldSetFlags()[13];
    }
    
    /** Clears the value of the 'storageMedium' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearStorageMedium() {
      storageMedium = null;
      fieldSetFlags()[13] = false;
      return this;
    }

    /** Gets the value of the 'sampleType' field */
    public java.lang.String getSampleType() {
      return sampleType;
    }
    
    /** Sets the value of the 'sampleType' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setSampleType(java.lang.String value) {
      validate(fields()[14], value);
      this.sampleType = value;
      fieldSetFlags()[14] = true;
      return this; 
    }
    
    /** Checks whether the 'sampleType' field has been set */
    public boolean hasSampleType() {
      return fieldSetFlags()[14];
    }
    
    /** Clears the value of the 'sampleType' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearSampleType() {
      sampleType = null;
      fieldSetFlags()[14] = false;
      return this;
    }

    /** Gets the value of the 'sampleState' field */
    public java.lang.String getSampleState() {
      return sampleState;
    }
    
    /** Sets the value of the 'sampleState' field */
    public org.gel.models.participant.avro.GermlineSample.Builder setSampleState(java.lang.String value) {
      validate(fields()[15], value);
      this.sampleState = value;
      fieldSetFlags()[15] = true;
      return this; 
    }
    
    /** Checks whether the 'sampleState' field has been set */
    public boolean hasSampleState() {
      return fieldSetFlags()[15];
    }
    
    /** Clears the value of the 'sampleState' field */
    public org.gel.models.participant.avro.GermlineSample.Builder clearSampleState() {
      sampleState = null;
      fieldSetFlags()[15] = false;
      return this;
    }

    @Override
    public GermlineSample build() {
      try {
        GermlineSample record = new GermlineSample();
        record.sampleId = fieldSetFlags()[0] ? this.sampleId : (java.lang.String) defaultValue(fields()[0]);
        record.labSampleId = fieldSetFlags()[1] ? this.labSampleId : (java.lang.String) defaultValue(fields()[1]);
        record.LDPCode = fieldSetFlags()[2] ? this.LDPCode : (java.lang.String) defaultValue(fields()[2]);
        record.source = fieldSetFlags()[3] ? this.source : (org.gel.models.participant.avro.SampleSource) defaultValue(fields()[3]);
        record.product = fieldSetFlags()[4] ? this.product : (org.gel.models.participant.avro.Product) defaultValue(fields()[4]);
        record.preparationMethod = fieldSetFlags()[5] ? this.preparationMethod : (org.gel.models.participant.avro.PreparationMethod) defaultValue(fields()[5]);
        record.programmePhase = fieldSetFlags()[6] ? this.programmePhase : (org.gel.models.participant.avro.ProgrammePhase) defaultValue(fields()[6]);
        record.clinicalSampleDateTime = fieldSetFlags()[7] ? this.clinicalSampleDateTime : (java.lang.String) defaultValue(fields()[7]);
        record.participantId = fieldSetFlags()[8] ? this.participantId : (java.lang.String) defaultValue(fields()[8]);
        record.participantUid = fieldSetFlags()[9] ? this.participantUid : (java.lang.String) defaultValue(fields()[9]);
        record.sampleUid = fieldSetFlags()[10] ? this.sampleUid : (java.lang.String) defaultValue(fields()[10]);
        record.maskedPid = fieldSetFlags()[11] ? this.maskedPid : (java.lang.String) defaultValue(fields()[11]);
        record.method = fieldSetFlags()[12] ? this.method : (org.gel.models.participant.avro.Method) defaultValue(fields()[12]);
        record.storageMedium = fieldSetFlags()[13] ? this.storageMedium : (org.gel.models.participant.avro.StorageMedium) defaultValue(fields()[13]);
        record.sampleType = fieldSetFlags()[14] ? this.sampleType : (java.lang.String) defaultValue(fields()[14]);
        record.sampleState = fieldSetFlags()[15] ? this.sampleState : (java.lang.String) defaultValue(fields()[15]);
        return record;
      } catch (Exception e) {
        throw new org.apache.avro.AvroRuntimeException(e);
      }
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy