use of com.github.jmchilton.blend4j.galaxy.ToolsClient.FileUploadRequest in project irida by phac-nml.
the class GalaxyHistoriesService method fileToHistory.
/**
* Uploads a file to a given history.
* @param path The path to the file to upload.
* @param fileType The file type of the file to upload.
* @param history The history to upload the file into.
* @return A Dataset object for the uploaded file.
* @throws UploadException If there was an issue uploading the file to Galaxy.
* @throws GalaxyDatasetException If there was an issue finding the corresponding Dataset for the file
* in the history.
*/
public Dataset fileToHistory(Path path, InputFileType fileType, History history) throws UploadException, GalaxyDatasetException {
checkNotNull(path, "path is null");
checkNotNull(fileType, "fileType is null");
checkNotNull(history, "history is null");
checkNotNull(history.getId(), "history id is null");
checkState(path.toFile().exists(), "path " + path + " does not exist");
File file = path.toFile();
FileUploadRequest uploadRequest = new FileUploadRequest(history.getId(), file);
uploadRequest.setFileType(fileType.toString());
ClientResponse clientResponse = toolsClient.uploadRequest(uploadRequest);
if (clientResponse == null) {
throw new UploadException("Could not upload " + file + " to history " + history.getId() + " ClientResponse is null");
} else if (!ClientResponse.Status.OK.equals(clientResponse.getClientResponseStatus())) {
String message = "Could not upload " + file + " to history " + history.getId() + " ClientResponse: " + clientResponse.getClientResponseStatus() + " " + clientResponse.getEntity(String.class);
logger.error(message);
throw new UploadException(message);
} else {
return getDatasetForFileInHistory(file.getName(), history.getId());
}
}
use of com.github.jmchilton.blend4j.galaxy.ToolsClient.FileUploadRequest in project irida by phac-nml.
the class GalaxyWorkflowsIT method fileToHistory.
private Dataset fileToHistory(Path path, String fileType, String historyId) throws GalaxyDatasetException {
FileUploadRequest uploadRequest = new FileUploadRequest(historyId, path.toFile());
uploadRequest.setFileType(fileType.toString());
toolsClient.uploadRequest(uploadRequest);
return galaxyHistory.getDatasetForFileInHistory(path.toFile().getName(), historyId);
}
Aggregations