public async Task <MediaFolder> Handle(CreateFolderCommand request, CancellationToken cancellationToken) { var parentDirectory = _repository.GetMediaDirectoryReference(request.ParentFolderId); var newDirectory = await _repository.CreateDirectory(request.FolderName, parentDirectory); return(_folderConverter.ConvertToMediaFolder(newDirectory)); }
public async Task <IEnumerable <MediaFolder> > GetChildrenDirectories(CloudBlobDirectory directory) { var blobs = new List <MediaFolder>(); BlobContinuationToken continuationToken = null; do { var result = await directory.ListBlobsSegmentedAsync(continuationToken); blobs.AddRange(result.Results .Where(x => x is CloudBlobDirectory) .Select(x => _mediaFolderConverter.ConvertToMediaFolder((CloudBlobDirectory)x))); continuationToken = result.ContinuationToken; }while (continuationToken != null); return(blobs); }
public async Task <MediaFolder> Handle(CreateRootFolderCommand request, CancellationToken cancellationToken) { var rootContainer = await _repository.MediaContainer(); var newContainer = await _repository.CreateDirectory(request.FolderName, rootContainer); return(_folderConverter.ConvertToMediaFolder(newContainer)); }