Mercurial > repos > prog > lcmsmatching
view LipidmapsConn.R @ 3:f61ce21ed17c draft
planemo upload for repository https://github.com/workflow4metabolomics/lcmsmatching.git commit 476a081c0da66822f4e77070f5ce59d9f14511f4-dirty
author | prog |
---|---|
date | Thu, 02 Mar 2017 11:07:56 -0500 |
parents | 20d69a062da3 |
children |
line wrap: on
line source
##################### # CLASS DECLARATION # ##################### LipidmapsConn <- methods::setRefClass("LipidmapsConn", contains = "RemotedbConn") ############### # CONSTRUCTOR # ############### LipidmapsConn$methods( initialize = function(...) { # From http://www.lipidmaps.org/data/structure/programmaticaccess.html: # If you write a script to automate calls to LMSD, please be kind and do not hit our server more often than once per 20 seconds. We may have to kill scripts that hit our server more frequently. callSuper(scheduler = UrlRequestScheduler$new(t = 20), ...) }) ########################## # GET ENTRY CONTENT TYPE # ########################## LipidmapsConn$methods( getEntryContentType = function() { return(BIODB.CSV) }) ##################### # GET ENTRY CONTENT # ##################### LipidmapsConn$methods( getEntryContent = function(id) { # Initialize return values content <- rep(NA_character_, length(id)) # Request content <- vapply(id, function(x) .self$.get.url(get.entry.url(BIODB.LIPIDMAPS, x, content.type = BIODB.CSV)), FUN.VALUE = '') return(content) }) ################ # CREATE ENTRY # ################ LipidmapsConn$methods( createEntry = function(content, drop = TRUE) { return(createLipidmapsEntryFromCsv(content, drop = drop)) })