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

org.gel.models.report.avro.CancerExitQuestionnaire Maven / Gradle / Ivy

There is a newer version: 3.3.0
Show newest version
/**
 * Autogenerated by Avro
 * 
 * DO NOT EDIT DIRECTLY
 */
package org.gel.models.report.avro;  
@SuppressWarnings("all")
/** The cancer program exit questionnaire */
@org.apache.avro.specific.AvroGenerated
public class CancerExitQuestionnaire 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\":\"CancerExitQuestionnaire\",\"namespace\":\"org.gel.models.report.avro\",\"doc\":\"The cancer program exit questionnaire\",\"fields\":[{\"name\":\"eventDate\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"The date when the questionnaire was submitted\"},{\"name\":\"reporter\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"The person that submitted the questionnaire\"},{\"name\":\"caseLevelQuestions\",\"type\":{\"type\":\"record\",\"name\":\"CancerCaseLevelQuestions\",\"doc\":\"The questions for the cancer program exit questionnaire at case level\",\"fields\":[{\"name\":\"total_review_time\",\"type\":\"double\",\"doc\":\"Total time taken to review/collate evidence for variants (hours).\\n        Include all literature review time, consultation with relevant experts etc.\"},{\"name\":\"mdt1_time\",\"type\":\"double\",\"doc\":\"Time taken to discuss case at MDT (hours).\"},{\"name\":\"mdt2_time\",\"type\":[\"null\",\"double\"],\"doc\":\"If the case is discussed at a 2nd MDT please enter time here (hours).\"},{\"name\":\"validation_assay_time\",\"type\":[\"null\",\"double\"],\"doc\":\"Total time to design ALL validation assay(s) for case (hours).\\n        Only applicable if it is necessary to design a new assay to validate the variant.\"},{\"name\":\"wet_validation_time\",\"type\":[\"null\",\"double\"],\"doc\":\"Technical Laboratory Validation. Total time for validation test wet work for all variants (hours).\"},{\"name\":\"analytical_validation_time\",\"type\":[\"null\",\"double\"],\"doc\":\"Analytical Laboratory Validation. Total time for analysis of validation results for all variants (hours).\"},{\"name\":\"primary_reporting_time\",\"type\":\"double\",\"doc\":\"Primary Reporting. Time taken to complete primary reporting stage (hours).\"},{\"name\":\"primary_authorisation_time\",\"type\":\"double\",\"doc\":\"Report Authorisation. Time taken to check and authorise report (hours).\"},{\"name\":\"report_distribution_time\",\"type\":\"double\",\"doc\":\"Report Distribution.\\n        Please enter, where possible/accessible how long it takes for the result to be conveyed to the patient.\\n        E.g. via letter from the clinician (days).\"},{\"name\":\"total_time\",\"type\":\"double\",\"doc\":\"Total time from result to report.\\n        The total time taken from when the analysis of the WGS results started  to a report being received\\n        by the patient include any 'waiting' time (days).\"},{\"name\":\"reviewedInMdtWga\",\"type\":{\"type\":\"enum\",\"name\":\"ReviewedParts\",\"doc\":\"An enumeration for Which parts of the WGA were reviewed?:\\n* `domain_1`: Domain 1 only\\n* `domain_1_and_2`: Domains 1 and 2\\n* `domain_1_2_and_suplementary`: Domains 1, 2 and supplementary analysis\",\"symbols\":[\"domain_1\",\"domain_1_and_2\",\"domain_1_2_and_suplementary\",\"somatic_if_relevant\"]},\"doc\":\"Which parts of the WGA were reviewed?\"},{\"name\":\"actionableVariants\",\"type\":{\"type\":\"enum\",\"name\":\"CancerActionableVariants\",\"doc\":\"Are the variants actionable?\\n* `yes`: yes\\n* `no`: no\",\"symbols\":[\"yes\",\"no\"]},\"doc\":\"Were potentially actionable variants detected?\"}]},\"doc\":\"The case level questions\"},{\"name\":\"somaticVariantLevelQuestions\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"CancerSomaticVariantLevelQuestions\",\"doc\":\"The questions for the cancer program exit questionnaire for somatic variants\",\"fields\":[{\"name\":\"variantCoordinates\",\"type\":{\"type\":\"record\",\"name\":\"VariantCoordinates\",\"doc\":\"The variant coordinates representing uniquely a small variant.\\n    No multi-allelic variant supported, alternate only represents one alternate allele.\",\"fields\":[{\"name\":\"chromosome\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Chromosome without \\\"chr\\\" prefix (e.g. X rather than chrX)\"},{\"name\":\"position\",\"type\":\"int\",\"doc\":\"Genomic position\"},{\"name\":\"reference\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"The reference bases.\"},{\"name\":\"alternate\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"The alternate bases\"},{\"name\":\"assembly\",\"type\":{\"type\":\"enum\",\"name\":\"Assembly\",\"doc\":\"The reference genome assembly\",\"symbols\":[\"GRCh38\",\"GRCh37\"]},\"doc\":\"The assembly to which this variant corresponds\"}]},\"doc\":\"Variant coordinates following format `chromosome:position:reference:alternate`\"},{\"name\":\"variantActionability\",\"type\":{\"type\":\"array\",\"items\":{\"type\":\"enum\",\"name\":\"CancerActionabilitySomatic\",\"doc\":\"The variant actionabilities:\\n* `predicts_therapeutic_response`: Predicts therapeutic response\\n* `prognostic`: Prognostic\\n* `defines_diagnosis_group`: Defines diagnosis group\\n* `eligibility_for_trial`: Eligibility for trial\\n* `other`:  Other (please specify)\",\"symbols\":[\"predicts_therapeutic_response\",\"prognostic\",\"defines_diagnosis_group\",\"eligibility_for_trial\",\"other\"]}},\"doc\":\"Type of potential actionability:\"},{\"name\":\"otherVariantActionability\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"Other information about variant actionability\"},{\"name\":\"variantUsability\",\"type\":{\"type\":\"enum\",\"name\":\"CancerUsabilitySomatic\",\"doc\":\"Variant usability for somatic variants:\\n* `already_actioned`: Already actioned (i.e. prior to receiving this WGA)\\n* `actioned_result_of_this_wga`: actioned as a result of receiving this WGA\\n* `not_yet_actioned`: not yet actioned, but potentially actionable in the future\",\"symbols\":[\"already_actioned\",\"actioned_result_of_this_wga\",\"not_yet_actioned\"]},\"doc\":\"How has/will this potentially actionable variant been/be used?\"},{\"name\":\"variantTested\",\"type\":{\"type\":\"enum\",\"name\":\"CancerTested\",\"doc\":\"Was the variant validated with an orthogonal technology?\\n* `not_indicated_for_patient_care`: No: not indicated for patient care at this time\\n* `no_orthologous_test_available`: No: no orthologous test available\\n* `test_performed_prior_to_wga`: Yes: test performed prior to receiving WGA (eg using standard-of-care assay such as panel testing, or sanger sequencing)\\n* `technical_validation_following_WGA`: Yes: technical validation performed/planned following receiving this WGA\",\"symbols\":[\"not_indicated_for_patient_care\",\"no_orthologous_test_available\",\"test_performed_prior_to_wga\",\"technical_validation_following_wga\"]},\"doc\":\"Has this variant been tested by another method (either prior to or following receipt of this WGA)?\"},{\"name\":\"validationAssayType\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Please enter validation assay type e.g Pyrosequencing, NGS panel, COBAS, Sanger sequencing. If not applicable enter NA;\"}]}}],\"doc\":\"The questions for somatic variants\"},{\"name\":\"germlineVariantLevelQuestions\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"CancerGermlineVariantLevelQuestions\",\"doc\":\"The questions for the cancer program exit questionnaire for germline variants\",\"fields\":[{\"name\":\"variantCoordinates\",\"type\":\"VariantCoordinates\",\"doc\":\"Variant coordinates following format `chromosome:position:reference:alternate`\"},{\"name\":\"variantActionability\",\"type\":{\"type\":\"array\",\"items\":{\"type\":\"enum\",\"name\":\"CancerActionability\",\"doc\":\"An enumeration Variant Actionability:\\n      * `predicts_therapeutic_response`: Predicts therapeutic response\\n      * `prognostic`: Prognostic\\n      * `defines_diagnosis_group`: Defines diagnosis group\\n      * `eligibility_for_trial`: Eligibility for trial\\n      * `germline_susceptibility`: Germline susceptibility\\n      * `other`:  Other (please specify)\",\"symbols\":[\"germline_susceptibility\",\"predicts_therapeutic_response\",\"prognostic\",\"defines_diagnosis_group\",\"eligibility_for_trial\",\"other\"]}},\"doc\":\"Type of potential actionability:\"},{\"name\":\"otherVariantActionability\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}]},{\"name\":\"variantUsability\",\"type\":{\"type\":\"enum\",\"name\":\"CancerUsabilityGermline\",\"doc\":\"Variant usability for germline variants:\\n* `already_actioned`: Already actioned (i.e. prior to receiving this WGA)\\n* `actioned_result_of_this_wga`: actioned as a result of receiving this WGA\",\"symbols\":[\"already_actioned\",\"actioned_result_of_this_wga\"]},\"doc\":\"How has/will this potentially actionable variant been/be used?\"},{\"name\":\"variantTested\",\"type\":\"CancerTested\",\"doc\":\"Has this variant been tested by another method (either prior to or following receipt of this WGA)?\"},{\"name\":\"validationAssayType\",\"type\":{\"","type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Please enter validation assay type e.g Pyrosequencing, NGS panel, COBAS, Sanger sequencing. If not applicable enter NA;\"}]}}],\"doc\":\"The questions for germline variants\"},{\"name\":\"additionalComments\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"Please enter any additional comments you may have about the case here.\"},{\"name\":\"otherActionableVariants\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"AdditionalVariantsQuestions\",\"fields\":[{\"name\":\"variantCoordinates\",\"type\":\"VariantCoordinates\",\"doc\":\"Chr: Pos Ref > Alt\"},{\"name\":\"variantActionability\",\"type\":{\"type\":\"array\",\"items\":\"CancerActionability\"},\"doc\":\"Type of potential actionability:\"},{\"name\":\"otherVariantActionability\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}]},{\"name\":\"variantUsability\",\"type\":\"CancerUsabilitySomatic\",\"doc\":\"How has/will this potentially actionable variant been/be used?\"},{\"name\":\"variantTested\",\"type\":{\"type\":\"enum\",\"name\":\"CancerTestedAdditional\",\"doc\":\"An enumeration Variant tested:\\n      * `not_indicated_for_patient_care`: No: not indicated for patient care at this time\\n      * `no_orthologous_test_available`: No: no orthologous test available\\n      * `test_performed_prior_to_wga`: Yes: test performed prior to receiving WGA (eg using standard-of-care assay such as panel testing, or sanger sequencing)\\n      * `technical_validation_following_wga`: Yes: technical validation performed/planned following receiving this WGA\\n      * `na`: N/A\",\"symbols\":[\"not_indicated_for_patient_care\",\"no_orthologous_test_available\",\"test_performed_prior_to_wga\",\"technical_validation_following_wga\",\"na\"]},\"doc\":\"Has this variant been tested by another method (either prior to or following receipt of this WGA)?\"},{\"name\":\"validationAssayType\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Please enter validation assay type e.g Pyrosequencing, NGS panel, COBAS, Sanger sequencing. If not applicable enter NA;\"}]}}],\"doc\":\"Other actionable variants or entities.\\n        Please provide other (potentially) actionable entities: e.g domain 3 small variants or SV/CNV, mutational signatures, mutational burden\"}]}");
  public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
  /** The date when the questionnaire was submitted */
   private java.lang.String eventDate;
  /** The person that submitted the questionnaire */
   private java.lang.String reporter;
  /** The case level questions */
   private org.gel.models.report.avro.CancerCaseLevelQuestions caseLevelQuestions;
  /** The questions for somatic variants */
   private java.util.List somaticVariantLevelQuestions;
  /** The questions for germline variants */
   private java.util.List germlineVariantLevelQuestions;
  /** Please enter any additional comments you may have about the case here. */
   private java.lang.String additionalComments;
  /** Other actionable variants or entities.
        Please provide other (potentially) actionable entities: e.g domain 3 small variants or SV/CNV, mutational signatures, mutational burden */
   private java.util.List otherActionableVariants;

  /**
   * 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 CancerExitQuestionnaire() {}

  /**
   * All-args constructor.
   */
  public CancerExitQuestionnaire(java.lang.String eventDate, java.lang.String reporter, org.gel.models.report.avro.CancerCaseLevelQuestions caseLevelQuestions, java.util.List somaticVariantLevelQuestions, java.util.List germlineVariantLevelQuestions, java.lang.String additionalComments, java.util.List otherActionableVariants) {
    this.eventDate = eventDate;
    this.reporter = reporter;
    this.caseLevelQuestions = caseLevelQuestions;
    this.somaticVariantLevelQuestions = somaticVariantLevelQuestions;
    this.germlineVariantLevelQuestions = germlineVariantLevelQuestions;
    this.additionalComments = additionalComments;
    this.otherActionableVariants = otherActionableVariants;
  }

  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 eventDate;
    case 1: return reporter;
    case 2: return caseLevelQuestions;
    case 3: return somaticVariantLevelQuestions;
    case 4: return germlineVariantLevelQuestions;
    case 5: return additionalComments;
    case 6: return otherActionableVariants;
    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: eventDate = (java.lang.String)value$; break;
    case 1: reporter = (java.lang.String)value$; break;
    case 2: caseLevelQuestions = (org.gel.models.report.avro.CancerCaseLevelQuestions)value$; break;
    case 3: somaticVariantLevelQuestions = (java.util.List)value$; break;
    case 4: germlineVariantLevelQuestions = (java.util.List)value$; break;
    case 5: additionalComments = (java.lang.String)value$; break;
    case 6: otherActionableVariants = (java.util.List)value$; break;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }

  /**
   * Gets the value of the 'eventDate' field.
   * The date when the questionnaire was submitted   */
  public java.lang.String getEventDate() {
    return eventDate;
  }

  /**
   * Sets the value of the 'eventDate' field.
   * The date when the questionnaire was submitted   * @param value the value to set.
   */
  public void setEventDate(java.lang.String value) {
    this.eventDate = value;
  }

  /**
   * Gets the value of the 'reporter' field.
   * The person that submitted the questionnaire   */
  public java.lang.String getReporter() {
    return reporter;
  }

  /**
   * Sets the value of the 'reporter' field.
   * The person that submitted the questionnaire   * @param value the value to set.
   */
  public void setReporter(java.lang.String value) {
    this.reporter = value;
  }

  /**
   * Gets the value of the 'caseLevelQuestions' field.
   * The case level questions   */
  public org.gel.models.report.avro.CancerCaseLevelQuestions getCaseLevelQuestions() {
    return caseLevelQuestions;
  }

  /**
   * Sets the value of the 'caseLevelQuestions' field.
   * The case level questions   * @param value the value to set.
   */
  public void setCaseLevelQuestions(org.gel.models.report.avro.CancerCaseLevelQuestions value) {
    this.caseLevelQuestions = value;
  }

  /**
   * Gets the value of the 'somaticVariantLevelQuestions' field.
   * The questions for somatic variants   */
  public java.util.List getSomaticVariantLevelQuestions() {
    return somaticVariantLevelQuestions;
  }

  /**
   * Sets the value of the 'somaticVariantLevelQuestions' field.
   * The questions for somatic variants   * @param value the value to set.
   */
  public void setSomaticVariantLevelQuestions(java.util.List value) {
    this.somaticVariantLevelQuestions = value;
  }

  /**
   * Gets the value of the 'germlineVariantLevelQuestions' field.
   * The questions for germline variants   */
  public java.util.List getGermlineVariantLevelQuestions() {
    return germlineVariantLevelQuestions;
  }

  /**
   * Sets the value of the 'germlineVariantLevelQuestions' field.
   * The questions for germline variants   * @param value the value to set.
   */
  public void setGermlineVariantLevelQuestions(java.util.List value) {
    this.germlineVariantLevelQuestions = value;
  }

  /**
   * Gets the value of the 'additionalComments' field.
   * Please enter any additional comments you may have about the case here.   */
  public java.lang.String getAdditionalComments() {
    return additionalComments;
  }

  /**
   * Sets the value of the 'additionalComments' field.
   * Please enter any additional comments you may have about the case here.   * @param value the value to set.
   */
  public void setAdditionalComments(java.lang.String value) {
    this.additionalComments = value;
  }

  /**
   * Gets the value of the 'otherActionableVariants' field.
   * Other actionable variants or entities.
        Please provide other (potentially) actionable entities: e.g domain 3 small variants or SV/CNV, mutational signatures, mutational burden   */
  public java.util.List getOtherActionableVariants() {
    return otherActionableVariants;
  }

  /**
   * Sets the value of the 'otherActionableVariants' field.
   * Other actionable variants or entities.
        Please provide other (potentially) actionable entities: e.g domain 3 small variants or SV/CNV, mutational signatures, mutational burden   * @param value the value to set.
   */
  public void setOtherActionableVariants(java.util.List value) {
    this.otherActionableVariants = value;
  }

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

    private java.lang.String eventDate;
    private java.lang.String reporter;
    private org.gel.models.report.avro.CancerCaseLevelQuestions caseLevelQuestions;
    private java.util.List somaticVariantLevelQuestions;
    private java.util.List germlineVariantLevelQuestions;
    private java.lang.String additionalComments;
    private java.util.List otherActionableVariants;

    /** Creates a new Builder */
    private Builder() {
      super(org.gel.models.report.avro.CancerExitQuestionnaire.SCHEMA$);
    }
    
    /** Creates a Builder by copying an existing Builder */
    private Builder(org.gel.models.report.avro.CancerExitQuestionnaire.Builder other) {
      super(other);
      if (isValidValue(fields()[0], other.eventDate)) {
        this.eventDate = data().deepCopy(fields()[0].schema(), other.eventDate);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.reporter)) {
        this.reporter = data().deepCopy(fields()[1].schema(), other.reporter);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.caseLevelQuestions)) {
        this.caseLevelQuestions = data().deepCopy(fields()[2].schema(), other.caseLevelQuestions);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.somaticVariantLevelQuestions)) {
        this.somaticVariantLevelQuestions = data().deepCopy(fields()[3].schema(), other.somaticVariantLevelQuestions);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.germlineVariantLevelQuestions)) {
        this.germlineVariantLevelQuestions = data().deepCopy(fields()[4].schema(), other.germlineVariantLevelQuestions);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.additionalComments)) {
        this.additionalComments = data().deepCopy(fields()[5].schema(), other.additionalComments);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.otherActionableVariants)) {
        this.otherActionableVariants = data().deepCopy(fields()[6].schema(), other.otherActionableVariants);
        fieldSetFlags()[6] = true;
      }
    }
    
    /** Creates a Builder by copying an existing CancerExitQuestionnaire instance */
    private Builder(org.gel.models.report.avro.CancerExitQuestionnaire other) {
            super(org.gel.models.report.avro.CancerExitQuestionnaire.SCHEMA$);
      if (isValidValue(fields()[0], other.eventDate)) {
        this.eventDate = data().deepCopy(fields()[0].schema(), other.eventDate);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.reporter)) {
        this.reporter = data().deepCopy(fields()[1].schema(), other.reporter);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.caseLevelQuestions)) {
        this.caseLevelQuestions = data().deepCopy(fields()[2].schema(), other.caseLevelQuestions);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.somaticVariantLevelQuestions)) {
        this.somaticVariantLevelQuestions = data().deepCopy(fields()[3].schema(), other.somaticVariantLevelQuestions);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.germlineVariantLevelQuestions)) {
        this.germlineVariantLevelQuestions = data().deepCopy(fields()[4].schema(), other.germlineVariantLevelQuestions);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.additionalComments)) {
        this.additionalComments = data().deepCopy(fields()[5].schema(), other.additionalComments);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.otherActionableVariants)) {
        this.otherActionableVariants = data().deepCopy(fields()[6].schema(), other.otherActionableVariants);
        fieldSetFlags()[6] = true;
      }
    }

    /** Gets the value of the 'eventDate' field */
    public java.lang.String getEventDate() {
      return eventDate;
    }
    
    /** Sets the value of the 'eventDate' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder setEventDate(java.lang.String value) {
      validate(fields()[0], value);
      this.eventDate = value;
      fieldSetFlags()[0] = true;
      return this; 
    }
    
    /** Checks whether the 'eventDate' field has been set */
    public boolean hasEventDate() {
      return fieldSetFlags()[0];
    }
    
    /** Clears the value of the 'eventDate' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder clearEventDate() {
      eventDate = null;
      fieldSetFlags()[0] = false;
      return this;
    }

    /** Gets the value of the 'reporter' field */
    public java.lang.String getReporter() {
      return reporter;
    }
    
    /** Sets the value of the 'reporter' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder setReporter(java.lang.String value) {
      validate(fields()[1], value);
      this.reporter = value;
      fieldSetFlags()[1] = true;
      return this; 
    }
    
    /** Checks whether the 'reporter' field has been set */
    public boolean hasReporter() {
      return fieldSetFlags()[1];
    }
    
    /** Clears the value of the 'reporter' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder clearReporter() {
      reporter = null;
      fieldSetFlags()[1] = false;
      return this;
    }

    /** Gets the value of the 'caseLevelQuestions' field */
    public org.gel.models.report.avro.CancerCaseLevelQuestions getCaseLevelQuestions() {
      return caseLevelQuestions;
    }
    
    /** Sets the value of the 'caseLevelQuestions' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder setCaseLevelQuestions(org.gel.models.report.avro.CancerCaseLevelQuestions value) {
      validate(fields()[2], value);
      this.caseLevelQuestions = value;
      fieldSetFlags()[2] = true;
      return this; 
    }
    
    /** Checks whether the 'caseLevelQuestions' field has been set */
    public boolean hasCaseLevelQuestions() {
      return fieldSetFlags()[2];
    }
    
    /** Clears the value of the 'caseLevelQuestions' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder clearCaseLevelQuestions() {
      caseLevelQuestions = null;
      fieldSetFlags()[2] = false;
      return this;
    }

    /** Gets the value of the 'somaticVariantLevelQuestions' field */
    public java.util.List getSomaticVariantLevelQuestions() {
      return somaticVariantLevelQuestions;
    }
    
    /** Sets the value of the 'somaticVariantLevelQuestions' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder setSomaticVariantLevelQuestions(java.util.List value) {
      validate(fields()[3], value);
      this.somaticVariantLevelQuestions = value;
      fieldSetFlags()[3] = true;
      return this; 
    }
    
    /** Checks whether the 'somaticVariantLevelQuestions' field has been set */
    public boolean hasSomaticVariantLevelQuestions() {
      return fieldSetFlags()[3];
    }
    
    /** Clears the value of the 'somaticVariantLevelQuestions' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder clearSomaticVariantLevelQuestions() {
      somaticVariantLevelQuestions = null;
      fieldSetFlags()[3] = false;
      return this;
    }

    /** Gets the value of the 'germlineVariantLevelQuestions' field */
    public java.util.List getGermlineVariantLevelQuestions() {
      return germlineVariantLevelQuestions;
    }
    
    /** Sets the value of the 'germlineVariantLevelQuestions' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder setGermlineVariantLevelQuestions(java.util.List value) {
      validate(fields()[4], value);
      this.germlineVariantLevelQuestions = value;
      fieldSetFlags()[4] = true;
      return this; 
    }
    
    /** Checks whether the 'germlineVariantLevelQuestions' field has been set */
    public boolean hasGermlineVariantLevelQuestions() {
      return fieldSetFlags()[4];
    }
    
    /** Clears the value of the 'germlineVariantLevelQuestions' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder clearGermlineVariantLevelQuestions() {
      germlineVariantLevelQuestions = null;
      fieldSetFlags()[4] = false;
      return this;
    }

    /** Gets the value of the 'additionalComments' field */
    public java.lang.String getAdditionalComments() {
      return additionalComments;
    }
    
    /** Sets the value of the 'additionalComments' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder setAdditionalComments(java.lang.String value) {
      validate(fields()[5], value);
      this.additionalComments = value;
      fieldSetFlags()[5] = true;
      return this; 
    }
    
    /** Checks whether the 'additionalComments' field has been set */
    public boolean hasAdditionalComments() {
      return fieldSetFlags()[5];
    }
    
    /** Clears the value of the 'additionalComments' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder clearAdditionalComments() {
      additionalComments = null;
      fieldSetFlags()[5] = false;
      return this;
    }

    /** Gets the value of the 'otherActionableVariants' field */
    public java.util.List getOtherActionableVariants() {
      return otherActionableVariants;
    }
    
    /** Sets the value of the 'otherActionableVariants' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder setOtherActionableVariants(java.util.List value) {
      validate(fields()[6], value);
      this.otherActionableVariants = value;
      fieldSetFlags()[6] = true;
      return this; 
    }
    
    /** Checks whether the 'otherActionableVariants' field has been set */
    public boolean hasOtherActionableVariants() {
      return fieldSetFlags()[6];
    }
    
    /** Clears the value of the 'otherActionableVariants' field */
    public org.gel.models.report.avro.CancerExitQuestionnaire.Builder clearOtherActionableVariants() {
      otherActionableVariants = null;
      fieldSetFlags()[6] = false;
      return this;
    }

    @Override
    public CancerExitQuestionnaire build() {
      try {
        CancerExitQuestionnaire record = new CancerExitQuestionnaire();
        record.eventDate = fieldSetFlags()[0] ? this.eventDate : (java.lang.String) defaultValue(fields()[0]);
        record.reporter = fieldSetFlags()[1] ? this.reporter : (java.lang.String) defaultValue(fields()[1]);
        record.caseLevelQuestions = fieldSetFlags()[2] ? this.caseLevelQuestions : (org.gel.models.report.avro.CancerCaseLevelQuestions) defaultValue(fields()[2]);
        record.somaticVariantLevelQuestions = fieldSetFlags()[3] ? this.somaticVariantLevelQuestions : (java.util.List) defaultValue(fields()[3]);
        record.germlineVariantLevelQuestions = fieldSetFlags()[4] ? this.germlineVariantLevelQuestions : (java.util.List) defaultValue(fields()[4]);
        record.additionalComments = fieldSetFlags()[5] ? this.additionalComments : (java.lang.String) defaultValue(fields()[5]);
        record.otherActionableVariants = fieldSetFlags()[6] ? this.otherActionableVariants : (java.util.List) defaultValue(fields()[6]);
        return record;
      } catch (Exception e) {
        throw new org.apache.avro.AvroRuntimeException(e);
      }
    }
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy