From 7a1a5ddcb4af8a8f81511a1e36e1157a288a4677 Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Thu, 15 Oct 2020 12:07:33 -0400 Subject: [PATCH] Collection$create returns (vector of) ArvadosFile object Update documentation. refs #16998 Arvados-DCO-1.1-Signed-off-by: Peter Amstutz --- sdk/R/R/Collection.R | 3 +-- sdk/R/README.Rmd | 20 ++++++++++++-------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/sdk/R/R/Collection.R b/sdk/R/R/Collection.R index 1440836547..9ed758c0a4 100644 --- a/sdk/R/R/Collection.R +++ b/sdk/R/R/Collection.R @@ -116,9 +116,8 @@ Collection <- R6::R6Class( private$REST$create(file, self$uuid) newTreeBranch$setCollection(self) + newTreeBranch }) - - "Created" } else { diff --git a/sdk/R/README.Rmd b/sdk/R/README.Rmd index 63bf55373d..8cc89d9020 100644 --- a/sdk/R/README.Rmd +++ b/sdk/R/README.Rmd @@ -71,6 +71,12 @@ arv$setNumRetries(5) collection <- arv$collections.get("uuid") ``` +Be aware that the result from `collections.get` is _not_ a +`Collection` class. The object returned from this method lets you +access collection fields like "name" and "description". The +`Collection` class lets you access the files in the collection for +reading and writing, and is described in the next section. + * List collections: ```{r} @@ -78,9 +84,7 @@ collection <- arv$collections.get("uuid") collectionList <- arv$collections.list(list(list("name", "like", "Test%"))) collectionList <- arv$collections.list(list(list("name", "like", "Test%")), limit = 10, offset = 2) -``` -```{r} # count of total number of items (may be more than returned due to paging) collectionList$items_available @@ -106,7 +110,7 @@ deletedCollection <- arv$collections.delete("uuid") updatedCollection <- arv$collections.update(list(name = "New name", description = "New description"), "uuid") ``` -* Create collection: +* Create a new collection: ```{r} newCollection <- arv$collections.create(list(name = "Example", description = "This is a test collection")) @@ -115,7 +119,7 @@ newCollection <- arv$collections.create(list(name = "Example", description = "Th #### Manipulating collection content -* Create collection object: +* Initialize a collection object: ```{r} collection <- Collection$new(arv, "uuid") @@ -150,13 +154,13 @@ mytable <- read.table(arvConnection) * Write a table: ```{r} -arvadosFile <- collection$create("myoutput.txt") +arvadosFile <- collection$create("myoutput.txt")[[1]] arvConnection <- arvadosFile$connection("w") write.table(mytable, arvConnection) arvadosFile$flush() ``` -* Write to existing file (override current content of the file): +* Write to existing file (overwrites current content of the file): ```{r} arvadosFile <- collection$get("location/to/my/file.cpp") @@ -183,7 +187,7 @@ or size <- arvadosSubcollection$getSizeInBytes() ``` -* Create new file in a collection: +* Create new file in a collection (returns a vector of one or more ArvadosFile objects): ```{r} collection$create(files) @@ -192,7 +196,7 @@ collection$create(files) Example: ```{r} -mainFile <- collection$create("cpp/src/main.cpp") +mainFile <- collection$create("cpp/src/main.cpp")[[1]] fileList <- collection$create(c("cpp/src/main.cpp", "cpp/src/util.h")) ``` -- 2.30.2