Interface AnalysisWorkspaceService
-
- All Known Implementing Classes:
AnalysisWorkspaceServiceGalaxy
public interface AnalysisWorkspaceService
Defines a service used to perform the tasks for execution of a workflow.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Analysis
getAnalysisResults(AnalysisSubmission analysisSubmission)
Gets an Analysis object containing the results for this analysis.boolean
outputFilesExist(AnalysisSubmission analysisSubmission)
Checks if all output files from a given AnalysisSubmission are available on galaxy.PreparedWorkflowGalaxy
prepareAnalysisFiles(AnalysisSubmission analysisSubmission)
Uploads and prepares the files and other necessary data structures of a workflow for an analysis given an analysis submission.java.lang.String
prepareAnalysisWorkspace(AnalysisSubmission analysisSubmission)
Prepares the workspace for an analysis given an analysis submission.
-
-
-
Method Detail
-
prepareAnalysisWorkspace
java.lang.String prepareAnalysisWorkspace(AnalysisSubmission analysisSubmission) throws ExecutionManagerException
Prepares the workspace for an analysis given an analysis submission. This provides a remote location where files can be stored for analysis (creates a Galaxy History).- Parameters:
analysisSubmission
- The submission used to perform an analysis.- Returns:
- A String identifying the analysis workspace.
- Throws:
ExecutionManagerException
- If there was an issue preparing the workflow workspace.
-
prepareAnalysisFiles
PreparedWorkflowGalaxy prepareAnalysisFiles(AnalysisSubmission analysisSubmission) throws ExecutionManagerException, IridaWorkflowException, java.io.IOException
Uploads and prepares the files and other necessary data structures of a workflow for an analysis given an analysis submission.- Parameters:
analysisSubmission
- The submission used to perform an analysis.- Returns:
- A PreparedWorkflow which can be submitted.
- Throws:
ExecutionManagerException
- If there was an issue preparing the workflow workspace.IridaWorkflowException
- If there was an issue with the IRIDA workflow.java.io.IOException
- If there was an error reading some of the input files.
-
getAnalysisResults
Analysis getAnalysisResults(AnalysisSubmission analysisSubmission) throws ExecutionManagerException, IridaWorkflowNotFoundException, java.io.IOException, IridaWorkflowAnalysisTypeException
Gets an Analysis object containing the results for this analysis. This object is not persisted in the database.- Parameters:
analysisSubmission
- The submission to get the results for.- Returns:
- An Analysis object containing the results.
- Throws:
ExecutionManagerException
- If there was an error getting the results.IridaWorkflowNotFoundException
- If the workflow passed to this analysis submission could not be found.java.io.IOException
- If there was an error when loading the results of an analysis from Galaxy to a local file.IridaWorkflowAnalysisTypeException
- If there was an issue building anAnalysis
object.
-
outputFilesExist
boolean outputFilesExist(AnalysisSubmission analysisSubmission) throws IridaWorkflowNotFoundException, ExecutionManagerException
Checks if all output files from a given AnalysisSubmission are available on galaxy.- Parameters:
analysisSubmission
- TheAnalysisSubmission
.- Returns:
- boolean
- Throws:
ExecutionManagerException
- If there was an error getting the results.IridaWorkflowNotFoundException
- If the workflow passed to this analysis submission could not be found.
-
-