Exemplo n.º 1
0
        public override StorageFile FinalizeUpload()
        {
            var bucketName = _client.Buckets.GetList().Result.Single(b => b.BucketId == _bucketId).BucketName;

            if (_finish != null)
            {
                return(B2StorageFile.Create(_finish));
            }

            ;

            if (_start == null)
            {
                var bytes = _buffer.ToArray();
                _finish = _client.Files.Upload(bytes, _fileName, _bucketId, _fileInfo).Result;
            }
            else
            {
                try {
                    _finish = _client.LargeFiles.FinishLargeFile(_start.FileId, _shas.ToArray()).Result;
                }
                catch (Exception) {
                    _client.LargeFiles.CancelLargeFile(_start.FileId).Wait();
                    throw;
                }
            }

            return(B2StorageFile.Create(_finish));
        }
Exemplo n.º 2
0
        public async Task <StorageFile> UploadFile(byte[] fileData, string filename,
                                                   Dictionary <string, string> fileInfo = null)
        {
            if (!ServiceConfigured)
            {
                _logger.LogWarning("Attempting to upload file when b2 is not configured");
                return(null);
            }

            var file = await _client.Files.Upload(fileData, filename, "", fileInfo);

            return(B2StorageFile.Create(file));
        }