11using SecureFolderFS . Core . FileSystem . Directories ;
2+ using SecureFolderFS . Core . FileSystem . Helpers ;
23using SecureFolderFS . Core . FileSystem . Paths ;
34using SecureFolderFS . Core . FileSystem . Streams ;
45using SecureFolderFS . Core . WebDav . Storage ;
56using SecureFolderFS . Sdk . Storage ;
7+ using SecureFolderFS . Sdk . Storage . Enums ;
68using SecureFolderFS . Sdk . Storage . LocatableStorage ;
79using SecureFolderFS . Sdk . Storage . ModifiableStorage ;
810using System ;
11+ using System . Collections . Generic ;
12+ using System . Runtime . CompilerServices ;
913using System . Security . Cryptography ;
1014using System . Threading ;
1115using System . Threading . Tasks ;
@@ -30,6 +34,22 @@ public EncryptingDavFolder(TCapability inner, IStreamsAccess streamsAccess, IPat
3034 _directoryIdAccess = directoryIdAccess ;
3135 }
3236
37+ /// <inheritdoc/>
38+ public override async IAsyncEnumerable < IStorable > GetItemsAsync ( StorableKind kind = StorableKind . All , [ EnumeratorCancellation ] CancellationToken cancellationToken = default )
39+ {
40+ await foreach ( var item in Inner . GetItemsAsync ( kind , cancellationToken ) )
41+ {
42+ if ( PathHelpers . IsCoreFile ( item . Name ) )
43+ continue ;
44+
45+ if ( item is IFile file )
46+ yield return NewFile ( file ) ;
47+
48+ if ( item is IFolder folder )
49+ yield return NewFolder ( folder ) ;
50+ }
51+ }
52+
3353 /// <inheritdoc/>
3454 public override async Task < IFolder > CreateFolderAsync ( string desiredName , bool overwrite = default , CancellationToken cancellationToken = default )
3555 {
@@ -49,6 +69,7 @@ public override async Task<IFolder> CreateFolderAsync(string desiredName, bool o
4969 return NewFolder ( folder ) ;
5070 }
5171
72+ /// <inheritdoc/>
5273 public override Task < IStorable > CreateCopyOfAsync ( IStorable itemToCopy , bool overwrite = default , CancellationToken cancellationToken = default )
5374 {
5475 // TODO: When copying, directory ID should be updated as well
0 commit comments