19704: Merge contributed updates to R SDK
[arvados.git] / sdk / R / R / RESTService.R
index 9c65e72861f41513936e431afda50f6ab443f983..5cbcb65f753b769ec108fa9f757ba6b1f219443d 100644 (file)
@@ -110,10 +110,11 @@ RESTService <- R6::R6Class(
             serverResponse
         },
 
-        getCollectionContent = function(uuid)
+       getCollectionContent = function(uuid, relativePath = NULL)
+
         {
             collectionURL <- URLencode(paste0(self$getWebDavHostName(),
-                                              "c=", uuid))
+                                             "c=", uuid, "/", relativePath))
 
             headers <- list("Authorization" = paste("Bearer", self$token))
 
@@ -227,8 +228,12 @@ RESTService <- R6::R6Class(
             serverResponse <- self$http$exec("PUT", fileURL, headers, body,
                                              retryTimes = self$numRetries)
 
-            if(serverResponse$status_code < 200 || serverResponse$status_code >= 300)
-                stop(paste("Server code:", serverResponse$status_code))
+            if (serverResponse$status_code < 200){ # to wyrzuca błędy
+                stop(paste("Server code:", serverResponse$status_code))}
+            else if (serverResponse$status_code >= 300 & serverResponse$status_code < 422) {
+                stop(paste("Server code:", serverResponse$status_code))}
+            else if (serverResponse$status_code == 422 ) {
+                stop(paste("Project of that name already exists. If you want to change it use project_update() instead"))}
 
             paste("File created:", relativePath)
         }