public static async Task <bool> DeleteFile(ODItem itemToDelete, string itemName)
 {
     EnsureConnection();
     return
         (await
          Connection.DeleteItemAsync(itemToDelete.ItemReference(), ItemDeleteOptions.Default));
 }
 public static async Task <ODItem> ModifyFile(ODItem parentItem, string itemName, Stream itemContentStream)
 {
     EnsureConnection();
     return
         (await
          Connection.PutNewFileToParentItemAsync(parentItem.ItemReference(), itemName, itemContentStream,
                                                 ItemUploadOptions.Default));
 }
        /// <summary>
        ///     Creates folder if none exists else returns the folder
        /// </summary>
        public static async Task <ODItem> GetOrCreateFolder(ODItem itemToGet, string name, ODItem rootItem)
        {
            if (itemToGet != null)
            {
                if (itemToGet.Folder == null)
                {
                    throw new Exception("A file with the same name as the specified app folder already exists.");
                }
                return(itemToGet);
            }
            var newFolder = await Connection.CreateFolderAsync(rootItem.ItemReference(), name);

            return(newFolder);
        }
        /// <summary>
        /// Deletes a file or a folder.
        /// </summary>
        public static async Task <bool> DeleteItem(ODItem item)
        {
            await EnsureConnection();

            return(await Connection.DeleteItemAsync(item.ItemReference(), ItemDeleteOptions.Default));
        }
        /// <summary>
        /// Saves a file in the specified folder.
        /// </summary>
        public static async Task <ODItem> SaveFile(ODItem parentItem, string filename, Stream fileContent)
        {
            await EnsureConnection();

            return(await Connection.PutNewFileToParentItemAsync(parentItem.ItemReference(), filename, fileContent, ItemUploadOptions.Default));
        }