Skip to content

Commit

Permalink
core: create the data model QualityControlStatus and include it in fa…
Browse files Browse the repository at this point in the history
…mily, individual and sample internals, #TASK-6772, #TASK-6766
  • Loading branch information
jtarraga committed Sep 4, 2024
1 parent 536cca9 commit 45eea16
Show file tree
Hide file tree
Showing 4 changed files with 124 additions and 10 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
/*
* Copyright 2015-2020 OpenCB
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package org.opencb.opencga.core.models.common;

import org.opencb.opencga.core.common.TimeUtils;

public class QualityControlStatus extends Internal {

public QualityControlStatus() {
}

public QualityControlStatus(InternalStatus status, String registrationDate, String modificationDate) {
super(status, registrationDate, modificationDate);
}

public static QualityControlStatus init() {
return new QualityControlStatus(null, TimeUtils.getTime(), TimeUtils.getTime());
}

@Override
public String toString() {
final StringBuilder sb = new StringBuilder("QualityControlStatus{");
sb.append("status=").append(status);
sb.append(", registrationDate='").append(registrationDate).append('\'');
sb.append(", modificationDate='").append(lastModified).append('\'');
sb.append('}');
return sb.toString();
}

public InternalStatus getStatus() {
return status;
}

public QualityControlStatus setStatus(InternalStatus status) {
this.status = status;
return this;
}

public String getRegistrationDate() {
return registrationDate;
}

public QualityControlStatus setRegistrationDate(String registrationDate) {
this.registrationDate = registrationDate;
return this;
}

public String getLastModified() {
return lastModified;
}

public QualityControlStatus setLastModified(String lastModified) {
this.lastModified = lastModified;
return this;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,21 +18,26 @@

import org.opencb.opencga.core.common.TimeUtils;
import org.opencb.opencga.core.models.common.Internal;
import org.opencb.opencga.core.models.common.QualityControlStatus;

public class FamilyInternal extends Internal {

private FamilyStatus status;
private QualityControlStatus qualityControlStatus;

public FamilyInternal() {
}

public FamilyInternal(String registrationDate, String modificationDate, FamilyStatus status) {
public FamilyInternal(String registrationDate, String modificationDate, FamilyStatus status,
QualityControlStatus qualityControlStatus) {
super(null, registrationDate, modificationDate);
this.status = status;
this.qualityControlStatus = qualityControlStatus;
}

public static FamilyInternal init() {
return new FamilyInternal(TimeUtils.getTime(), TimeUtils.getTime(), new FamilyStatus());
String time = TimeUtils.getTime();
return new FamilyInternal(time, time, new FamilyStatus(), QualityControlStatus.init());
}

@Override
Expand Down Expand Up @@ -71,4 +76,13 @@ public FamilyInternal setLastModified(String lastModified) {
this.lastModified = lastModified;
return this;
}

public QualityControlStatus getQualityControlStatus() {
return qualityControlStatus;
}

public FamilyInternal setQualityControlStatus(QualityControlStatus qualityControlStatus) {
this.qualityControlStatus = qualityControlStatus;
return this;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,26 +19,33 @@
import org.opencb.opencga.core.common.TimeUtils;
import org.opencb.opencga.core.models.common.Internal;
import org.opencb.opencga.core.models.common.InternalStatus;
import org.opencb.opencga.core.models.common.QualityControlStatus;

public class IndividualInternal extends Internal {

private QualityControlStatus qualityControlStatus;

public IndividualInternal() {
}

public IndividualInternal(InternalStatus status, String registrationDate, String modificationDate) {
public IndividualInternal(InternalStatus status, String registrationDate, String modificationDate,
QualityControlStatus qualityControlStatus) {
super(status, registrationDate, modificationDate);
this.qualityControlStatus = qualityControlStatus;
}

public static IndividualInternal init() {
return new IndividualInternal(new InternalStatus(InternalStatus.READY), TimeUtils.getTime(), TimeUtils.getTime());
String time = TimeUtils.getTime();
return new IndividualInternal(new InternalStatus(InternalStatus.READY), time, time, QualityControlStatus.init());
}

@Override
public String toString() {
final StringBuilder sb = new StringBuilder("IndividualInternal{");
sb.append("status=").append(status);
sb.append(", registrationDate='").append(registrationDate).append('\'');
sb.append(", modificationDate='").append(lastModified).append('\'');
sb.append(", lastModified='").append(lastModified).append('\'');
sb.append(", qualityControlStatus=").append(qualityControlStatus);
sb.append('}');
return sb.toString();
}
Expand Down Expand Up @@ -70,4 +77,12 @@ public IndividualInternal setLastModified(String lastModified) {
return this;
}

public QualityControlStatus getQualityControlStatus() {
return qualityControlStatus;
}

public IndividualInternal setQualityControlStatus(QualityControlStatus qualityControlStatus) {
this.qualityControlStatus = qualityControlStatus;
return this;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
import org.opencb.opencga.core.common.TimeUtils;
import org.opencb.opencga.core.models.common.Internal;
import org.opencb.opencga.core.models.common.InternalStatus;
import org.opencb.opencga.core.models.common.QualityControlStatus;
import org.opencb.opencga.core.models.common.RgaIndex;

import java.util.Objects;
Expand All @@ -35,20 +36,23 @@ public class SampleInternal extends Internal {
description = FieldConstants.SAMPLE_INTERNAL_RGA_DESCRIPTION)
private RgaIndex rga;
private SampleInternalVariant variant;
private QualityControlStatus qualityControlStatus;

public SampleInternal() {
}

public SampleInternal(String registrationDate, String modificationDate, InternalStatus status, RgaIndex rga,
SampleInternalVariant variant) {
SampleInternalVariant variant, QualityControlStatus qualityControlStatus) {
super(status, registrationDate, modificationDate);
this.rga = rga;
this.variant = variant;
this.qualityControlStatus = qualityControlStatus;
}

public static SampleInternal init() {
return new SampleInternal(TimeUtils.getTime(), TimeUtils.getTime(), new InternalStatus(InternalStatus.READY), RgaIndex.init(),
SampleInternalVariant.init());
String time = TimeUtils.getTime();
return new SampleInternal(time, time, new InternalStatus(InternalStatus.READY), RgaIndex.init(), SampleInternalVariant.init(),
QualityControlStatus.init());
}

@Override
Expand All @@ -59,6 +63,7 @@ public String toString() {
sb.append(", lastModified='").append(lastModified).append('\'');
sb.append(", rga=").append(rga);
sb.append(", variant=").append(variant);
sb.append(", qualityControlStatus=").append(qualityControlStatus);
sb.append('}');
return sb.toString();
}
Expand Down Expand Up @@ -108,6 +113,15 @@ public SampleInternal setLastModified(String lastModified) {
return this;
}

public QualityControlStatus getQualityControlStatus() {
return qualityControlStatus;
}

public SampleInternal setQualityControlStatus(QualityControlStatus qualityControlStatus) {
this.qualityControlStatus = qualityControlStatus;
return this;
}

@Override
public boolean equals(Object o) {
if (this == o) {
Expand All @@ -117,11 +131,12 @@ public boolean equals(Object o) {
return false;
}
SampleInternal that = (SampleInternal) o;
return Objects.equals(rga, that.rga) && Objects.equals(variant, that.variant);
return Objects.equals(rga, that.rga) && Objects.equals(variant, that.variant)
&& Objects.equals(qualityControlStatus, that.qualityControlStatus);
}

@Override
public int hashCode() {
return Objects.hash(rga, variant);
return Objects.hash(rga, variant, qualityControlStatus);
}
}

0 comments on commit 45eea16

Please sign in to comment.