public Task<IStorageContainer> GetContainerAsync(string name) { string containerDir = $"{this._rootDirectory}\\{name}"; var dirExists = Directory.Exists(containerDir); if (!dirExists) throw new StorageException(StorageExceptionReason.ContainerNotFound, $"Container '{name}' not exist."); var container = new FileSystemStorageContainer(containerDir); var tcs = new TaskCompletionSource<IStorageContainer>(); tcs.SetResult(container); return tcs.Task; }
public Task<IStorageContainer> CreateOrGetContainerAsync(string name, ContainerPermission permission, bool failIfExists) { string containerDir = $"{this._rootDirectory}\\{name}"; var dirExists = Directory.Exists(containerDir); if (!dirExists) Directory.CreateDirectory(containerDir); else if (failIfExists) throw new StorageException(StorageExceptionReason.ContainerExistAlready, "Container exist already."); var container = new FileSystemStorageContainer(containerDir); var tcs = new TaskCompletionSource<IStorageContainer>(); tcs.SetResult(container); return tcs.Task; }
public Task <IStorageContainer> GetContainerAsync(string name) { string containerDir = $"{this._rootDirectory}\\{name}"; var dirExists = Directory.Exists(containerDir); if (!dirExists) { throw new StorageException(StorageExceptionReason.ContainerNotFound, $"Container '{name}' not exist."); } var container = new FileSystemStorageContainer(containerDir); var tcs = new TaskCompletionSource <IStorageContainer>(); tcs.SetResult(container); return(tcs.Task); }
public Task <IStorageContainer> CreateOrGetContainerAsync(string name, ContainerPermission permission, bool failIfExists) { string containerDir = $"{this._rootDirectory}\\{name}"; var dirExists = Directory.Exists(containerDir); if (!dirExists) { Directory.CreateDirectory(containerDir); } else if (failIfExists) { throw new StorageException(StorageExceptionReason.ContainerExistAlready, "Container exist already."); } var container = new FileSystemStorageContainer(containerDir); var tcs = new TaskCompletionSource <IStorageContainer>(); tcs.SetResult(container); return(tcs.Task); }