3030import org .labkey .api .sequenceanalysis .pipeline .AbstractPipelineStep ;
3131import org .labkey .api .sequenceanalysis .pipeline .AbstractVariantProcessingStepProvider ;
3232import org .labkey .api .sequenceanalysis .pipeline .PipelineContext ;
33- import org .labkey .api .sequenceanalysis .pipeline .PipelineStep ;
3433import org .labkey .api .sequenceanalysis .pipeline .PipelineStepProvider ;
3534import org .labkey .api .sequenceanalysis .pipeline .ReferenceGenome ;
3635import org .labkey .api .sequenceanalysis .pipeline .SequenceAnalysisJobSupport ;
4443import java .io .IOException ;
4544import java .sql .SQLException ;
4645import java .util .ArrayList ;
47- import java .util .Arrays ;
46+ import java .util .Collection ;
4847import java .util .Collections ;
4948import java .util .HashMap ;
5049import java .util .HashSet ;
@@ -242,8 +241,7 @@ private Map<String, String> getSamplesToAlias(File input) throws PipelineJobExce
242241 try (VCFFileReader reader = new VCFFileReader (input ))
243242 {
244243 VCFHeader header = reader .getFileHeader ();
245- List <String > subjects = header .getSampleNamesInOrder ();
246- if (subjects .isEmpty ())
244+ if (header .getSampleNamesInOrder ().isEmpty ())
247245 {
248246 return Collections .emptyMap ();
249247 }
@@ -252,15 +250,15 @@ private Map<String, String> getSamplesToAlias(File input) throws PipelineJobExce
252250 getPipelineCtx ().getLogger ().info ("total samples in input VCF: " + sampleNames .size ());
253251
254252 // Pass 1: match on proper ID:
255- querySampleBatch (sampleNameMap , new SimpleFilter (FieldKey .fromString ("subjectname" ), subjects , CompareType .IN ), subjects );
253+ querySampleBatch (sampleNameMap , new SimpleFilter (FieldKey .fromString ("subjectname" ), sampleNames , CompareType .IN ), sampleNames );
256254
257255 // Pass 2: add others using otherNames:
258256 List <String > missingSamples = new ArrayList <>(sampleNames );
259257 missingSamples .removeAll (sampleNameMap .keySet ());
260258 if (!missingSamples .isEmpty ())
261259 {
262260 getPipelineCtx ().getLogger ().debug ("Querying " + missingSamples .size () + " samples using otherNames field for " + missingSamples .size () + " IDs" );
263- querySampleBatch (sampleNameMap , new SimpleFilter (FieldKey .fromString ("otherNames" ), missingSamples , CompareType .CONTAINS_ONE_OF ), subjects );
261+ querySampleBatch (sampleNameMap , new SimpleFilter (FieldKey .fromString ("otherNames" ), missingSamples , CompareType .CONTAINS_ONE_OF ), missingSamples );
264262 }
265263
266264 getPipelineCtx ().getLogger ().info ("total sample names to alias: " + sampleNameMap .size ());
@@ -284,7 +282,7 @@ private Map<String, String> getSamplesToAlias(File input) throws PipelineJobExce
284282 return sampleNameMap ;
285283 }
286284
287- private void querySampleBatch (Map <String , String > sampleNameMap , SimpleFilter filter , List <String > sampleNames )
285+ private void querySampleBatch (Map <String , String > sampleNameMap , SimpleFilter filter , Collection <String > sampleNames )
288286 {
289287 final Map <String , String > subjectToOrigCase = new CaseInsensitiveHashMap <>();
290288 sampleNames .forEach (x -> {
0 commit comments