org.opencb.biodata.models.clinical.interpretation.ClinicalVariant Maven / Gradle / Ivy
The newest version!
/*
*
*
*/
package org.opencb.biodata.models.clinical.interpretation;
import org.opencb.biodata.models.clinical.ClinicalComment;
import org.opencb.biodata.models.clinical.ClinicalDiscussion;
import org.opencb.biodata.models.variant.Variant;
import org.opencb.biodata.models.variant.avro.VariantAvro;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ClinicalVariant extends Variant {
private List evidences;
private List comments;
private Map filters;
private String recommendation;
private List references;
private ClinicalDiscussion discussion;
private ClinicalVariantConfidence confidence;
private List tags;
private Status status;
// TODO maybe this parameter should be in Variant
private Map attributes;
public enum Status {
NOT_REVIEWED,
REVIEW_REQUESTED,
REVIEWED,
DISCARDED,
REPORTED,
ARTIFACT
}
public ClinicalVariant() {
this.status = Status.NOT_REVIEWED;
}
public ClinicalVariant(VariantAvro avro) {
this(avro, new ArrayList<>(), new ArrayList<>(), new HashMap<>(), new ClinicalDiscussion(), null,
Status.NOT_REVIEWED, new ArrayList<>(), new HashMap<>());
}
@Deprecated
public ClinicalVariant(VariantAvro avro, List evidences, List comments,
Map filters, ClinicalDiscussion discussion, Status status, List tags,
Map attributes) {
super(avro);
this.evidences = evidences;
this.comments = comments;
this.filters = filters;
this.discussion = discussion;
this.status = status;
this.tags = tags;
this.attributes = attributes;
}
@Deprecated
public ClinicalVariant(VariantAvro avro, List evidences, List comments,
Map filters, ClinicalDiscussion discussion,
ClinicalVariantConfidence confidence, Status status, List tags,
Map attributes) {
super(avro);
this.evidences = evidences;
this.comments = comments;
this.filters = filters;
this.discussion = discussion;
this.status = status;
this.tags = tags;
this.confidence = confidence;
this.attributes = attributes;
}
public ClinicalVariant(VariantAvro avro, List evidences, List comments,
Map filters, String recommendation, List references,
ClinicalDiscussion discussion, ClinicalVariantConfidence confidence, Status status,
List tags, Map attributes) {
super(avro);
this.evidences = evidences;
this.comments = comments;
this.filters = filters;
this.recommendation = recommendation;
this.references = references;
this.discussion = discussion;
this.status = status;
this.tags = tags;
this.confidence = confidence;
this.attributes = attributes;
}
@Override
public String toString() {
return super.toString();
}
public List getEvidences() {
return evidences;
}
public ClinicalVariant setEvidences(List evidences) {
this.evidences = evidences;
return this;
}
public List getComments() {
return comments;
}
public ClinicalVariant setComments(List comments) {
this.comments = comments;
return this;
}
public Map getFilters() {
return filters;
}
public ClinicalVariant setFilters(Map filters) {
this.filters = filters;
return this;
}
public String getRecommendation() {
return recommendation;
}
public ClinicalVariant setRecommendation(String recommendation) {
this.recommendation = recommendation;
return this;
}
public List getReferences() {
return references;
}
public ClinicalVariant setReferences(List references) {
this.references = references;
return this;
}
public ClinicalDiscussion getDiscussion() {
return discussion;
}
public ClinicalVariant setDiscussion(ClinicalDiscussion discussion) {
this.discussion = discussion;
return this;
}
public ClinicalVariantConfidence getConfidence() {
return confidence;
}
public ClinicalVariant setConfidence(ClinicalVariantConfidence confidence) {
this.confidence = confidence;
return this;
}
public Status getStatus() {
return status;
}
public ClinicalVariant setStatus(Status status) {
this.status = status;
return this;
}
public List getTags() {
return tags;
}
public ClinicalVariant setTags(List tags) {
this.tags = tags;
return this;
}
public Map getAttributes() {
return attributes;
}
public ClinicalVariant setAttributes(Map attributes) {
this.attributes = attributes;
return this;
}
}