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

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

/**
 * Autogenerated by Avro
 * 
 * DO NOT EDIT DIRECTLY
 */
package org.gel.models.report.avro;  
@SuppressWarnings("all")
/** The variant group level questions */
@org.apache.avro.specific.AvroGenerated
public class VariantGroupLevelQuestions 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\":\"VariantGroupLevelQuestions\",\"namespace\":\"org.gel.models.report.avro\",\"doc\":\"The variant group level questions\",\"fields\":[{\"name\":\"variantGroup\",\"type\":\"int\",\"doc\":\"This value groups variants that together could explain the phenotype according to the mode of inheritance used.\\n        (e.g.: compound heterozygous). All the variants in the same report sharing the same value will be considered in\\n        the same group (i.e.: reported together). This value is an integer unique in the whole report.\\n        These values are only relevant within the same report.\"},{\"name\":\"variantLevelQuestions\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"VariantLevelQuestions\",\"doc\":\"The variant level questions\",\"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\"},{\"name\":\"confirmationDecision\",\"type\":{\"type\":\"enum\",\"name\":\"ConfirmationDecision\",\"symbols\":[\"yes\",\"no\",\"na\"]},\"doc\":\"Did you carry out technical confirmation of this variant via an alternative test?\"},{\"name\":\"confirmationOutcome\",\"type\":{\"type\":\"enum\",\"name\":\"ConfirmationOutcome\",\"symbols\":[\"yes\",\"no\",\"na\"]},\"doc\":\"Did the test confirm that the variant is present?\"},{\"name\":\"reportingQuestion\",\"type\":{\"type\":\"enum\",\"name\":\"ReportingQuestion\",\"symbols\":[\"yes\",\"no\",\"na\"]},\"doc\":\"Did you include the variant in your report to the clinician?\"},{\"name\":\"acmgClassification\",\"type\":{\"type\":\"enum\",\"name\":\"ACMGClassification\",\"symbols\":[\"pathogenic_variant\",\"likely_pathogenic_variant\",\"variant_of_unknown_clinical_significance\",\"likely_benign_variant\",\"benign_variant\",\"not_assessed\",\"na\"]},\"doc\":\"What ACMG pathogenicity score (1-5) did you assign to this variant?\"},{\"name\":\"publications\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Please provide PMIDs for papers which you have used to inform your assessment for this variant, separated by a `;` for multiple papers\"}]}}],\"doc\":\"Variant level questions for each of the variants in the group\"},{\"name\":\"shortTandemRepeatLevelQuestions\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"ShortTandemRepeatLevelQuestions\",\"doc\":\"The variant level questions\",\"fields\":[{\"name\":\"coordinates\",\"type\":{\"type\":\"record\",\"name\":\"Coordinates\",\"fields\":[{\"name\":\"assembly\",\"type\":\"Assembly\",\"doc\":\"The assembly to which this variant corresponds\"},{\"name\":\"chromosome\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Chromosome without \\\"chr\\\" prefix (e.g. X rather than chrX)\"},{\"name\":\"start\",\"type\":\"int\",\"doc\":\"Start genomic position for variant (1-based)\"},{\"name\":\"end\",\"type\":\"int\",\"doc\":\"End genomic position for variant\"},{\"name\":\"ciStart\",\"type\":[\"null\",{\"type\":\"record\",\"name\":\"ConfidenceInterval\",\"fields\":[{\"name\":\"left\",\"type\":\"int\"},{\"name\":\"right\",\"type\":\"int\"}]}]},{\"name\":\"ciEnd\",\"type\":[\"null\",\"ConfidenceInterval\"]}]},\"doc\":\"Variant coordinates\"},{\"name\":\"confirmationDecision\",\"type\":\"ConfirmationDecision\",\"doc\":\"Did you carry out technical confirmation of this variant via an alternative test?\"},{\"name\":\"confirmationOutcome\",\"type\":\"ConfirmationOutcome\",\"doc\":\"Did the test confirm that the variant is present?\"},{\"name\":\"reportingQuestion\",\"type\":\"ReportingQuestion\",\"doc\":\"Did you include the variant in your report to the clinician?\"},{\"name\":\"acmgClassification\",\"type\":\"ACMGClassification\",\"doc\":\"What ACMG pathogenicity score (1-5) did you assign to this variant?\"},{\"name\":\"publications\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Please provide PMIDs for papers which you have used to inform your assessment for this variant, separated by a `;` for multiple papers\"}]}}],\"doc\":\"STR level questions for each of the variants in the group\"},{\"name\":\"structuralVariantLevelQuestions\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"StructuralVariantLevelQuestions\",\"doc\":\"Structural variant level questions\",\"fields\":[{\"name\":\"variantType\",\"type\":{\"type\":\"enum\",\"name\":\"StructuralVariantType\",\"symbols\":[\"ins\",\"dup\",\"inv\",\"amplification\",\"deletion\",\"dup_tandem\",\"del_me\",\"ins_me\"]},\"doc\":\"Structural variant type\"},{\"name\":\"coordinates\",\"type\":\"Coordinates\",\"doc\":\"Variant coordinates\"},{\"name\":\"confirmationDecision\",\"type\":\"ConfirmationDecision\",\"doc\":\"Did you carry out technical confirmation of this variant via an alternative test?\"},{\"name\":\"confirmationOutcome\",\"type\":\"ConfirmationOutcome\",\"doc\":\"Did the test confirm that the variant is present?\"},{\"name\":\"reportingQuestion\",\"type\":\"ReportingQuestion\",\"doc\":\"Did you include the variant in your report to the clinician?\"},{\"name\":\"acmgClassification\",\"type\":\"ACMGClassification\",\"doc\":\"What ACMG pathogenicity score (1-5) did you assign to this variant?\"},{\"name\":\"publications\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Please provide PMIDs for papers which you have used to inform your assessment for this variant, separated by a `;` for multiple papers\"}]}}],\"doc\":\"Structural level questions for each of the variants in the group\"},{\"name\":\"actionability\",\"type\":{\"type\":\"enum\",\"name\":\"Actionability\",\"symbols\":[\"yes\",\"no\",\"not_yet\",\"na\"]},\"doc\":\"Is evidence for this variant/variant pair sufficient to use it for clinical purposes such as prenatal diagnosis or predictive testing?\"},{\"name\":\"clinicalUtility\",\"type\":{\"type\":\"array\",\"items\":{\"type\":\"enum\",\"name\":\"ClinicalUtility\",\"symbols\":[\"none\",\"change_in_medication\",\"surgical_option\",\"additional_surveillance_for_proband_or_relatives\",\"clinical_trial_eligibility\",\"informs_reproductive_choice\",\"unknown\",\"other\"]}},\"doc\":\"Has the clinical team identified any changes to clinical care which could potentially arise as a result of this variant/variant pair?\"},{\"name\":\"phenotypesSolved\",\"type\":{\"type\":\"enum\",\"name\":\"PhenotypesSolved\",\"symbols\":[\"yes\",\"no\",\"partially\",\"unknown\"]},\"doc\":\"Did you report the variant(s) as being partially or completely causative of the family's presenting phenotype(s)?\"},{\"name\":\"phenotypesExplained\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"string\",\"avro.java.string\":\"String\"}}],\"doc\":\"If you indicated that the variant(s) only partially explained the family’s presenting phenotypes, please indicate which HPO terms you are confident that they DO explain\"}]}");
  public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
  /** This value groups variants that together could explain the phenotype according to the mode of inheritance used.
        (e.g.: compound heterozygous). All the variants in the same report sharing the same value will be considered in
        the same group (i.e.: reported together). This value is an integer unique in the whole report.
        These values are only relevant within the same report. */
   private int variantGroup;
  /** Variant level questions for each of the variants in the group */
   private java.util.List variantLevelQuestions;
  /** STR level questions for each of the variants in the group */
   private java.util.List shortTandemRepeatLevelQuestions;
  /** Structural level questions for each of the variants in the group */
   private java.util.List structuralVariantLevelQuestions;
  /** Is evidence for this variant/variant pair sufficient to use it for clinical purposes such as prenatal diagnosis or predictive testing? */
   private org.gel.models.report.avro.Actionability actionability;
  /** Has the clinical team identified any changes to clinical care which could potentially arise as a result of this variant/variant pair? */
   private java.util.List clinicalUtility;
  /** Did you report the variant(s) as being partially or completely causative of the family's presenting phenotype(s)? */
   private org.gel.models.report.avro.PhenotypesSolved phenotypesSolved;
  /** If you indicated that the variant(s) only partially explained the family’s presenting phenotypes, please indicate which HPO terms you are confident that they DO explain */
   private java.util.List phenotypesExplained;

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

  /**
   * All-args constructor.
   */
  public VariantGroupLevelQuestions(java.lang.Integer variantGroup, java.util.List variantLevelQuestions, java.util.List shortTandemRepeatLevelQuestions, java.util.List structuralVariantLevelQuestions, org.gel.models.report.avro.Actionability actionability, java.util.List clinicalUtility, org.gel.models.report.avro.PhenotypesSolved phenotypesSolved, java.util.List phenotypesExplained) {
    this.variantGroup = variantGroup;
    this.variantLevelQuestions = variantLevelQuestions;
    this.shortTandemRepeatLevelQuestions = shortTandemRepeatLevelQuestions;
    this.structuralVariantLevelQuestions = structuralVariantLevelQuestions;
    this.actionability = actionability;
    this.clinicalUtility = clinicalUtility;
    this.phenotypesSolved = phenotypesSolved;
    this.phenotypesExplained = phenotypesExplained;
  }

  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 variantGroup;
    case 1: return variantLevelQuestions;
    case 2: return shortTandemRepeatLevelQuestions;
    case 3: return structuralVariantLevelQuestions;
    case 4: return actionability;
    case 5: return clinicalUtility;
    case 6: return phenotypesSolved;
    case 7: return phenotypesExplained;
    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: variantGroup = (java.lang.Integer)value$; break;
    case 1: variantLevelQuestions = (java.util.List)value$; break;
    case 2: shortTandemRepeatLevelQuestions = (java.util.List)value$; break;
    case 3: structuralVariantLevelQuestions = (java.util.List)value$; break;
    case 4: actionability = (org.gel.models.report.avro.Actionability)value$; break;
    case 5: clinicalUtility = (java.util.List)value$; break;
    case 6: phenotypesSolved = (org.gel.models.report.avro.PhenotypesSolved)value$; break;
    case 7: phenotypesExplained = (java.util.List)value$; break;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }

  /**
   * Gets the value of the 'variantGroup' field.
   * This value groups variants that together could explain the phenotype according to the mode of inheritance used.
        (e.g.: compound heterozygous). All the variants in the same report sharing the same value will be considered in
        the same group (i.e.: reported together). This value is an integer unique in the whole report.
        These values are only relevant within the same report.   */
  public java.lang.Integer getVariantGroup() {
    return variantGroup;
  }

  /**
   * Sets the value of the 'variantGroup' field.
   * This value groups variants that together could explain the phenotype according to the mode of inheritance used.
        (e.g.: compound heterozygous). All the variants in the same report sharing the same value will be considered in
        the same group (i.e.: reported together). This value is an integer unique in the whole report.
        These values are only relevant within the same report.   * @param value the value to set.
   */
  public void setVariantGroup(java.lang.Integer value) {
    this.variantGroup = value;
  }

  /**
   * Gets the value of the 'variantLevelQuestions' field.
   * Variant level questions for each of the variants in the group   */
  public java.util.List getVariantLevelQuestions() {
    return variantLevelQuestions;
  }

  /**
   * Sets the value of the 'variantLevelQuestions' field.
   * Variant level questions for each of the variants in the group   * @param value the value to set.
   */
  public void setVariantLevelQuestions(java.util.List value) {
    this.variantLevelQuestions = value;
  }

  /**
   * Gets the value of the 'shortTandemRepeatLevelQuestions' field.
   * STR level questions for each of the variants in the group   */
  public java.util.List getShortTandemRepeatLevelQuestions() {
    return shortTandemRepeatLevelQuestions;
  }

  /**
   * Sets the value of the 'shortTandemRepeatLevelQuestions' field.
   * STR level questions for each of the variants in the group   * @param value the value to set.
   */
  public void setShortTandemRepeatLevelQuestions(java.util.List value) {
    this.shortTandemRepeatLevelQuestions = value;
  }

  /**
   * Gets the value of the 'structuralVariantLevelQuestions' field.
   * Structural level questions for each of the variants in the group   */
  public java.util.List getStructuralVariantLevelQuestions() {
    return structuralVariantLevelQuestions;
  }

  /**
   * Sets the value of the 'structuralVariantLevelQuestions' field.
   * Structural level questions for each of the variants in the group   * @param value the value to set.
   */
  public void setStructuralVariantLevelQuestions(java.util.List value) {
    this.structuralVariantLevelQuestions = value;
  }

  /**
   * Gets the value of the 'actionability' field.
   * Is evidence for this variant/variant pair sufficient to use it for clinical purposes such as prenatal diagnosis or predictive testing?   */
  public org.gel.models.report.avro.Actionability getActionability() {
    return actionability;
  }

  /**
   * Sets the value of the 'actionability' field.
   * Is evidence for this variant/variant pair sufficient to use it for clinical purposes such as prenatal diagnosis or predictive testing?   * @param value the value to set.
   */
  public void setActionability(org.gel.models.report.avro.Actionability value) {
    this.actionability = value;
  }

  /**
   * Gets the value of the 'clinicalUtility' field.
   * Has the clinical team identified any changes to clinical care which could potentially arise as a result of this variant/variant pair?   */
  public java.util.List getClinicalUtility() {
    return clinicalUtility;
  }

  /**
   * Sets the value of the 'clinicalUtility' field.
   * Has the clinical team identified any changes to clinical care which could potentially arise as a result of this variant/variant pair?   * @param value the value to set.
   */
  public void setClinicalUtility(java.util.List value) {
    this.clinicalUtility = value;
  }

  /**
   * Gets the value of the 'phenotypesSolved' field.
   * Did you report the variant(s) as being partially or completely causative of the family's presenting phenotype(s)?   */
  public org.gel.models.report.avro.PhenotypesSolved getPhenotypesSolved() {
    return phenotypesSolved;
  }

  /**
   * Sets the value of the 'phenotypesSolved' field.
   * Did you report the variant(s) as being partially or completely causative of the family's presenting phenotype(s)?   * @param value the value to set.
   */
  public void setPhenotypesSolved(org.gel.models.report.avro.PhenotypesSolved value) {
    this.phenotypesSolved = value;
  }

  /**
   * Gets the value of the 'phenotypesExplained' field.
   * If you indicated that the variant(s) only partially explained the family’s presenting phenotypes, please indicate which HPO terms you are confident that they DO explain   */
  public java.util.List getPhenotypesExplained() {
    return phenotypesExplained;
  }

  /**
   * Sets the value of the 'phenotypesExplained' field.
   * If you indicated that the variant(s) only partially explained the family’s presenting phenotypes, please indicate which HPO terms you are confident that they DO explain   * @param value the value to set.
   */
  public void setPhenotypesExplained(java.util.List value) {
    this.phenotypesExplained = value;
  }

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

    private int variantGroup;
    private java.util.List variantLevelQuestions;
    private java.util.List shortTandemRepeatLevelQuestions;
    private java.util.List structuralVariantLevelQuestions;
    private org.gel.models.report.avro.Actionability actionability;
    private java.util.List clinicalUtility;
    private org.gel.models.report.avro.PhenotypesSolved phenotypesSolved;
    private java.util.List phenotypesExplained;

    /** Creates a new Builder */
    private Builder() {
      super(org.gel.models.report.avro.VariantGroupLevelQuestions.SCHEMA$);
    }
    
    /** Creates a Builder by copying an existing Builder */
    private Builder(org.gel.models.report.avro.VariantGroupLevelQuestions.Builder other) {
      super(other);
      if (isValidValue(fields()[0], other.variantGroup)) {
        this.variantGroup = data().deepCopy(fields()[0].schema(), other.variantGroup);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.variantLevelQuestions)) {
        this.variantLevelQuestions = data().deepCopy(fields()[1].schema(), other.variantLevelQuestions);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.shortTandemRepeatLevelQuestions)) {
        this.shortTandemRepeatLevelQuestions = data().deepCopy(fields()[2].schema(), other.shortTandemRepeatLevelQuestions);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.structuralVariantLevelQuestions)) {
        this.structuralVariantLevelQuestions = data().deepCopy(fields()[3].schema(), other.structuralVariantLevelQuestions);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.actionability)) {
        this.actionability = data().deepCopy(fields()[4].schema(), other.actionability);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.clinicalUtility)) {
        this.clinicalUtility = data().deepCopy(fields()[5].schema(), other.clinicalUtility);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.phenotypesSolved)) {
        this.phenotypesSolved = data().deepCopy(fields()[6].schema(), other.phenotypesSolved);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.phenotypesExplained)) {
        this.phenotypesExplained = data().deepCopy(fields()[7].schema(), other.phenotypesExplained);
        fieldSetFlags()[7] = true;
      }
    }
    
    /** Creates a Builder by copying an existing VariantGroupLevelQuestions instance */
    private Builder(org.gel.models.report.avro.VariantGroupLevelQuestions other) {
            super(org.gel.models.report.avro.VariantGroupLevelQuestions.SCHEMA$);
      if (isValidValue(fields()[0], other.variantGroup)) {
        this.variantGroup = data().deepCopy(fields()[0].schema(), other.variantGroup);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.variantLevelQuestions)) {
        this.variantLevelQuestions = data().deepCopy(fields()[1].schema(), other.variantLevelQuestions);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.shortTandemRepeatLevelQuestions)) {
        this.shortTandemRepeatLevelQuestions = data().deepCopy(fields()[2].schema(), other.shortTandemRepeatLevelQuestions);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.structuralVariantLevelQuestions)) {
        this.structuralVariantLevelQuestions = data().deepCopy(fields()[3].schema(), other.structuralVariantLevelQuestions);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.actionability)) {
        this.actionability = data().deepCopy(fields()[4].schema(), other.actionability);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.clinicalUtility)) {
        this.clinicalUtility = data().deepCopy(fields()[5].schema(), other.clinicalUtility);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.phenotypesSolved)) {
        this.phenotypesSolved = data().deepCopy(fields()[6].schema(), other.phenotypesSolved);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.phenotypesExplained)) {
        this.phenotypesExplained = data().deepCopy(fields()[7].schema(), other.phenotypesExplained);
        fieldSetFlags()[7] = true;
      }
    }

    /** Gets the value of the 'variantGroup' field */
    public java.lang.Integer getVariantGroup() {
      return variantGroup;
    }
    
    /** Sets the value of the 'variantGroup' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder setVariantGroup(int value) {
      validate(fields()[0], value);
      this.variantGroup = value;
      fieldSetFlags()[0] = true;
      return this; 
    }
    
    /** Checks whether the 'variantGroup' field has been set */
    public boolean hasVariantGroup() {
      return fieldSetFlags()[0];
    }
    
    /** Clears the value of the 'variantGroup' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder clearVariantGroup() {
      fieldSetFlags()[0] = false;
      return this;
    }

    /** Gets the value of the 'variantLevelQuestions' field */
    public java.util.List getVariantLevelQuestions() {
      return variantLevelQuestions;
    }
    
    /** Sets the value of the 'variantLevelQuestions' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder setVariantLevelQuestions(java.util.List value) {
      validate(fields()[1], value);
      this.variantLevelQuestions = value;
      fieldSetFlags()[1] = true;
      return this; 
    }
    
    /** Checks whether the 'variantLevelQuestions' field has been set */
    public boolean hasVariantLevelQuestions() {
      return fieldSetFlags()[1];
    }
    
    /** Clears the value of the 'variantLevelQuestions' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder clearVariantLevelQuestions() {
      variantLevelQuestions = null;
      fieldSetFlags()[1] = false;
      return this;
    }

    /** Gets the value of the 'shortTandemRepeatLevelQuestions' field */
    public java.util.List getShortTandemRepeatLevelQuestions() {
      return shortTandemRepeatLevelQuestions;
    }
    
    /** Sets the value of the 'shortTandemRepeatLevelQuestions' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder setShortTandemRepeatLevelQuestions(java.util.List value) {
      validate(fields()[2], value);
      this.shortTandemRepeatLevelQuestions = value;
      fieldSetFlags()[2] = true;
      return this; 
    }
    
    /** Checks whether the 'shortTandemRepeatLevelQuestions' field has been set */
    public boolean hasShortTandemRepeatLevelQuestions() {
      return fieldSetFlags()[2];
    }
    
    /** Clears the value of the 'shortTandemRepeatLevelQuestions' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder clearShortTandemRepeatLevelQuestions() {
      shortTandemRepeatLevelQuestions = null;
      fieldSetFlags()[2] = false;
      return this;
    }

    /** Gets the value of the 'structuralVariantLevelQuestions' field */
    public java.util.List getStructuralVariantLevelQuestions() {
      return structuralVariantLevelQuestions;
    }
    
    /** Sets the value of the 'structuralVariantLevelQuestions' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder setStructuralVariantLevelQuestions(java.util.List value) {
      validate(fields()[3], value);
      this.structuralVariantLevelQuestions = value;
      fieldSetFlags()[3] = true;
      return this; 
    }
    
    /** Checks whether the 'structuralVariantLevelQuestions' field has been set */
    public boolean hasStructuralVariantLevelQuestions() {
      return fieldSetFlags()[3];
    }
    
    /** Clears the value of the 'structuralVariantLevelQuestions' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder clearStructuralVariantLevelQuestions() {
      structuralVariantLevelQuestions = null;
      fieldSetFlags()[3] = false;
      return this;
    }

    /** Gets the value of the 'actionability' field */
    public org.gel.models.report.avro.Actionability getActionability() {
      return actionability;
    }
    
    /** Sets the value of the 'actionability' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder setActionability(org.gel.models.report.avro.Actionability value) {
      validate(fields()[4], value);
      this.actionability = value;
      fieldSetFlags()[4] = true;
      return this; 
    }
    
    /** Checks whether the 'actionability' field has been set */
    public boolean hasActionability() {
      return fieldSetFlags()[4];
    }
    
    /** Clears the value of the 'actionability' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder clearActionability() {
      actionability = null;
      fieldSetFlags()[4] = false;
      return this;
    }

    /** Gets the value of the 'clinicalUtility' field */
    public java.util.List getClinicalUtility() {
      return clinicalUtility;
    }
    
    /** Sets the value of the 'clinicalUtility' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder setClinicalUtility(java.util.List value) {
      validate(fields()[5], value);
      this.clinicalUtility = value;
      fieldSetFlags()[5] = true;
      return this; 
    }
    
    /** Checks whether the 'clinicalUtility' field has been set */
    public boolean hasClinicalUtility() {
      return fieldSetFlags()[5];
    }
    
    /** Clears the value of the 'clinicalUtility' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder clearClinicalUtility() {
      clinicalUtility = null;
      fieldSetFlags()[5] = false;
      return this;
    }

    /** Gets the value of the 'phenotypesSolved' field */
    public org.gel.models.report.avro.PhenotypesSolved getPhenotypesSolved() {
      return phenotypesSolved;
    }
    
    /** Sets the value of the 'phenotypesSolved' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder setPhenotypesSolved(org.gel.models.report.avro.PhenotypesSolved value) {
      validate(fields()[6], value);
      this.phenotypesSolved = value;
      fieldSetFlags()[6] = true;
      return this; 
    }
    
    /** Checks whether the 'phenotypesSolved' field has been set */
    public boolean hasPhenotypesSolved() {
      return fieldSetFlags()[6];
    }
    
    /** Clears the value of the 'phenotypesSolved' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder clearPhenotypesSolved() {
      phenotypesSolved = null;
      fieldSetFlags()[6] = false;
      return this;
    }

    /** Gets the value of the 'phenotypesExplained' field */
    public java.util.List getPhenotypesExplained() {
      return phenotypesExplained;
    }
    
    /** Sets the value of the 'phenotypesExplained' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder setPhenotypesExplained(java.util.List value) {
      validate(fields()[7], value);
      this.phenotypesExplained = value;
      fieldSetFlags()[7] = true;
      return this; 
    }
    
    /** Checks whether the 'phenotypesExplained' field has been set */
    public boolean hasPhenotypesExplained() {
      return fieldSetFlags()[7];
    }
    
    /** Clears the value of the 'phenotypesExplained' field */
    public org.gel.models.report.avro.VariantGroupLevelQuestions.Builder clearPhenotypesExplained() {
      phenotypesExplained = null;
      fieldSetFlags()[7] = false;
      return this;
    }

    @Override
    public VariantGroupLevelQuestions build() {
      try {
        VariantGroupLevelQuestions record = new VariantGroupLevelQuestions();
        record.variantGroup = fieldSetFlags()[0] ? this.variantGroup : (java.lang.Integer) defaultValue(fields()[0]);
        record.variantLevelQuestions = fieldSetFlags()[1] ? this.variantLevelQuestions : (java.util.List) defaultValue(fields()[1]);
        record.shortTandemRepeatLevelQuestions = fieldSetFlags()[2] ? this.shortTandemRepeatLevelQuestions : (java.util.List) defaultValue(fields()[2]);
        record.structuralVariantLevelQuestions = fieldSetFlags()[3] ? this.structuralVariantLevelQuestions : (java.util.List) defaultValue(fields()[3]);
        record.actionability = fieldSetFlags()[4] ? this.actionability : (org.gel.models.report.avro.Actionability) defaultValue(fields()[4]);
        record.clinicalUtility = fieldSetFlags()[5] ? this.clinicalUtility : (java.util.List) defaultValue(fields()[5]);
        record.phenotypesSolved = fieldSetFlags()[6] ? this.phenotypesSolved : (org.gel.models.report.avro.PhenotypesSolved) defaultValue(fields()[6]);
        record.phenotypesExplained = fieldSetFlags()[7] ? this.phenotypesExplained : (java.util.List) defaultValue(fields()[7]);
        return record;
      } catch (Exception e) {
        throw new org.apache.avro.AvroRuntimeException(e);
      }
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy