Skip to content

Commit

Permalink
Merge pull request #511 from ao508/data-parsing-only
Browse files Browse the repository at this point in the history
Add incoming data models for incoming IGO data
  • Loading branch information
divyamadala30 authored Dec 13, 2021
2 parents cb84420 + 583565e commit e8cc327
Show file tree
Hide file tree
Showing 16 changed files with 561 additions and 424 deletions.
75 changes: 28 additions & 47 deletions model/src/main/java/org/mskcc/cmo/metadb/model/MetadbRequest.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import java.util.Map;
import java.util.UUID;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.mskcc.cmo.metadb.model.igo.IgoRequest;
import org.neo4j.ogm.annotation.GeneratedValue;
import org.neo4j.ogm.annotation.Id;
import org.neo4j.ogm.annotation.NodeEntity;
Expand All @@ -28,6 +29,8 @@
@JsonIgnoreProperties({"samples"})
@JsonInclude(JsonInclude.Include.NON_NULL)
public class MetadbRequest implements Serializable {
private final ObjectMapper mapper = new ObjectMapper();

@Id @GeneratedValue(strategy = UuidStrategy.class)
@Convert(UuidStringConverter.class)
private UUID metaDbRequestId;
Expand Down Expand Up @@ -65,54 +68,32 @@ public class MetadbRequest implements Serializable {
public MetadbRequest() {}

/**
* MetaDbRequest constructor
* @param requestId
* @param recipe
* @param projectManagerName
* @param piEmail
* @param labHeadName
* @param labHeadEmail
* @param investigatorName
* @param investigatorEmail
* @param dataAnalystName
* @param dataAnalystEmail
* @param otherContactEmails
* @param dataAccessEmails
* @param qcAccessEmails
* @param strand
* @param libraryType
* @param metaDbSampleList
* @param requestJson
* @param bicAnalysis
* @param isCmoRequest
* MetadbRequest constructor.
* @param igoRequest
* @throws JsonProcessingException
*/
public MetadbRequest(String requestId, String recipe, String projectManagerName,
String piEmail, String labHeadName, String labHeadEmail,
String investigatorName, String investigatorEmail, String dataAnalystName,
String dataAnalystEmail, String otherContactEmails, String dataAccessEmails,
String qcAccessEmails, String strand, String libraryType,
List<MetadbSample> metaDbSampleList, String requestJson,
boolean bicAnalysis, boolean isCmoRequest) {
this.requestId = requestId;
this.recipe = recipe;
this.projectManagerName = projectManagerName;
this.piEmail = piEmail;
this.labHeadName = labHeadName;
this.labHeadEmail = labHeadEmail;
this.investigatorName = investigatorName;
this.investigatorEmail = investigatorEmail;
this.dataAnalystName = dataAnalystName;
this.dataAnalystEmail = dataAnalystEmail;
this.otherContactEmails = otherContactEmails;
this.dataAccessEmails = dataAccessEmails;
this.qcAccessEmails = qcAccessEmails;
this.strand = strand;
this.libraryType = libraryType;
this.metaDbSampleList = metaDbSampleList;
this.metaDbProject = new MetadbProject(requestId.split("_")[0]);
this.requestJson = requestJson;
this.bicAnalysis = bicAnalysis;
this.isCmoRequest = isCmoRequest;
public MetadbRequest(IgoRequest igoRequest) throws JsonProcessingException {
this.requestId = igoRequest.getRequestId();
this.projectId = igoRequest.getProjectId();
this.dataAccessEmails = igoRequest.getDataAccessEmails();
this.dataAnalystEmail = igoRequest.getDataAnalystEmail();
this.dataAnalystName = igoRequest.getDataAnalystName();
this.investigatorEmail = igoRequest.getInvestigatorEmail();
this.investigatorName = igoRequest.getInvestigatorName();
this.labHeadEmail = igoRequest.getLabHeadEmail();
this.labHeadName = igoRequest.getLabHeadName();
this.libraryType = igoRequest.getLibraryType();
this.otherContactEmails = igoRequest.getOtherContactEmails();
this.piEmail = igoRequest.getPiEmail();
this.projectManagerName = igoRequest.getProjectManagerName();
this.qcAccessEmails = igoRequest.getQcAccessEmails();
this.recipe = igoRequest.getRecipe();
this.strand = igoRequest.getStrand();
this.pooledNormals = igoRequest.getPooledNormals();
this.bicAnalysis = igoRequest.getBicAnalysis();
this.isCmoRequest = igoRequest.getIsCmoRequest();
this.namespace = "igo";
this.requestJson = mapper.writeValueAsString(igoRequest);
}

public UUID getMetaDbRequestId() {
Expand Down
200 changes: 42 additions & 158 deletions model/src/main/java/org/mskcc/cmo/metadb/model/SampleMetadata.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package org.mskcc.cmo.metadb.model;

import com.fasterxml.jackson.annotation.JsonAlias;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.core.JsonProcessingException;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
Expand All @@ -12,6 +11,9 @@
import org.mskcc.cmo.metadb.model.converter.LibrariesStringConverter;
import org.mskcc.cmo.metadb.model.converter.MapStringConverter;
import org.mskcc.cmo.metadb.model.converter.QcReportsStringConverter;
import org.mskcc.cmo.metadb.model.igo.IgoSampleManifest;
import org.mskcc.cmo.metadb.model.igo.Library;
import org.mskcc.cmo.metadb.model.igo.QcReport;
import org.neo4j.ogm.annotation.GeneratedValue;
import org.neo4j.ogm.annotation.Id;
import org.neo4j.ogm.annotation.typeconversion.Convert;
Expand All @@ -21,122 +23,68 @@ public class SampleMetadata implements Serializable, Comparable<SampleMetadata>
@Id @GeneratedValue
@JsonIgnore
private Long id;
private String importDate;
private String cmoInfoIgoId;
private String primaryId;
private String cmoPatientId;
private String investigatorSampleId;
private String cmoSampleName;
private String sampleName;
private String requestId;
private String importDate;
private String cmoInfoIgoId;
private String cmoSampleClass;
private String oncoTreeCode;
private String collectionYear;
private String tubeId;
private String cfDNA2dBarcode;
@Convert(QcReportsStringConverter.class)
private List<QcReport> qcReports;
@Convert(LibrariesStringConverter.class)
private List<Library> libraries;
private String mrn;
private String cmoPatientId;
@JsonAlias("igoId")
private String primaryId;
private String investigatorSampleId;
private String species;
private String sex;
private String tumorOrNormal;
private String sampleType;
private String preservation;
private String tumorType;
private String parentTumorType;
private String specimenType;
private String sampleOrigin;
private String tissueSource;
private String tissueLocation;
private String recipe;
private String baitSet;
private String fastqPath;
private String principalInvestigator;
private String ancestorSample;
private String sampleStatus;
private String requestId;
@Convert(QcReportsStringConverter.class)
private List<QcReport> qcReports;
@Convert(LibrariesStringConverter.class)
private List<Library> libraries;
@Convert(MapStringConverter.class)
private Map<String, String> cmoSampleIdFields;

public SampleMetadata() {}

/**
* SampleMetadata constructor
* @param primaryId
* @param cmoInfoIgoId
* @param cmoSampleName
* @param sampleName
* @param cmoSampleClass
* @param cmoPatientId
* @param investigatorSampleId
* @param oncoTreeCode
* @param tumorOrNormal
* @param tissueLocation
* @param specimenType
* @param sampleOrigin
* @param preservation
* @param collectionYear
* @param sex
* @param species
* @param tubeId
* @param cfDNA2dBarcode
* @param qcReports
* @param libraries
* @param mrn
* @param sampleType
* @param tumorType
* @param parentTumorType
* @param tissueSource
* @param recipe
* @param baitSet
* @param fastqPath
* @param principalInvestigator
* @param ancestorSample
* @param sampleStatus
* @param importDate
* SampleMetadata constructor from igoSampleManifest.
* @param igoSampleManifest
* @throws JsonProcessingException
*/
public SampleMetadata(String primaryId, String cmoInfoIgoId, String cmoSampleName, String sampleName,
String cmoSampleClass, String cmoPatientId, String investigatorSampleId, String oncoTreeCode,
String tumorOrNormal, String tissueLocation, String specimenType, String sampleOrigin,
String preservation, String collectionYear, String sex, String species, String tubeId,
String cfDNA2dBarcode, List<QcReport> qcReports, List<Library> libraries,
String mrn, String sampleType, String tumorType, String parentTumorType,
String tissueSource, String recipe, String baitSet, String fastqPath,
String principalInvestigator, String ancestorSample, String sampleStatus, String importDate) {
this.mrn = mrn;
this.cmoInfoIgoId = cmoInfoIgoId;
this.cmoSampleName = cmoSampleName;
this.sampleName = sampleName;
this.cmoSampleClass = cmoSampleClass;
this.cmoPatientId = cmoPatientId;
this.primaryId = primaryId;
this.investigatorSampleId = investigatorSampleId;
this.species = species;
this.sex = sex;
this.tumorOrNormal = tumorOrNormal;
this.sampleType = sampleType;
this.preservation = preservation;
this.tumorType = tumorType;
this.parentTumorType = parentTumorType;
this.specimenType = specimenType;
this.sampleOrigin = sampleOrigin;
this.tissueSource = tissueSource;
this.tissueLocation = tissueLocation;
this.recipe = recipe;
this.baitSet = baitSet;
this.principalInvestigator = principalInvestigator;
this.fastqPath = fastqPath;
this.ancestorSample = ancestorSample;
this.sampleStatus = sampleStatus;
this.importDate = importDate;
this.oncoTreeCode = oncoTreeCode;
this.collectionYear = collectionYear;
this.tubeId = tubeId;
this.cfDNA2dBarcode = cfDNA2dBarcode;
this.qcReports = qcReports;
this.libraries = libraries;
public SampleMetadata(IgoSampleManifest igoSampleManifest) throws JsonProcessingException {
this.primaryId = igoSampleManifest.getIgoId();
this.cmoPatientId = igoSampleManifest.getCmoPatientId();
this.investigatorSampleId = igoSampleManifest.getInvestigatorSampleId();
this.cmoSampleName = igoSampleManifest.getCmoSampleName();
this.sampleName = igoSampleManifest.getSampleName();
this.cmoInfoIgoId = igoSampleManifest.getCmoInfoIgoId();
this.cmoSampleClass = igoSampleManifest.getCmoSampleClass();
this.oncoTreeCode = igoSampleManifest.getOncoTreeCode();
this.collectionYear = igoSampleManifest.getCollectionYear();
this.tubeId = igoSampleManifest.getTubeId();
this.cfDNA2dBarcode = igoSampleManifest.getCfDNA2dBarcode();
this.species = igoSampleManifest.getSpecies();
this.sex = igoSampleManifest.getSex();
this.tumorOrNormal = igoSampleManifest.getTumorOrNormal();
this.sampleType = igoSampleManifest.getCmoSampleIdFieldValue("sampleType");
this.preservation = igoSampleManifest.getPreservation();
this.specimenType = igoSampleManifest.getSpecimenType();
this.sampleOrigin = igoSampleManifest.getSampleOrigin();
this.tissueLocation = igoSampleManifest.getTissueLocation();
this.recipe = igoSampleManifest.getCmoSampleIdFieldValue("recipe");
this.baitSet = igoSampleManifest.getBaitSet();
this.qcReports = igoSampleManifest.getQcReports();
this.libraries = igoSampleManifest.getLibraries();
this.cmoSampleIdFields = igoSampleManifest.getCmoSampleIdFields();
}

public Long getId() {
Expand Down Expand Up @@ -271,14 +219,6 @@ public void addLibrary(Library library) {
libraries.add(library);
}

public String getMrn() {
return mrn;
}

public void setMrn(String mrn) {
this.mrn = mrn;
}

public String getCmoPatientId() {
return cmoPatientId;
}
Expand Down Expand Up @@ -343,22 +283,6 @@ public void setPreservation(String preservation) {
this.preservation = preservation;
}

public String getTumorType() {
return tumorType;
}

public void setTumorType(String tumorType) {
this.tumorType = tumorType;
}

public String getParentTumorType() {
return parentTumorType;
}

public void setParentTumorType(String parentTumorType) {
this.parentTumorType = parentTumorType;
}

public String getSpecimenType() {
return specimenType;
}
Expand All @@ -375,14 +299,6 @@ public void setSampleOrigin(String sampleOrigin) {
this.sampleOrigin = sampleOrigin;
}

public String getTissueSource() {
return tissueSource;
}

public void setTissueSource(String tissueSource) {
this.tissueSource = tissueSource;
}

public String getTissueLocation() {
return tissueLocation;
}
Expand All @@ -407,38 +323,6 @@ public void setBaitSet(String baitSet) {
this.baitSet = baitSet;
}

public String getFastqPath() {
return fastqPath;
}

public void setFastqPath(String fastqPath) {
this.fastqPath = fastqPath;
}

public String getPrincipalInvestigator() {
return principalInvestigator;
}

public void setPrincipalInvestigator(String principalInvestigator) {
this.principalInvestigator = principalInvestigator;
}

public String getAncestorSample() {
return ancestorSample;
}

public void setAncestorSample(String ancestorSample) {
this.ancestorSample = ancestorSample;
}

public String getSampleStatus() {
return sampleStatus;
}

public void setSampleStatus(String sampleStatus) {
this.sampleStatus = sampleStatus;
}

public String getRequestId() {
return requestId;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.mskcc.cmo.metadb.model.Library;
import org.mskcc.cmo.metadb.model.igo.Library;
import org.neo4j.ogm.typeconversion.AttributeConverter;

public class LibrariesStringConverter implements AttributeConverter<List<Library>, String> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.mskcc.cmo.metadb.model.QcReport;
import org.mskcc.cmo.metadb.model.igo.QcReport;
import org.neo4j.ogm.typeconversion.AttributeConverter;

public class QcReportsStringConverter implements AttributeConverter<List<QcReport>, String> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.mskcc.cmo.metadb.model.Run;
import org.mskcc.cmo.metadb.model.igo.Run;
import org.neo4j.ogm.typeconversion.AttributeConverter;

public class RunStringConverter implements AttributeConverter<List<Run>, String> {
Expand Down
Loading

0 comments on commit e8cc327

Please sign in to comment.