7
7
namespace Files . App . Storage . Storables
8
8
{
9
9
/// <inheritdoc cref="IFolder"/>
10
- public sealed class WindowsStorageFolder : WindowsStorable < StorageFolder > , ILocatableFolder , IFolderExtended , INestedFolder , IDirectCopy , IDirectMove
10
+ [ Obsolete ( "Use the new WindowsStorable" ) ]
11
+ public sealed class WindowsStorageFolderLegacy : WindowsStorableLegacy < StorageFolder > , ILocatableFolder , IFolderExtended , INestedFolder , IDirectCopy , IDirectMove
11
12
{
12
13
// TODO: Implement IMutableFolder
13
14
14
- public WindowsStorageFolder ( StorageFolder storage )
15
+ public WindowsStorageFolderLegacy ( StorageFolder storage )
15
16
: base ( storage )
16
17
{
17
18
}
@@ -20,14 +21,14 @@ public WindowsStorageFolder(StorageFolder storage)
20
21
public async Task < INestedFile > GetFileAsync ( string fileName , CancellationToken cancellationToken = default )
21
22
{
22
23
var file = await storage . GetFileAsync ( fileName ) . AsTask ( cancellationToken ) ;
23
- return new WindowsStorageFile ( file ) ;
24
+ return new WindowsStorageFileLegacy ( file ) ;
24
25
}
25
26
26
27
/// <inheritdoc/>
27
28
public async Task < INestedFolder > GetFolderAsync ( string folderName , CancellationToken cancellationToken = default )
28
29
{
29
30
var folder = await storage . GetFolderAsync ( folderName ) . AsTask ( cancellationToken ) ;
30
- return new WindowsStorageFolder ( folder ) ;
31
+ return new WindowsStorageFolderLegacy ( folder ) ;
31
32
}
32
33
33
34
/// <inheritdoc/>
@@ -40,7 +41,7 @@ public async IAsyncEnumerable<INestedStorable> GetItemsAsync(StorableKind kind =
40
41
var files = await storage . GetFilesAsync ( ) . AsTask ( cancellationToken ) ;
41
42
foreach ( var item in files )
42
43
{
43
- yield return new WindowsStorageFile ( item ) ;
44
+ yield return new WindowsStorageFileLegacy ( item ) ;
44
45
}
45
46
46
47
break ;
@@ -51,7 +52,7 @@ public async IAsyncEnumerable<INestedStorable> GetItemsAsync(StorableKind kind =
51
52
var folders = await storage . GetFoldersAsync ( ) . AsTask ( cancellationToken ) ;
52
53
foreach ( var item in folders )
53
54
{
54
- yield return new WindowsStorageFolder ( item ) ;
55
+ yield return new WindowsStorageFolderLegacy ( item ) ;
55
56
}
56
57
57
58
break ;
@@ -63,10 +64,10 @@ public async IAsyncEnumerable<INestedStorable> GetItemsAsync(StorableKind kind =
63
64
foreach ( var item in items )
64
65
{
65
66
if ( item is StorageFile storageFile )
66
- yield return new WindowsStorageFile ( storageFile ) ;
67
+ yield return new WindowsStorageFileLegacy ( storageFile ) ;
67
68
68
69
if ( item is StorageFolder storageFolder )
69
- yield return new WindowsStorageFolder ( storageFolder ) ;
70
+ yield return new WindowsStorageFolderLegacy ( storageFolder ) ;
70
71
}
71
72
72
73
break ;
@@ -82,11 +83,11 @@ public Task DeleteAsync(INestedStorable item, bool permanently = default, Cancel
82
83
{
83
84
return item switch
84
85
{
85
- WindowsStorable < StorageFile > storageFile => storageFile . storage
86
+ WindowsStorableLegacy < StorageFile > storageFile => storageFile . storage
86
87
. DeleteAsync ( GetWindowsStorageDeleteOption ( permanently ) )
87
88
. AsTask ( cancellationToken ) ,
88
89
89
- WindowsStorable < StorageFolder > storageFolder => storageFolder . storage
90
+ WindowsStorableLegacy < StorageFolder > storageFolder => storageFolder . storage
90
91
. DeleteAsync ( GetWindowsStorageDeleteOption ( permanently ) )
91
92
. AsTask ( cancellationToken ) ,
92
93
@@ -97,10 +98,10 @@ public Task DeleteAsync(INestedStorable item, bool permanently = default, Cancel
97
98
/// <inheritdoc/>
98
99
public async Task < INestedStorable > CreateCopyOfAsync ( INestedStorable itemToCopy , bool overwrite = default , CancellationToken cancellationToken = default )
99
100
{
100
- if ( itemToCopy is WindowsStorable < StorageFile > sourceFile )
101
+ if ( itemToCopy is WindowsStorableLegacy < StorageFile > sourceFile )
101
102
{
102
103
var copiedFile = await sourceFile . storage . CopyAsync ( storage , itemToCopy . Name , GetWindowsNameCollisionOption ( overwrite ) ) . AsTask ( cancellationToken ) ;
103
- return new WindowsStorageFile ( copiedFile ) ;
104
+ return new WindowsStorageFileLegacy ( copiedFile ) ;
104
105
}
105
106
106
107
throw new ArgumentException ( $ "Could not copy type { itemToCopy . GetType ( ) } ") ;
@@ -109,10 +110,10 @@ public async Task<INestedStorable> CreateCopyOfAsync(INestedStorable itemToCopy,
109
110
/// <inheritdoc/>
110
111
public async Task < INestedStorable > MoveFromAsync ( INestedStorable itemToMove , IModifiableFolder source , bool overwrite = default , CancellationToken cancellationToken = default )
111
112
{
112
- if ( itemToMove is WindowsStorable < StorageFile > sourceFile )
113
+ if ( itemToMove is WindowsStorableLegacy < StorageFile > sourceFile )
113
114
{
114
115
await sourceFile . storage . MoveAsync ( storage , itemToMove . Name , GetWindowsNameCollisionOption ( overwrite ) ) . AsTask ( cancellationToken ) ;
115
- return new WindowsStorageFile ( sourceFile . storage ) ;
116
+ return new WindowsStorageFileLegacy ( sourceFile . storage ) ;
116
117
}
117
118
118
119
throw new ArgumentException ( $ "Could not copy type { itemToMove . GetType ( ) } ") ;
@@ -122,21 +123,21 @@ public async Task<INestedStorable> MoveFromAsync(INestedStorable itemToMove, IMo
122
123
public async Task < INestedFile > CreateFileAsync ( string desiredName , bool overwrite = default , CancellationToken cancellationToken = default )
123
124
{
124
125
var file = await storage . CreateFileAsync ( desiredName , GetWindowsCreationCollisionOption ( overwrite ) ) . AsTask ( cancellationToken ) ;
125
- return new WindowsStorageFile ( file ) ;
126
+ return new WindowsStorageFileLegacy ( file ) ;
126
127
}
127
128
128
129
/// <inheritdoc/>
129
130
public async Task < INestedFolder > CreateFolderAsync ( string desiredName , bool overwrite = default , CancellationToken cancellationToken = default )
130
131
{
131
132
var folder = await storage . CreateFolderAsync ( desiredName , GetWindowsCreationCollisionOption ( overwrite ) ) . AsTask ( cancellationToken ) ;
132
- return new WindowsStorageFolder ( folder ) ;
133
+ return new WindowsStorageFolderLegacy ( folder ) ;
133
134
}
134
135
135
136
/// <inheritdoc/>
136
137
public override async Task < IFolder ? > GetParentAsync ( CancellationToken cancellationToken = default )
137
138
{
138
139
var parentFolder = await storage . GetParentAsync ( ) . AsTask ( cancellationToken ) ;
139
- return new WindowsStorageFolder ( parentFolder ) ;
140
+ return new WindowsStorageFolderLegacy ( parentFolder ) ;
140
141
}
141
142
142
143
private static StorageDeleteOption GetWindowsStorageDeleteOption ( bool permanently )
0 commit comments