Skip to content

Commit 4cd4086

Browse files
committed
make clear cache calls configurable
1 parent 78ebd51 commit 4cd4086

1 file changed

Lines changed: 101 additions & 22 deletions

File tree

FileSystem/src/FileSystem.cs

Lines changed: 101 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -115,10 +115,9 @@ public Task<IFile> GetFileAsync(string virtualPath, CancellationToken cancellati
115115

116116
if (adapter.AdapterConfiguration.EnableCache)
117117
{
118+
adapter.ClearCache();
118119
}
119120

120-
adapter.ClearCache();
121-
122121
return adapter.GetFileAsync(virtualPath, cancellationToken);
123122
}
124123

@@ -158,7 +157,11 @@ public Task<IDirectory> GetDirectoryAsync(string virtualPath, CancellationToken
158157
var adapter = GetAdapter(prefix);
159158

160159
adapter.Connect();
161-
adapter.ClearCache();
160+
161+
if (!adapter.AdapterConfiguration.EnableCache)
162+
{
163+
adapter.ClearCache();
164+
}
162165

163166
return adapter.GetDirectoryAsync(virtualPath, cancellationToken);
164167
}
@@ -244,7 +247,11 @@ public Task<IEnumerable<IDirectory>> GetDirectoriesAsync(string virtualPath = ""
244247
var adapter = GetAdapter(prefix);
245248

246249
adapter.Connect();
247-
adapter.ClearCache();
250+
251+
if (!adapter.AdapterConfiguration.EnableCache)
252+
{
253+
adapter.ClearCache();
254+
}
248255

249256
return adapter.GetDirectoriesAsync(virtualPath, cancellationToken);
250257
}
@@ -283,7 +290,11 @@ public async Task<bool> FileExistsAsync(string virtualPath, CancellationToken ca
283290
var adapter = GetAdapter(prefix);
284291

285292
adapter.Connect();
286-
adapter.ClearCache();
293+
294+
if (!adapter.AdapterConfiguration.EnableCache)
295+
{
296+
adapter.ClearCache();
297+
}
287298

288299
return await adapter.FileExistsAsync(virtualPath, cancellationToken);
289300
}
@@ -322,7 +333,11 @@ public async Task<bool> DirectoryExistsAsync(string virtualPath, CancellationTok
322333
var adapter = GetAdapter(prefix);
323334

324335
adapter.Connect();
325-
adapter.ClearCache();
336+
337+
if (!adapter.AdapterConfiguration.EnableCache)
338+
{
339+
adapter.ClearCache();
340+
}
326341

327342
return await adapter.DirectoryExistsAsync(virtualPath, cancellationToken);
328343
}
@@ -361,7 +376,11 @@ public async Task CreateDirectoryAsync(string virtualPath, CancellationToken can
361376
var adapter = GetAdapter(prefix);
362377

363378
adapter.Connect();
364-
adapter.ClearCache();
379+
380+
if (!adapter.AdapterConfiguration.EnableCache)
381+
{
382+
adapter.ClearCache();
383+
}
365384

366385
await adapter.CreateDirectoryAsync(virtualPath, cancellationToken);
367386
}
@@ -400,7 +419,11 @@ public async Task DeleteFileAsync(string virtualPath, CancellationToken cancella
400419
var adapter = GetAdapter(prefix);
401420

402421
adapter.Connect();
403-
adapter.ClearCache();
422+
423+
if (!adapter.AdapterConfiguration.EnableCache)
424+
{
425+
adapter.ClearCache();
426+
}
404427

405428
await adapter.DeleteFileAsync(virtualPath, cancellationToken);
406429
}
@@ -439,7 +462,11 @@ public async Task DeleteDirectoryAsync(string virtualPath, CancellationToken can
439462
var adapter = GetAdapter(prefix);
440463

441464
adapter.Connect();
442-
adapter.ClearCache();
465+
466+
if (!adapter.AdapterConfiguration.EnableCache)
467+
{
468+
adapter.ClearCache();
469+
}
443470

444471
await adapter.DeleteDirectoryAsync(virtualPath, cancellationToken);
445472
}
@@ -463,7 +490,11 @@ public async Task<Stream> ReadFileStreamAsync(string virtualPath, CancellationTo
463490
var adapter = GetAdapter(prefix);
464491

465492
adapter.Connect();
466-
adapter.ClearCache();
493+
494+
if (!adapter.AdapterConfiguration.EnableCache)
495+
{
496+
adapter.ClearCache();
497+
}
467498

468499
return await adapter.ReadFileStreamAsync(virtualPath, cancellationToken);
469500
}
@@ -504,7 +535,11 @@ public async Task<byte[]> ReadFileAsync(string virtualPath, CancellationToken ca
504535
var adapter = GetAdapter(prefix);
505536

506537
adapter.Connect();
507-
adapter.ClearCache();
538+
539+
if (!adapter.AdapterConfiguration.EnableCache)
540+
{
541+
adapter.ClearCache();
542+
}
508543

509544
return await adapter.ReadFileAsync(virtualPath, cancellationToken);
510545
}
@@ -545,7 +580,11 @@ public async Task<string> ReadTextFileAsync(string virtualPath, CancellationToke
545580
var adapter = GetAdapter(prefix);
546581

547582
adapter.Connect();
548-
adapter.ClearCache();
583+
584+
if (!adapter.AdapterConfiguration.EnableCache)
585+
{
586+
adapter.ClearCache();
587+
}
549588

550589
return await adapter.ReadTextFileAsync(virtualPath, cancellationToken);
551590
}
@@ -593,10 +632,18 @@ public async Task CopyFileAsync(string virtualSourcePath, string virtualDestinat
593632
var destinationAdapter = GetAdapter(destinationPrefix);
594633

595634
sourceAdapter.Connect();
596-
sourceAdapter.ClearCache();
635+
636+
if (!sourceAdapter.AdapterConfiguration.EnableCache)
637+
{
638+
sourceAdapter.ClearCache();
639+
}
597640

598641
destinationAdapter.Connect();
599-
sourceAdapter.ClearCache();
642+
643+
if (!destinationAdapter.AdapterConfiguration.EnableCache)
644+
{
645+
destinationAdapter.ClearCache();
646+
}
600647

601648
var contents = await sourceAdapter.ReadFileAsync(virtualSourcePath, cancellationToken);
602649
await destinationAdapter.WriteFileAsync(virtualDestinationPath, contents, overwrite, cancellationToken);
@@ -645,10 +692,18 @@ public async Task MoveFileAsync(string virtualSourcePath, string virtualDestinat
645692
var destinationAdapter = GetAdapter(destinationPrefix);
646693

647694
sourceAdapter.Connect();
648-
sourceAdapter.ClearCache();
695+
696+
if (!sourceAdapter.AdapterConfiguration.EnableCache)
697+
{
698+
sourceAdapter.ClearCache();
699+
}
649700

650701
destinationAdapter.Connect();
651-
sourceAdapter.ClearCache();
702+
703+
if (!destinationAdapter.AdapterConfiguration.EnableCache)
704+
{
705+
destinationAdapter.ClearCache();
706+
}
652707

653708
var contents = await sourceAdapter.ReadFileAsync(virtualSourcePath, cancellationToken);
654709
await destinationAdapter.WriteFileAsync(virtualDestinationPath, contents, overwrite, cancellationToken);
@@ -675,7 +730,11 @@ public async Task WriteFileAsync(string virtualPath, Stream contents, bool overw
675730
var adapter = GetAdapter(prefix);
676731

677732
adapter.Connect();
678-
adapter.ClearCache();
733+
734+
if (!adapter.AdapterConfiguration.EnableCache)
735+
{
736+
adapter.ClearCache();
737+
}
679738

680739
await adapter.WriteFileAsync(virtualPath, contents, overwrite, cancellationToken);
681740
}
@@ -718,7 +777,11 @@ public async Task WriteFileAsync(string virtualPath, byte[] contents, bool overw
718777
var adapter = GetAdapter(prefix);
719778

720779
adapter.Connect();
721-
adapter.ClearCache();
780+
781+
if (!adapter.AdapterConfiguration.EnableCache)
782+
{
783+
adapter.ClearCache();
784+
}
722785

723786
await adapter.WriteFileAsync(virtualPath, contents, overwrite, cancellationToken);
724787
}
@@ -761,7 +824,11 @@ public async Task WriteFileAsync(string virtualPath, string contents, bool overw
761824
var adapter = GetAdapter(prefix);
762825

763826
adapter.Connect();
764-
adapter.ClearCache();
827+
828+
if (!adapter.AdapterConfiguration.EnableCache)
829+
{
830+
adapter.ClearCache();
831+
}
765832

766833
await adapter.WriteFileAsync(virtualPath, contents, overwrite, cancellationToken);
767834
}
@@ -785,7 +852,11 @@ public async Task AppendFileAsync(string virtualPath, Stream contents, Cancellat
785852
var adapter = GetAdapter(prefix);
786853

787854
adapter.Connect();
788-
adapter.ClearCache();
855+
856+
if (!adapter.AdapterConfiguration.EnableCache)
857+
{
858+
adapter.ClearCache();
859+
}
789860

790861
await adapter.AppendFileAsync(virtualPath, contents, cancellationToken);
791862
}
@@ -826,7 +897,11 @@ public async Task AppendFileAsync(string virtualPath, byte[] contents, Cancellat
826897
var adapter = GetAdapter(prefix);
827898

828899
adapter.Connect();
829-
adapter.ClearCache();
900+
901+
if (!adapter.AdapterConfiguration.EnableCache)
902+
{
903+
adapter.ClearCache();
904+
}
830905

831906
await adapter.AppendFileAsync(virtualPath, contents, cancellationToken);
832907
}
@@ -867,7 +942,11 @@ public async Task AppendFileAsync(string virtualPath, string contents, Cancellat
867942
var adapter = GetAdapter(prefix);
868943

869944
adapter.Connect();
870-
adapter.ClearCache();
945+
946+
if (!adapter.AdapterConfiguration.EnableCache)
947+
{
948+
adapter.ClearCache();
949+
}
871950

872951
await adapter.AppendFileAsync(virtualPath, contents, cancellationToken);
873952
}

0 commit comments

Comments
 (0)