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

org.gel.models.report.avro.StructuralVariantInterpretationLog 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")
@org.apache.avro.specific.AvroGenerated
public class StructuralVariantInterpretationLog 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\":\"StructuralVariantInterpretationLog\",\"namespace\":\"org.gel.models.report.avro\",\"fields\":[{\"name\":\"variant\",\"type\":{\"type\":\"record\",\"name\":\"StructuralVariantDetails\",\"fields\":[{\"name\":\"variantType\",\"type\":{\"type\":\"enum\",\"name\":\"StructuralVariantType\",\"symbols\":[\"ins\",\"dup\",\"inv\",\"amplification\",\"deletion\",\"dup_tandem\",\"del_me\",\"ins_me\"]},\"doc\":\"Strctural variant type\"},{\"name\":\"structuralVariantCoordinates\",\"type\":{\"type\":\"record\",\"name\":\"Coordinates\",\"fields\":[{\"name\":\"assembly\",\"type\":{\"type\":\"enum\",\"name\":\"Assembly\",\"doc\":\"The reference genome assembly\",\"symbols\":[\"GRCh38\",\"GRCh37\"]},\"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\":\"Structural variant coordinates\"},{\"name\":\"numberOfCopies\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"NumberOfCopies\",\"fields\":[{\"name\":\"numberOfCopies\",\"type\":\"int\",\"doc\":\"Number of copies given by the caller in one of the allele\"},{\"name\":\"confidenceIntervalMaximum\",\"type\":[\"null\",\"int\"]},{\"name\":\"confidenceIntervalMinimum\",\"type\":[\"null\",\"int\"]}]}}],\"doc\":\"Number of copies (required for copy number variants)\"}]},\"doc\":\"Variant details\"},{\"name\":\"user\",\"type\":{\"type\":\"record\",\"name\":\"User\",\"fields\":[{\"name\":\"userid\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"Azure Active Directory immutable user OID\"},{\"name\":\"email\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"User email address\"},{\"name\":\"username\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Username\"},{\"name\":\"role\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}]},{\"name\":\"groups\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"string\",\"avro.java.string\":\"String\"}}]}]},\"doc\":\"User who set classification\"},{\"name\":\"timestamp\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Date of classification. Format YYYY-MM-DD (e.g. 2020-01-31)\"},{\"name\":\"groupId\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"GeL group ID. For GMS cases this will be the referral ID. For 100k rare disease cases this will be the family ID. For 100k cancer cases this will be the participant ID.\"},{\"name\":\"caseId\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Interpretation request ID including CIP prefix and version suffix (e.g. SAP-1234-1)\"},{\"name\":\"variantValidation\",\"type\":[\"null\",{\"type\":\"record\",\"name\":\"VariantValidation\",\"fields\":[{\"name\":\"validationTechnology\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Technology used to perform secondary confirmation of this variant (e.g. Sanger)\"},{\"name\":\"validationResult\",\"type\":{\"type\":\"enum\",\"name\":\"ValidationResult\",\"symbols\":[\"NotPerformed\",\"Confirmed\",\"NotConfirmed\",\"Pending\"]},\"doc\":\"Status/outcome of validation\"}]}],\"doc\":\"Independent validation of variant\"},{\"name\":\"comments\",\"type\":[\"null\",{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"UserComment\",\"fields\":[{\"name\":\"comment\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"Comment text\"},{\"name\":\"user\",\"type\":[\"null\",\"User\"],\"doc\":\"User who created comment\"},{\"name\":\"timestamp\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"Date and time comment was created (ISO 8601 datetime with seconds and timezone e.g. 2020-11-23T15:52:36+00:00)\"}]}}],\"doc\":\"User comments attached to this variant in this case\"},{\"name\":\"variantClassification\",\"type\":{\"type\":\"enum\",\"name\":\"ClinicalSignificance\",\"symbols\":[\"benign\",\"likely_benign\",\"likely_pathogenic\",\"pathogenic\",\"uncertain_significance\",\"excluded\"]},\"doc\":\"Variant classification\"},{\"name\":\"Artifact\",\"type\":[\"null\",\"boolean\"],\"doc\":\"User has marked the variant as an artefact\"},{\"name\":\"decisionSupportSystemFilters\",\"type\":[\"null\",{\"type\":\"map\",\"values\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"avro.java.string\":\"String\"}],\"doc\":\"Filter settings applied at time variant was classified\"}]}");
  public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
  /** Variant details */
   private org.gel.models.report.avro.StructuralVariantDetails variant;
  /** User who set classification */
   private org.gel.models.report.avro.User user;
  /** Date of classification. Format YYYY-MM-DD (e.g. 2020-01-31) */
   private java.lang.String timestamp;
  /** GeL group ID. For GMS cases this will be the referral ID. For 100k rare disease cases this will be the family ID. For 100k cancer cases this will be the participant ID. */
   private java.lang.String groupId;
  /** Interpretation request ID including CIP prefix and version suffix (e.g. SAP-1234-1) */
   private java.lang.String caseId;
  /** Independent validation of variant */
   private org.gel.models.report.avro.VariantValidation variantValidation;
  /** User comments attached to this variant in this case */
   private java.util.List comments;
  /** Variant classification */
   private org.gel.models.report.avro.ClinicalSignificance variantClassification;
  /** User has marked the variant as an artefact */
   private java.lang.Boolean Artifact;
  /** Filter settings applied at time variant was classified */
   private java.util.Map decisionSupportSystemFilters;

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

  /**
   * All-args constructor.
   */
  public StructuralVariantInterpretationLog(org.gel.models.report.avro.StructuralVariantDetails variant, org.gel.models.report.avro.User user, java.lang.String timestamp, java.lang.String groupId, java.lang.String caseId, org.gel.models.report.avro.VariantValidation variantValidation, java.util.List comments, org.gel.models.report.avro.ClinicalSignificance variantClassification, java.lang.Boolean Artifact, java.util.Map decisionSupportSystemFilters) {
    this.variant = variant;
    this.user = user;
    this.timestamp = timestamp;
    this.groupId = groupId;
    this.caseId = caseId;
    this.variantValidation = variantValidation;
    this.comments = comments;
    this.variantClassification = variantClassification;
    this.Artifact = Artifact;
    this.decisionSupportSystemFilters = decisionSupportSystemFilters;
  }

  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 variant;
    case 1: return user;
    case 2: return timestamp;
    case 3: return groupId;
    case 4: return caseId;
    case 5: return variantValidation;
    case 6: return comments;
    case 7: return variantClassification;
    case 8: return Artifact;
    case 9: return decisionSupportSystemFilters;
    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: variant = (org.gel.models.report.avro.StructuralVariantDetails)value$; break;
    case 1: user = (org.gel.models.report.avro.User)value$; break;
    case 2: timestamp = (java.lang.String)value$; break;
    case 3: groupId = (java.lang.String)value$; break;
    case 4: caseId = (java.lang.String)value$; break;
    case 5: variantValidation = (org.gel.models.report.avro.VariantValidation)value$; break;
    case 6: comments = (java.util.List)value$; break;
    case 7: variantClassification = (org.gel.models.report.avro.ClinicalSignificance)value$; break;
    case 8: Artifact = (java.lang.Boolean)value$; break;
    case 9: decisionSupportSystemFilters = (java.util.Map)value$; break;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }

  /**
   * Gets the value of the 'variant' field.
   * Variant details   */
  public org.gel.models.report.avro.StructuralVariantDetails getVariant() {
    return variant;
  }

  /**
   * Sets the value of the 'variant' field.
   * Variant details   * @param value the value to set.
   */
  public void setVariant(org.gel.models.report.avro.StructuralVariantDetails value) {
    this.variant = value;
  }

  /**
   * Gets the value of the 'user' field.
   * User who set classification   */
  public org.gel.models.report.avro.User getUser() {
    return user;
  }

  /**
   * Sets the value of the 'user' field.
   * User who set classification   * @param value the value to set.
   */
  public void setUser(org.gel.models.report.avro.User value) {
    this.user = value;
  }

  /**
   * Gets the value of the 'timestamp' field.
   * Date of classification. Format YYYY-MM-DD (e.g. 2020-01-31)   */
  public java.lang.String getTimestamp() {
    return timestamp;
  }

  /**
   * Sets the value of the 'timestamp' field.
   * Date of classification. Format YYYY-MM-DD (e.g. 2020-01-31)   * @param value the value to set.
   */
  public void setTimestamp(java.lang.String value) {
    this.timestamp = value;
  }

  /**
   * Gets the value of the 'groupId' field.
   * GeL group ID. For GMS cases this will be the referral ID. For 100k rare disease cases this will be the family ID. For 100k cancer cases this will be the participant ID.   */
  public java.lang.String getGroupId() {
    return groupId;
  }

  /**
   * Sets the value of the 'groupId' field.
   * GeL group ID. For GMS cases this will be the referral ID. For 100k rare disease cases this will be the family ID. For 100k cancer cases this will be the participant ID.   * @param value the value to set.
   */
  public void setGroupId(java.lang.String value) {
    this.groupId = value;
  }

  /**
   * Gets the value of the 'caseId' field.
   * Interpretation request ID including CIP prefix and version suffix (e.g. SAP-1234-1)   */
  public java.lang.String getCaseId() {
    return caseId;
  }

  /**
   * Sets the value of the 'caseId' field.
   * Interpretation request ID including CIP prefix and version suffix (e.g. SAP-1234-1)   * @param value the value to set.
   */
  public void setCaseId(java.lang.String value) {
    this.caseId = value;
  }

  /**
   * Gets the value of the 'variantValidation' field.
   * Independent validation of variant   */
  public org.gel.models.report.avro.VariantValidation getVariantValidation() {
    return variantValidation;
  }

  /**
   * Sets the value of the 'variantValidation' field.
   * Independent validation of variant   * @param value the value to set.
   */
  public void setVariantValidation(org.gel.models.report.avro.VariantValidation value) {
    this.variantValidation = value;
  }

  /**
   * Gets the value of the 'comments' field.
   * User comments attached to this variant in this case   */
  public java.util.List getComments() {
    return comments;
  }

  /**
   * Sets the value of the 'comments' field.
   * User comments attached to this variant in this case   * @param value the value to set.
   */
  public void setComments(java.util.List value) {
    this.comments = value;
  }

  /**
   * Gets the value of the 'variantClassification' field.
   * Variant classification   */
  public org.gel.models.report.avro.ClinicalSignificance getVariantClassification() {
    return variantClassification;
  }

  /**
   * Sets the value of the 'variantClassification' field.
   * Variant classification   * @param value the value to set.
   */
  public void setVariantClassification(org.gel.models.report.avro.ClinicalSignificance value) {
    this.variantClassification = value;
  }

  /**
   * Gets the value of the 'Artifact' field.
   * User has marked the variant as an artefact   */
  public java.lang.Boolean getArtifact() {
    return Artifact;
  }

  /**
   * Sets the value of the 'Artifact' field.
   * User has marked the variant as an artefact   * @param value the value to set.
   */
  public void setArtifact(java.lang.Boolean value) {
    this.Artifact = value;
  }

  /**
   * Gets the value of the 'decisionSupportSystemFilters' field.
   * Filter settings applied at time variant was classified   */
  public java.util.Map getDecisionSupportSystemFilters() {
    return decisionSupportSystemFilters;
  }

  /**
   * Sets the value of the 'decisionSupportSystemFilters' field.
   * Filter settings applied at time variant was classified   * @param value the value to set.
   */
  public void setDecisionSupportSystemFilters(java.util.Map value) {
    this.decisionSupportSystemFilters = value;
  }

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

    private org.gel.models.report.avro.StructuralVariantDetails variant;
    private org.gel.models.report.avro.User user;
    private java.lang.String timestamp;
    private java.lang.String groupId;
    private java.lang.String caseId;
    private org.gel.models.report.avro.VariantValidation variantValidation;
    private java.util.List comments;
    private org.gel.models.report.avro.ClinicalSignificance variantClassification;
    private java.lang.Boolean Artifact;
    private java.util.Map decisionSupportSystemFilters;

    /** Creates a new Builder */
    private Builder() {
      super(org.gel.models.report.avro.StructuralVariantInterpretationLog.SCHEMA$);
    }
    
    /** Creates a Builder by copying an existing Builder */
    private Builder(org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder other) {
      super(other);
      if (isValidValue(fields()[0], other.variant)) {
        this.variant = data().deepCopy(fields()[0].schema(), other.variant);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.user)) {
        this.user = data().deepCopy(fields()[1].schema(), other.user);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.timestamp)) {
        this.timestamp = data().deepCopy(fields()[2].schema(), other.timestamp);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.groupId)) {
        this.groupId = data().deepCopy(fields()[3].schema(), other.groupId);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.caseId)) {
        this.caseId = data().deepCopy(fields()[4].schema(), other.caseId);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.variantValidation)) {
        this.variantValidation = data().deepCopy(fields()[5].schema(), other.variantValidation);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.comments)) {
        this.comments = data().deepCopy(fields()[6].schema(), other.comments);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.variantClassification)) {
        this.variantClassification = data().deepCopy(fields()[7].schema(), other.variantClassification);
        fieldSetFlags()[7] = true;
      }
      if (isValidValue(fields()[8], other.Artifact)) {
        this.Artifact = data().deepCopy(fields()[8].schema(), other.Artifact);
        fieldSetFlags()[8] = true;
      }
      if (isValidValue(fields()[9], other.decisionSupportSystemFilters)) {
        this.decisionSupportSystemFilters = data().deepCopy(fields()[9].schema(), other.decisionSupportSystemFilters);
        fieldSetFlags()[9] = true;
      }
    }
    
    /** Creates a Builder by copying an existing StructuralVariantInterpretationLog instance */
    private Builder(org.gel.models.report.avro.StructuralVariantInterpretationLog other) {
            super(org.gel.models.report.avro.StructuralVariantInterpretationLog.SCHEMA$);
      if (isValidValue(fields()[0], other.variant)) {
        this.variant = data().deepCopy(fields()[0].schema(), other.variant);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.user)) {
        this.user = data().deepCopy(fields()[1].schema(), other.user);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.timestamp)) {
        this.timestamp = data().deepCopy(fields()[2].schema(), other.timestamp);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.groupId)) {
        this.groupId = data().deepCopy(fields()[3].schema(), other.groupId);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.caseId)) {
        this.caseId = data().deepCopy(fields()[4].schema(), other.caseId);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.variantValidation)) {
        this.variantValidation = data().deepCopy(fields()[5].schema(), other.variantValidation);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.comments)) {
        this.comments = data().deepCopy(fields()[6].schema(), other.comments);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.variantClassification)) {
        this.variantClassification = data().deepCopy(fields()[7].schema(), other.variantClassification);
        fieldSetFlags()[7] = true;
      }
      if (isValidValue(fields()[8], other.Artifact)) {
        this.Artifact = data().deepCopy(fields()[8].schema(), other.Artifact);
        fieldSetFlags()[8] = true;
      }
      if (isValidValue(fields()[9], other.decisionSupportSystemFilters)) {
        this.decisionSupportSystemFilters = data().deepCopy(fields()[9].schema(), other.decisionSupportSystemFilters);
        fieldSetFlags()[9] = true;
      }
    }

    /** Gets the value of the 'variant' field */
    public org.gel.models.report.avro.StructuralVariantDetails getVariant() {
      return variant;
    }
    
    /** Sets the value of the 'variant' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setVariant(org.gel.models.report.avro.StructuralVariantDetails value) {
      validate(fields()[0], value);
      this.variant = value;
      fieldSetFlags()[0] = true;
      return this; 
    }
    
    /** Checks whether the 'variant' field has been set */
    public boolean hasVariant() {
      return fieldSetFlags()[0];
    }
    
    /** Clears the value of the 'variant' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearVariant() {
      variant = null;
      fieldSetFlags()[0] = false;
      return this;
    }

    /** Gets the value of the 'user' field */
    public org.gel.models.report.avro.User getUser() {
      return user;
    }
    
    /** Sets the value of the 'user' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setUser(org.gel.models.report.avro.User value) {
      validate(fields()[1], value);
      this.user = value;
      fieldSetFlags()[1] = true;
      return this; 
    }
    
    /** Checks whether the 'user' field has been set */
    public boolean hasUser() {
      return fieldSetFlags()[1];
    }
    
    /** Clears the value of the 'user' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearUser() {
      user = null;
      fieldSetFlags()[1] = false;
      return this;
    }

    /** Gets the value of the 'timestamp' field */
    public java.lang.String getTimestamp() {
      return timestamp;
    }
    
    /** Sets the value of the 'timestamp' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setTimestamp(java.lang.String value) {
      validate(fields()[2], value);
      this.timestamp = value;
      fieldSetFlags()[2] = true;
      return this; 
    }
    
    /** Checks whether the 'timestamp' field has been set */
    public boolean hasTimestamp() {
      return fieldSetFlags()[2];
    }
    
    /** Clears the value of the 'timestamp' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearTimestamp() {
      timestamp = null;
      fieldSetFlags()[2] = false;
      return this;
    }

    /** Gets the value of the 'groupId' field */
    public java.lang.String getGroupId() {
      return groupId;
    }
    
    /** Sets the value of the 'groupId' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setGroupId(java.lang.String value) {
      validate(fields()[3], value);
      this.groupId = value;
      fieldSetFlags()[3] = true;
      return this; 
    }
    
    /** Checks whether the 'groupId' field has been set */
    public boolean hasGroupId() {
      return fieldSetFlags()[3];
    }
    
    /** Clears the value of the 'groupId' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearGroupId() {
      groupId = null;
      fieldSetFlags()[3] = false;
      return this;
    }

    /** Gets the value of the 'caseId' field */
    public java.lang.String getCaseId() {
      return caseId;
    }
    
    /** Sets the value of the 'caseId' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setCaseId(java.lang.String value) {
      validate(fields()[4], value);
      this.caseId = value;
      fieldSetFlags()[4] = true;
      return this; 
    }
    
    /** Checks whether the 'caseId' field has been set */
    public boolean hasCaseId() {
      return fieldSetFlags()[4];
    }
    
    /** Clears the value of the 'caseId' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearCaseId() {
      caseId = null;
      fieldSetFlags()[4] = false;
      return this;
    }

    /** Gets the value of the 'variantValidation' field */
    public org.gel.models.report.avro.VariantValidation getVariantValidation() {
      return variantValidation;
    }
    
    /** Sets the value of the 'variantValidation' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setVariantValidation(org.gel.models.report.avro.VariantValidation value) {
      validate(fields()[5], value);
      this.variantValidation = value;
      fieldSetFlags()[5] = true;
      return this; 
    }
    
    /** Checks whether the 'variantValidation' field has been set */
    public boolean hasVariantValidation() {
      return fieldSetFlags()[5];
    }
    
    /** Clears the value of the 'variantValidation' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearVariantValidation() {
      variantValidation = null;
      fieldSetFlags()[5] = false;
      return this;
    }

    /** Gets the value of the 'comments' field */
    public java.util.List getComments() {
      return comments;
    }
    
    /** Sets the value of the 'comments' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setComments(java.util.List value) {
      validate(fields()[6], value);
      this.comments = value;
      fieldSetFlags()[6] = true;
      return this; 
    }
    
    /** Checks whether the 'comments' field has been set */
    public boolean hasComments() {
      return fieldSetFlags()[6];
    }
    
    /** Clears the value of the 'comments' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearComments() {
      comments = null;
      fieldSetFlags()[6] = false;
      return this;
    }

    /** Gets the value of the 'variantClassification' field */
    public org.gel.models.report.avro.ClinicalSignificance getVariantClassification() {
      return variantClassification;
    }
    
    /** Sets the value of the 'variantClassification' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setVariantClassification(org.gel.models.report.avro.ClinicalSignificance value) {
      validate(fields()[7], value);
      this.variantClassification = value;
      fieldSetFlags()[7] = true;
      return this; 
    }
    
    /** Checks whether the 'variantClassification' field has been set */
    public boolean hasVariantClassification() {
      return fieldSetFlags()[7];
    }
    
    /** Clears the value of the 'variantClassification' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearVariantClassification() {
      variantClassification = null;
      fieldSetFlags()[7] = false;
      return this;
    }

    /** Gets the value of the 'Artifact' field */
    public java.lang.Boolean getArtifact() {
      return Artifact;
    }
    
    /** Sets the value of the 'Artifact' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setArtifact(java.lang.Boolean value) {
      validate(fields()[8], value);
      this.Artifact = value;
      fieldSetFlags()[8] = true;
      return this; 
    }
    
    /** Checks whether the 'Artifact' field has been set */
    public boolean hasArtifact() {
      return fieldSetFlags()[8];
    }
    
    /** Clears the value of the 'Artifact' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearArtifact() {
      Artifact = null;
      fieldSetFlags()[8] = false;
      return this;
    }

    /** Gets the value of the 'decisionSupportSystemFilters' field */
    public java.util.Map getDecisionSupportSystemFilters() {
      return decisionSupportSystemFilters;
    }
    
    /** Sets the value of the 'decisionSupportSystemFilters' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder setDecisionSupportSystemFilters(java.util.Map value) {
      validate(fields()[9], value);
      this.decisionSupportSystemFilters = value;
      fieldSetFlags()[9] = true;
      return this; 
    }
    
    /** Checks whether the 'decisionSupportSystemFilters' field has been set */
    public boolean hasDecisionSupportSystemFilters() {
      return fieldSetFlags()[9];
    }
    
    /** Clears the value of the 'decisionSupportSystemFilters' field */
    public org.gel.models.report.avro.StructuralVariantInterpretationLog.Builder clearDecisionSupportSystemFilters() {
      decisionSupportSystemFilters = null;
      fieldSetFlags()[9] = false;
      return this;
    }

    @Override
    public StructuralVariantInterpretationLog build() {
      try {
        StructuralVariantInterpretationLog record = new StructuralVariantInterpretationLog();
        record.variant = fieldSetFlags()[0] ? this.variant : (org.gel.models.report.avro.StructuralVariantDetails) defaultValue(fields()[0]);
        record.user = fieldSetFlags()[1] ? this.user : (org.gel.models.report.avro.User) defaultValue(fields()[1]);
        record.timestamp = fieldSetFlags()[2] ? this.timestamp : (java.lang.String) defaultValue(fields()[2]);
        record.groupId = fieldSetFlags()[3] ? this.groupId : (java.lang.String) defaultValue(fields()[3]);
        record.caseId = fieldSetFlags()[4] ? this.caseId : (java.lang.String) defaultValue(fields()[4]);
        record.variantValidation = fieldSetFlags()[5] ? this.variantValidation : (org.gel.models.report.avro.VariantValidation) defaultValue(fields()[5]);
        record.comments = fieldSetFlags()[6] ? this.comments : (java.util.List) defaultValue(fields()[6]);
        record.variantClassification = fieldSetFlags()[7] ? this.variantClassification : (org.gel.models.report.avro.ClinicalSignificance) defaultValue(fields()[7]);
        record.Artifact = fieldSetFlags()[8] ? this.Artifact : (java.lang.Boolean) defaultValue(fields()[8]);
        record.decisionSupportSystemFilters = fieldSetFlags()[9] ? this.decisionSupportSystemFilters : (java.util.Map) defaultValue(fields()[9]);
        return record;
      } catch (Exception e) {
        throw new org.apache.avro.AvroRuntimeException(e);
      }
    }
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy