19704: Merge contributed updates to R SDK
[arvados.git] / sdk / R / README.Rmd
diff --git a/sdk/R/README.Rmd b/sdk/R/README.Rmd
deleted file mode 100644 (file)
index 8e14058..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-## R SDK for Arvados
-
-This SDK focuses on providing support for accessing Arvados projects, collections, and the files within collections.
-The API is not final and feedback is solicited from users on ways in which it could be improved.
-
-### INSTALLATION
-
-1. Install the dependencies
-
-    `install.packages(c('R6', 'httr', 'stringr', 'jsonlite', 'curl', 'XML'))`
-
-    If needed, you may have to install the supporting packages first.
-    On Linux, these are: libxml2-dev, libssl-dev, libcurl4-gnutls-dev or libcurl4-openssl-dev
-
-
-2. Install the ArvardosR package
-
-    `install.packages('http://r.arvados.org/ArvadosR_0.0.3.tar.gz', repos=NULL, type='source')`
-
-### EXAMPLES OF USAGE
-
-#### INITIALIZING API
-
-* Load Library and Initialize API:
-
-    `library('ArvadosR')`
-    `arv <- Arvados$new() # uses environment variables ARVADOS_API_TOKEN and ARVADOS_API_HOST`
-    `arv <- Arvados$new("your Arvados token", "example.arvadosapi.com")`
-
-    Optionally, add numRetries parameter to specify number of times to retry failed service requests.
-    Default is 0.
-
-    `arv <- Arvados$new("your Arvados token", "example.arvadosapi.com", numRetries = 3)`
-
-    This parameter can be set at any time using setNumRetries
-
-    `arv$setNumRetries(5)`
-
-
-#### WORKING WITH COLLECTIONS
-
-* Get a collection:
-
-    `collection <- arv$getCollection("uuid")`
-
-* List collections:
-
-    `collectionList <- arv$listCollections(list(list("name", "like", "Test%"))) # offset of 0 and default limit of 100`
-    `collectionList <- arv$listCollections(list(list("name", "like", "Test%")), limit = 10, offset = 2)`
-
-    `collectionList$items_available # count of total number of items (may be more than returned due to paging)`
-    `collectionList$items # items which match the filter criteria`
-
-* List all collections even if the number of items is greater than maximum API limit:
-
-    `collectionList <- arv$listAllCollections(list(list("name", "like", "Test%")))`
-
-* Delete a collection:
-
-    `deletedCollection <- arv$deleteCollection("uuid")`
-
-* Update a collection's metadata:
-
-    `updatedCollection <- arv$updateCollection("uuid", list(name = "New name", description = "New description"))`
-
-* Create collection:
-
-    `createdCollection <- arv$createCollection(list(name = "Example", description = "This is a test collection"))`
-
-
-#### MANIPULATIN COLLECTION CONTENT
-
-* Create collection object:
-
-    `collection <- Collection$new(arv, "uuid")`
-
-* Get list of files:
-
-    `files <- collection$getFileListing()`
-
-* Get ArvadosFile or Subcollection from internal tree-like structure:
-
-    `arvadosFile <- collection$get("location/to/my/file.cpp")`
-
-    or
-
-    `arvadosSubcollection <- collection$get("location/to/my/directory/")`
-
-* Read a table:
-
-    `arvadosFile   <- collection$get("myinput.txt")`
-    `arvConnection <- arvadosFile$connection("r")`
-    `mytable       <- read.table(arvConnection)`
-
-* Write a table:
-
-    `arvadosFile   <- collection$create("myoutput.txt")`
-    `arvConnection <- arvadosFile$connection("w")`
-    `write.table(mytable, arvConnection)`
-    `arvadosFile$flush()`
-
-* Write to existing file (override current content of the file):
-
-    `arvadosFile <- collection$get("location/to/my/file.cpp")`
-    `arvadosFile$write("This is new file content")`
-
-* Read whole file or just a portion of it:
-
-    `fileContent <- arvadosFile$read()`
-    `fileContent <- arvadosFile$read("text")`
-    `fileContent <- arvadosFile$read("raw", offset = 1024, length = 512)`
-
-* Get ArvadosFile or Subcollection size:
-
-    `size <- arvadosFile$getSizeInBytes()`
-
-    or
-
-    `size <- arvadosSubcollection$getSizeInBytes()`
-
-* Create new file in a collection:
-
-    `collection$create(fileNames, optionalRelativePath)`
-
-    Example:
-
-    `mainFile <- collection$create("main.cpp", "cpp/src/")`
-    `fileList <- collection$create(c("main.cpp", lib.dll), "cpp/src/")`
-
-* Add existing ArvadosFile or Subcollection to a collection:
-
-    `folder <- Subcollection$new("src")`
-    `file   <- ArvadosFile$new("main.cpp")`
-    `folder$add(file)`
-
-    `collection$add(folder, "cpp")`
-
-    This examples will add file "main.cpp" in "./cpp/src/" folder if folder exists.
-    If subcollection contains more files or folders they will be added recursively.
-
-* Delete file from a collection:
-
-    `collection$remove("location/to/my/file.cpp")`
-
-    You can remove both Subcollection and ArvadosFile.
-    If subcollection contains more files or folders they will be removed recursively.
-
-    You can also remove multiple files at once:
-
-    `collection$remove(c("path/to/my/file.cpp", "path/to/other/file.cpp"))`
-
-* Delete file or folder from a Subcollection:
-
-    `subcollection <- collection$get("mySubcollection/")`
-    `subcollection$remove("fileInsideSubcollection.exe")`
-    `subcollection$remove("folderInsideSubcollection/")`
-
-* Move file or folder inside collection:
-
-    Directley from collection
-
-    `collection$move("folder/file.cpp", "file.cpp")`
-
-    Or from file
-
-    `file <- collection$get("location/to/my/file.cpp")`
-    `file$move("newDestination/file.cpp")`
-
-    Or from subcollection
-
-    `subcollection <- collection$get("location/to/folder")`
-    `subcollection$move("newDestination/folder")`
-
-    Make sure to include new file name in destination.
-    In second example file$move("newDestination/") will not work.
-
-#### WORKING WITH ARVADOS PROJECTS
-
-* Get a project:
-
-    `project <- arv$getProject("uuid")`
-
-* List projects:
-
-    `projects <- arv$listProjects(list(list("owner_uuid", "=", "aaaaa-j7d0g-ccccccccccccccc"))) # list subprojects of a project`
-    `arv$listProjects(list(list("name","like","Example%"))) # list projects which have names beginning with Example`
-
-* List all projects even if the number of items is greater than maximum API limit:
-
-    `collectionList <- arv$listAllProjects(list(list("name","like","Example%")))`
-
-* Delete a project:
-
-    `deletedProject <- arv$deleteProject("uuid")`
-
-* Update project:
-
-    `updatedProject <- arv$updateProject("uuid", list(name = "new_name", description = "new description"))`
-
-* Create project:
-
-    `createdProject <- arv$createProject(list(name = "project_name", description = "project description"))`
-
-### BUILDING THE ARVADOS SDK TARBALL
-
-cd arvados/sdk
-R CMD build R
-
-This will create a tarball of the Arvados package in the current directory.