Mercurial > repos > galaxyp > data_manager_custom
annotate data_manager/customProDB_annotation.R @ 0:3c2c36beddb1 draft default tip
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
| author | galaxyp |
|---|---|
| date | Fri, 15 Jan 2016 15:52:56 -0500 |
| parents | |
| children |
| rev | line source |
|---|---|
|
0
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
1 #!/usr/bin/env Rscript |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
2 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
3 initial.options <- commandArgs(trailingOnly = FALSE) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
4 script_parent_dir <- dirname(sub("--file=", "", initial.options[grep("--file=", initial.options)])) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
5 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
6 ## begin warning handler |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
7 withCallingHandlers({ |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
8 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
9 library(methods) # Because Rscript does not always do this |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
10 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
11 options('useFancyQuotes' = FALSE) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
12 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
13 suppressPackageStartupMessages(library("optparse")) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
14 suppressPackageStartupMessages(library("RGalaxy")) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
15 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
16 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
17 option_list <- list() |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
18 option_list$dbkey <- make_option('--dbkey', type='character') |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
19 option_list$outputFile <- make_option('--outputFile', type='character') |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
20 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
21 opt <- parse_args(OptionParser(option_list=option_list)) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
22 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
23 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
24 customProDB_annotation <- function( |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
25 dbkey = GalaxyCharacterParam(required=TRUE), |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
26 outputFile = GalaxyOutput("output","json")) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
27 { |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
28 if (file.exists(outputFile)) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
29 { |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
30 if (file.info(outputFile)$size > 0) { gstop("output file already exists") } |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
31 else |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
32 { |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
33 tryCatch( |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
34 { |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
35 file.remove(outputFile) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
36 }, error=function(err) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
37 { |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
38 gstop("failed to remove empty existing file") |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
39 }) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
40 } |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
41 } |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
42 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
43 gstop("what you talkin bout willis?!") |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
44 } |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
45 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
46 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
47 params <- list() |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
48 for(param in names(opt)) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
49 { |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
50 if (!param == "help") |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
51 params[param] <- opt[param] |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
52 } |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
53 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
54 setClass("GalaxyRemoteError", contains="character") |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
55 wrappedFunction <- function(f) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
56 { |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
57 tryCatch(do.call(f, params), |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
58 error=function(e) new("GalaxyRemoteError", conditionMessage(e))) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
59 } |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
60 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
61 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
62 suppressPackageStartupMessages(library(RGalaxy)) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
63 do.call(customProDB_annotation, params) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
64 |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
65 ## end warning handler |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
66 }, warning = function(w) { |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
67 cat(paste("Warning:", conditionMessage(w), "\n")) |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
68 invokeRestart("muffleWarning") |
|
3c2c36beddb1
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tools/bumbershoot/data_manager_customProDB commit 141369f97aa2804d2bbfd9ed620ea2a5574994c2-dirty
galaxyp
parents:
diff
changeset
|
69 }) |
