diff --git a/genotyping/src/org/labkey/genotyping/GenotypingController.java b/genotyping/src/org/labkey/genotyping/GenotypingController.java index 461374b..f7b486b 100644 --- a/genotyping/src/org/labkey/genotyping/GenotypingController.java +++ b/genotyping/src/org/labkey/genotyping/GenotypingController.java @@ -973,8 +973,8 @@ public boolean handlePost(ImportReadsForm form, BindException errors) throws Exc { if (null == form.getReadsPath()) { - File readsFile = form.getValidatedSingleFile(getContainer()); - form.setReadsPath(readsFile.getPath()); + FileLike readsFile = form.getValidatedSingleFile(getContainer()); + form.setReadsPath(readsFile.toNioPathForRead().toFile().getPath()); return false; } @@ -1395,24 +1395,15 @@ public boolean handlePost(PipelinePathForm form, BindException errors) throws IO { Container container = getContainer(); // Manual upload of genotyping analysis; pipeline provider posts to this action with matches file. - Path singleFile = form.getValidatedSinglePath(container); + FileLike singleFile = form.getValidatedSingleFile(container); + FileLike analysisDir = singleFile.getParent(); - if (form.getPipeRoot(container).getRootFileLike().isDescendant(singleFile.toUri())) - { - - FileLike matches = form.getPipeRoot(container).resolvePathToFileLike(singleFile.toString()); - FileLike analysisDir = matches.getParent(); + // Load properties to determine the run. + Properties props = GenotypingManager.get().readProperties(analysisDir); + int analysisId = Integer.parseInt((String) props.get("analysis")); + importAnalysis(analysisId, analysisDir, getUser()); - // Load properties to determine the run. - Properties props = GenotypingManager.get().readProperties(analysisDir); - int analysisId = Integer.parseInt((String) props.get("analysis")); - importAnalysis(analysisId, analysisDir, getUser()); - - return true; - } - - errors.reject(ERROR_MSG, "File was not found under the pipeline root"); - return false; + return true; } @Override diff --git a/genotyping/src/org/labkey/genotyping/Import454ReadsJob.java b/genotyping/src/org/labkey/genotyping/Import454ReadsJob.java index 7a068b2..51f6e12 100644 --- a/genotyping/src/org/labkey/genotyping/Import454ReadsJob.java +++ b/genotyping/src/org/labkey/genotyping/Import454ReadsJob.java @@ -17,7 +17,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; -import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.Strings; import org.labkey.api.data.DbScope; import org.labkey.api.data.RuntimeSQLException; import org.labkey.api.data.Table; @@ -69,7 +69,7 @@ public Import454ReadsJob(ViewBackgroundInfo info, PipeRoot root, File reads, Gen super(Import454ReadsPipelineProvider.NAME, info, root, run); FileLike verifiedFileLike = FileSystemLike.getVerifiedFileLike(root.getContainer(), reads.getAbsolutePath()); _reads = FileSystemLike.toFile(verifiedFileLike); - setLogFile(verifiedFileLike.getParent().resolveChild(FileUtil.makeFileNameWithTimestamp("import_reads", "log")).toNioPathForWrite()); + setLogFile(verifiedFileLike.getParent().resolveChild(FileUtil.makeFileNameWithTimestamp("import_reads", "log"))); } @Override @@ -91,7 +91,7 @@ public void run() } catch (SQLException se) { - if (RuntimeSQLException.isConstraintException(se) && StringUtils.containsIgnoreCase(se.getMessage(), "uq_reads_name")) + if (RuntimeSQLException.isConstraintException(se) && Strings.CI.contains(se.getMessage(), "uq_reads_name")) throw new RuntimeException("A readname in this file already exists in the database; this run may have been imported previously", se); else throw se; @@ -126,8 +126,7 @@ private void importReads() throws IOException, SQLException, PipelineJobExceptio try (TabLoader loader = new TabLoader(_reads, true)) { - List columns = new ArrayList<>(); - columns.addAll(Arrays.asList(loader.getColumns())); + List columns = new ArrayList<>(Arrays.asList(loader.getColumns())); for (ColumnDescriptor col : columns) { diff --git a/genotyping/src/org/labkey/genotyping/ImportAnalysisJob.java b/genotyping/src/org/labkey/genotyping/ImportAnalysisJob.java index 55d29ad..7b92336 100644 --- a/genotyping/src/org/labkey/genotyping/ImportAnalysisJob.java +++ b/genotyping/src/org/labkey/genotyping/ImportAnalysisJob.java @@ -61,7 +61,7 @@ public ImportAnalysisJob(ViewBackgroundInfo info, PipeRoot root, FileLike pipeli super("Import Analysis", info, root); _dir = pipelineDir; _analysis = analysis; - setLogFile(_dir.resolveChild(FileUtil.makeFileNameWithTimestamp("import_analysis", "log")).toNioPathForWrite()); + setLogFile(_dir.resolveChild(FileUtil.makeFileNameWithTimestamp("import_analysis", "log"))); if (!_dir.exists()) throw new IllegalArgumentException("Pipeline directory does not exist: " + _dir.toNioPathForRead().toAbsolutePath()); diff --git a/genotyping/src/org/labkey/genotyping/ImportIlluminaReadsJob.java b/genotyping/src/org/labkey/genotyping/ImportIlluminaReadsJob.java index 7da095e..bebac4e 100644 --- a/genotyping/src/org/labkey/genotyping/ImportIlluminaReadsJob.java +++ b/genotyping/src/org/labkey/genotyping/ImportIlluminaReadsJob.java @@ -77,7 +77,7 @@ public ImportIlluminaReadsJob(ViewBackgroundInfo info, PipeRoot root, File sampl FileLike verifiedFileLike = FileSystemLike.getVerifiedFileLike(root.getContainer(), sampleFile.getAbsolutePath()); _sampleFile = FileSystemLike.toFile(verifiedFileLike); _fastqPrefix = fastqPrefix; - setLogFile(verifiedFileLike.getParent().resolveChild(FileUtil.makeFileNameWithTimestamp("import_reads", "log")).toNioPathForWrite()); + setLogFile(verifiedFileLike.getParent().resolveChild(FileUtil.makeFileNameWithTimestamp("import_reads", "log"))); } @Override diff --git a/genotyping/src/org/labkey/genotyping/ImportPacBioReadsJob.java b/genotyping/src/org/labkey/genotyping/ImportPacBioReadsJob.java index 7c14ff8..5ad11d0 100644 --- a/genotyping/src/org/labkey/genotyping/ImportPacBioReadsJob.java +++ b/genotyping/src/org/labkey/genotyping/ImportPacBioReadsJob.java @@ -73,7 +73,7 @@ public ImportPacBioReadsJob(ViewBackgroundInfo info, PipeRoot root, File sampleF FileLike verifiedFileLike = FileSystemLike.getVerifiedFileLike(root.getContainer(), sampleFile.getAbsolutePath()); _sampleFile = FileSystemLike.toFile(verifiedFileLike); _fastqPrefix = fastqPrefix; - setLogFile(verifiedFileLike.getParent().resolveChild(FileUtil.makeFileNameWithTimestamp("import_pacbio_reads", "log")).toNioPathForWrite()); + setLogFile(verifiedFileLike.getParent().resolveChild(FileUtil.makeFileNameWithTimestamp("import_pacbio_reads", "log"))); } @Override diff --git a/genotyping/src/org/labkey/genotyping/SubmitAnalysisJob.java b/genotyping/src/org/labkey/genotyping/SubmitAnalysisJob.java index f010206..690b33d 100644 --- a/genotyping/src/org/labkey/genotyping/SubmitAnalysisJob.java +++ b/genotyping/src/org/labkey/genotyping/SubmitAnalysisJob.java @@ -110,7 +110,7 @@ public SubmitAnalysisJob(ViewBackgroundInfo info, PipeRoot root, FileLike reads, throw new MinorConfigurationException("Can't create analysis directory: " + _analysisDir.getPath()); } - setLogFile(_analysisDir.resolveChild(FileUtil.makeFileNameWithTimestamp("submit_analysis", "log")).toNioPathForWrite()); + setLogFile(_analysisDir.resolveChild(FileUtil.makeFileNameWithTimestamp("submit_analysis", "log"))); info("Creating analysis directory: " + _analysisDir.getName()); _analysis.setPath(FileUtil.getAbsolutePath(_analysisDir.toNioPathForRead())); _analysis.setFileName(_analysisDir.getName());