Skip to content

Commit 66dfdc4

Browse files
committed
Allow ReadData to store/report expected reads
1 parent a9d6f80 commit 66dfdc4

File tree

3 files changed

+51
-1
lines changed

3 files changed

+51
-1
lines changed

SequenceAnalysis/api-src/org/labkey/api/sequenceanalysis/model/ReadData.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ public interface ReadData extends Serializable
5656

5757
public Integer getModifiedBy();
5858

59+
public Integer getTotalReads();
60+
5961
public String getSra_accession();
6062

6163
public boolean isArchived();

SequenceAnalysis/src/org/labkey/sequenceanalysis/ReadDataImpl.java

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,21 @@
11
package org.labkey.sequenceanalysis;
22

3+
import org.labkey.api.data.CompareType;
4+
import org.labkey.api.data.SimpleFilter;
5+
import org.labkey.api.data.Sort;
6+
import org.labkey.api.data.TableSelector;
37
import org.labkey.api.data.Transient;
48
import org.labkey.api.exp.api.ExpData;
59
import org.labkey.api.exp.api.ExperimentService;
610
import org.labkey.api.pipeline.PipelineJobService;
11+
import org.labkey.api.query.FieldKey;
712
import org.labkey.api.sequenceanalysis.model.ReadData;
13+
import org.labkey.api.util.PageFlowUtil;
814

915
import java.io.File;
1016
import java.util.Date;
1117
import java.util.HashMap;
18+
import java.util.List;
1219
import java.util.Map;
1320

1421
/**
@@ -32,6 +39,7 @@ public class ReadDataImpl implements ReadData
3239
private Integer _runId;
3340
private boolean _archived = false;
3441
private String sra_accession;
42+
private Integer _totalReads;
3543

3644
private Map<Integer, File> _cachedFiles = new HashMap<>();
3745

@@ -197,6 +205,44 @@ public void setFile(File f, int fileIdx)
197205
_cachedFiles.put(fileIdx, f);
198206
}
199207

208+
@Override
209+
public Integer getTotalReads()
210+
{
211+
if (getFileId1() == null)
212+
{
213+
return null;
214+
}
215+
216+
if (_totalReads == null)
217+
{
218+
if (PipelineJobService.get().getLocationType() != PipelineJobService.LocationType.WebServer)
219+
{
220+
throw new IllegalStateException("Cannot call getTotalReads() on the remote server unless this value has been cached");
221+
}
222+
223+
SimpleFilter filter = new SimpleFilter(FieldKey.fromString("dataid"), getFileId1());
224+
filter.addCondition(FieldKey.fromString("readset"), getReadset(), CompareType.EQUAL);
225+
filter.addCondition(FieldKey.fromString("metricvalue"), "Total Reads", CompareType.EQUAL);
226+
TableSelector ts = new TableSelector(SequenceAnalysisSchema.getTable(SequenceAnalysisSchema.TABLE_QUALITY_METRICS), PageFlowUtil.set("metricvalue"), filter, new Sort("-rowid"));
227+
List<Double> values = ts.getArrayList(Double.class);
228+
if (!values.isEmpty())
229+
{
230+
_totalReads = values.get(0).intValue();
231+
}
232+
else
233+
{
234+
_totalReads = 0;
235+
}
236+
}
237+
238+
return _totalReads;
239+
}
240+
241+
public void setTotalReads(Integer totalReads)
242+
{
243+
_totalReads = totalReads;
244+
}
245+
200246
@Transient
201247
private File getFile(int fileIdx, Integer fileId)
202248
{
@@ -242,6 +288,8 @@ public void cacheForRemoteServer()
242288
getFile1();
243289
getFile2();
244290
}
291+
292+
getTotalReads();
245293
}
246294

247295
@Transient

SequenceAnalysis/src/org/labkey/sequenceanalysis/run/util/AbstractGenomicsDBImportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -786,7 +786,7 @@ private void doConsolidate(JobContext ctx, File workingDestinationWorkspaceFolde
786786
{
787787
File contigFolder = new File(workingDestinationWorkspaceFolder, getFolderNameFromInterval(i));
788788
ctx.getLogger().info("Consolidating contig folder: " + contigFolder);
789-
ctx.getJob().setStatus(PipelineJob.TaskStatus.running, "Consolidating contig folder: " + contigFolder);
789+
ctx.getJob().setStatus(PipelineJob.TaskStatus.running, "Consolidating contig folder: " + contigFolder.getName());
790790

791791
List<String> toRun = new ArrayList<>(baseArgs);
792792
toRun.add("-a");

0 commit comments

Comments
 (0)