コード例 #1
0
        public async Task SendFileAsync()
        {
            var c = new SwiftClient();

            if (!await AuthenticateIfNeededAsync())
            {
                Log($"Could not authenticated: could not retreive a valid token");
                return;
            }
            c.InitToken(Token);

            var file = System.IO.File.OpenRead(NewFileSource);

            string contentType = "application/octet-stream";

            contentType = MimeTypeMap.GetMimeType(System.IO.Path.GetExtension(NewFileSource));

            var resp = await c.ObjectPutAsync(ObjectStoreUrl, Container, NewFileName, file, contentType);

            Log($"File '{NewFileName}' {(resp.IsSuccess ? "" : "not ")}sent successfully");
            //if (resp.IsSuccess)
            //{
            //    Log($"{resp.ContentObject.Count} file(s)");
            //    Files.Clear();

            //    foreach (var file in resp.ContentObject)
            //    {
            //        Log($"file: {file.Name} ({file.Bytes} bytes, last modified {file.LastModified}, content type: '{file.Content_type}')");
            //        Files.Add(file);
            //    }
            //    if (resp.ContentObject.Count > 0)
            //        Container = resp.ContentObject.First().Name;
            //}
            await ContainerInfoAsync();
        }