/** * Set the "gtf.feature.exon" and "gtf.tag.exon.parent.transcript" parameter from the expression * step parameters. * * @param context the context of the task * @throws EoulsanException if more than one expression step exists */ private void searchExpressionStepParameters(final TaskContext context) throws EoulsanException { int count = 0; for (Step step : context.getWorkflow().getSteps()) { if (AbstractExpressionModule.MODULE_NAME.equals(step.getModuleName())) { for (Parameter p : step.getParameters()) { switch (p.getName()) { case AbstractExpressionModule.OLD_GENOMIC_TYPE_PARAMETER_NAME: case AbstractExpressionModule.GENOMIC_TYPE_PARAMETER_NAME: gtfFeatureExon = p.getStringValue(); break; case AbstractExpressionModule.OLD_ATTRIBUTE_ID_PARAMETER_NAME: case AbstractExpressionModule.ATTRIBUTE_ID_PARAMETER_NAME: gtfTagExonParentTranscript = p.getStringValue(); break; default: break; } } count++; } } if (count == 0) { throw new EoulsanException("No expression step found in the workflow"); } if (count > 1) { throw new EoulsanException("Found more than one expression step in the workflow"); } }