@@ -271,45 +271,56 @@ async Task<IApiResults<ListUnfinishedLargeFilesResponse>> IStorageFiles.ListUnfi
271271 /// <exception cref="CapExceededExecption">Thrown when a cap is exceeded or an account in bad standing.</exception>
272272 /// <exception cref="InvalidHashException">Thrown when a checksum hash is not valid.</exception>
273273 /// <exception cref="ApiException">Thrown when an error occurs during client operation.</exception>
274- async Task < IApiResults < UploadFileResponse > > IStorageFiles . UploadAsync
274+ Task < IApiResults < UploadFileResponse > > IStorageFiles . UploadAsync
275275 ( string bucketId , string fileName , string localPath , IProgress < ICopyProgress > progress , CancellationToken cancel )
276276 {
277277 using ( var content = File . OpenRead ( localPath ) )
278278 {
279- var fileInfo = new Models . FileInfo ( ) ;
280-
281- // get last modified date
282279 DateTime lastModified = File . GetLastWriteTime ( localPath ) ;
283280
284- // check whether a file is read only
285281 var isReadOnly = ( ( File . GetAttributes ( localPath ) & FileAttributes . ReadOnly ) == FileAttributes . ReadOnly ) ;
286- fileInfo . Add ( "src_file_readonly" , isReadOnly . ToString ( ) . ToLower ( ) ) ;
287-
288- // check whether a file is hidden
289282 var isHidden = ( ( File . GetAttributes ( localPath ) & FileAttributes . Hidden ) == FileAttributes . Hidden ) ;
290- fileInfo . Add ( "src_file_hidden" , isHidden . ToString ( ) . ToLower ( ) ) ;
291-
292- // check whether a file has archive attribute
293283 var isArchive = ( ( File . GetAttributes ( localPath ) & FileAttributes . Archive ) == FileAttributes . Archive ) ;
294- fileInfo . Add ( "src_file_archive" , isArchive . ToString ( ) . ToLower ( ) ) ;
295-
296- // check whether a file has compressed attribute
297284 var isCompressed = ( ( File . GetAttributes ( localPath ) & FileAttributes . Compressed ) == FileAttributes . Compressed ) ;
298- fileInfo . Add ( "src_file_compressed" , isCompressed . ToString ( ) . ToLower ( ) ) ;
299285
300- var request = new UploadFileByBucketIdRequest ( bucketId , fileName ) { LastModified = lastModified , FileInfo = fileInfo } ;
301- var results = await _client . UploadAsync ( request , content , progress , cancel ) ;
302- if ( results . IsSuccessStatusCode )
303- {
304- _logger . LogInformation ( $ "Successfully uploaded '{ localPath } ' file to '{ bucketId } ' bucket id") ;
305- }
306- else
307- {
308- _logger . LogError ( $ "Failed uploading '{ localPath } ' file with error: { results . Error ? . Message } ") ;
309- }
286+ return ( ( IStorageFiles ) this ) . UploadAsync (
287+ bucketId ,
288+ fileName ,
289+ content ,
290+ lastModified ,
291+ isReadOnly ,
292+ isHidden ,
293+ isArchive ,
294+ isCompressed ,
295+ progress ,
296+ cancel ) ;
297+ }
298+ }
310299
311- return results ;
300+ async Task < IApiResults < UploadFileResponse > > IStorageFiles . UploadAsync
301+ ( string bucketId , string fileName , Stream content , DateTime lastModified , bool isReadOnly , bool isHidden , bool isArchive , bool isCompressed ,
302+ IProgress < ICopyProgress > progress , CancellationToken cancel )
303+ {
304+ var fileInfo = new Models . FileInfo ( ) ;
305+
306+ fileInfo . Add ( "src_file_readonly" , isReadOnly ? "true" : "false" ) ;
307+ fileInfo . Add ( "src_file_hidden" , isHidden ? "true" : "false" ) ;
308+ fileInfo . Add ( "src_file_archive" , isArchive ? "true" : "false" ) ;
309+ fileInfo . Add ( "src_file_compressed" , isCompressed ? "true" : "false" ) ;
310+
311+ var request = new UploadFileByBucketIdRequest ( bucketId , fileName ) { LastModified = lastModified , FileInfo = fileInfo } ;
312+ var results = await _client . UploadAsync ( request , content , progress , cancel ) ;
313+
314+ if ( results . IsSuccessStatusCode )
315+ {
316+ _logger . LogInformation ( $ "Successfully uploaded in-memory file to '{ bucketId } ' bucket id with filename '{ fileName } '") ;
312317 }
318+ else
319+ {
320+ _logger . LogError ( $ "Failed uploading in-memory file '{ fileName } ' with error: { results . Error ? . Message } ") ;
321+ }
322+
323+ return results ;
313324 }
314325
315326 /// <summary>
0 commit comments