## ----style, echo = FALSE, results = 'asis', message=FALSE---------------------
BiocStyle::markdown()

## ----install_package, eval = FALSE--------------------------------------------
# if (!requireNamespace("BiocManager", quietly = TRUE))
#     install.packages("BiocManager")
# 
# BiocManager::install("MsBackendMetabolomicsWorkbench")

## ----mwb_list_files-----------------------------------------------------------
library(MsBackendMetabolomicsWorkbench)

#' List files of a Metabolomics Workbench data set
all_files <- mwb_list_files("ST002115")
head(all_files)

## ----mwb_ftp_list_files-------------------------------------------------------
#' List zipped FTP files for a Metabolomics Workbench data set
mwb_ftp_list_files("ST002115")

## ----spectra_load-------------------------------------------------------------
library(Spectra)

#' Load MS data files of one data set
s <- Spectra("ST002115", filePattern = "01_RP.mzXML$", ftp_zip = FALSE,
             source = MsBackendMetabolomicsWorkbench())
s

## ----spectra_variables--------------------------------------------------------
spectraVariables(s)

## ----spectra_head-------------------------------------------------------------
spectraData(s, c("mwb_id", "zip_file", "file_name"))
basename(s$file_name) |> head()

## ----sleep, echo = FALSE------------------------------------------------------
Sys.sleep(4)

## ----sync_cache---------------------------------------------------------------
mwb_sync(s)

## ----mwb_sync_data_files------------------------------------------------------
res <- mwb_sync_data_files("ST002115",
                            fileName = "HT1080_DMSO_01_RP.mzXML")
res

## ----mwb_cached_data_files----------------------------------------------------
mwb_cached_data_files()

## ----mwb_rest_request_json----------------------------------------------------
library(jsonlite)

summary <- mwb_rest_request("ST002115", outputItem = "summary",
                            outputFormat = "json")
fromJSON(summary)

## ----example_mwb_ftp_download, eval = FALSE-----------------------------------
# mwb_ftp_download("ST002115", path = tempdir())

## ----mwb_metadata-------------------------------------------------------------
meta <- mwb_metadata("ST002115")
meta$MS_run
meta$sample_annotation

## ----session_info-------------------------------------------------------------
sessionInfo()

