@@ -27,6 +27,8 @@ extension AWSS3StoragePlugin {
27
27
let prefix = try await prefixResolver. resolvePrefix ( for: options. accessLevel,
28
28
targetIdentityId: options. targetIdentityId)
29
29
let serviceKey = prefix + request. key
30
+
31
+ let storageService = try storageService ( for: options. bucket)
30
32
if let pluginOptions = options. pluginOptions as? AWSStorageGetURLOptions , pluginOptions. validateObjectExistence {
31
33
try await storageService. validateObjectExistence ( serviceKey: serviceKey)
32
34
}
@@ -51,6 +53,7 @@ extension AWSS3StoragePlugin {
51
53
) async throws -> URL {
52
54
let options = options ?? StorageGetURLRequest . Options ( )
53
55
let request = StorageGetURLRequest ( path: path, options: options)
56
+ let storageService = try storageService ( for: options. bucket)
54
57
let task = AWSS3StorageGetURLTask (
55
58
request,
56
59
storageBehaviour: storageService)
@@ -65,7 +68,7 @@ extension AWSS3StoragePlugin {
65
68
let request = StorageDownloadDataRequest ( path: path, options: options)
66
69
let operation = AWSS3StorageDownloadDataOperation ( request,
67
70
storageConfiguration: storageConfiguration,
68
- storageService : storageService ,
71
+ storageServiceProvider : storageServiceProvider ( for : options . bucket ) ,
69
72
authService: authService)
70
73
let taskAdapter = AmplifyInProcessReportingOperationTaskAdapter ( operation: operation)
71
74
queue. addOperation ( operation)
@@ -82,7 +85,7 @@ extension AWSS3StoragePlugin {
82
85
let request = StorageDownloadDataRequest ( key: key, options: options)
83
86
let operation = AWSS3StorageDownloadDataOperation ( request,
84
87
storageConfiguration: storageConfiguration,
85
- storageService : storageService ,
88
+ storageServiceProvider : storageServiceProvider ( for : options . bucket ) ,
86
89
authService: authService)
87
90
let taskAdapter = AmplifyInProcessReportingOperationTaskAdapter ( operation: operation)
88
91
queue. addOperation ( operation)
@@ -100,7 +103,7 @@ extension AWSS3StoragePlugin {
100
103
let request = StorageDownloadFileRequest ( key: key, local: local, options: options)
101
104
let operation = AWSS3StorageDownloadFileOperation ( request,
102
105
storageConfiguration: storageConfiguration,
103
- storageService : storageService ,
106
+ storageServiceProvider : storageServiceProvider ( for : options . bucket ) ,
104
107
authService: authService)
105
108
let taskAdapter = AmplifyInProcessReportingOperationTaskAdapter ( operation: operation)
106
109
queue. addOperation ( operation)
@@ -118,7 +121,7 @@ extension AWSS3StoragePlugin {
118
121
let request = StorageDownloadFileRequest ( path: path, local: local, options: options)
119
122
let operation = AWSS3StorageDownloadFileOperation ( request,
120
123
storageConfiguration: storageConfiguration,
121
- storageService : storageService ,
124
+ storageServiceProvider : storageServiceProvider ( for : options . bucket ) ,
122
125
authService: authService)
123
126
let taskAdapter = AmplifyInProcessReportingOperationTaskAdapter ( operation: operation)
124
127
queue. addOperation ( operation)
@@ -136,7 +139,7 @@ extension AWSS3StoragePlugin {
136
139
let request = StorageUploadDataRequest ( key: key, data: data, options: options)
137
140
let operation = AWSS3StorageUploadDataOperation ( request,
138
141
storageConfiguration: storageConfiguration,
139
- storageService : storageService ,
142
+ storageServiceProvider : storageServiceProvider ( for : options . bucket ) ,
140
143
authService: authService)
141
144
let taskAdapter = AmplifyInProcessReportingOperationTaskAdapter ( operation: operation)
142
145
queue. addOperation ( operation)
@@ -154,7 +157,7 @@ extension AWSS3StoragePlugin {
154
157
let request = StorageUploadDataRequest ( path: path, data: data, options: options)
155
158
let operation = AWSS3StorageUploadDataOperation ( request,
156
159
storageConfiguration: storageConfiguration,
157
- storageService : storageService ,
160
+ storageServiceProvider : storageServiceProvider ( for : options . bucket ) ,
158
161
authService: authService)
159
162
let taskAdapter = AmplifyInProcessReportingOperationTaskAdapter ( operation: operation)
160
163
queue. addOperation ( operation)
@@ -172,7 +175,7 @@ extension AWSS3StoragePlugin {
172
175
let request = StorageUploadFileRequest ( key: key, local: local, options: options)
173
176
let operation = AWSS3StorageUploadFileOperation ( request,
174
177
storageConfiguration: storageConfiguration,
175
- storageService : storageService ,
178
+ storageServiceProvider : storageServiceProvider ( for : options . bucket ) ,
176
179
authService: authService)
177
180
let taskAdapter = AmplifyInProcessReportingOperationTaskAdapter ( operation: operation)
178
181
queue. addOperation ( operation)
@@ -190,7 +193,7 @@ extension AWSS3StoragePlugin {
190
193
let request = StorageUploadFileRequest ( path: path, local: local, options: options)
191
194
let operation = AWSS3StorageUploadFileOperation ( request,
192
195
storageConfiguration: storageConfiguration,
193
- storageService : storageService ,
196
+ storageServiceProvider : storageServiceProvider ( for : options . bucket ) ,
194
197
authService: authService)
195
198
let taskAdapter = AmplifyInProcessReportingOperationTaskAdapter ( operation: operation)
196
199
queue. addOperation ( operation)
@@ -205,6 +208,7 @@ extension AWSS3StoragePlugin {
205
208
) async throws -> String {
206
209
let options = options ?? StorageRemoveRequest . Options ( )
207
210
let request = StorageRemoveRequest ( key: key, options: options)
211
+ let storageService = try storageService ( for: options. bucket)
208
212
let operation = AWSS3StorageRemoveOperation ( request,
209
213
storageConfiguration: storageConfiguration,
210
214
storageService: storageService,
@@ -222,6 +226,7 @@ extension AWSS3StoragePlugin {
222
226
) async throws -> String {
223
227
let options = options ?? StorageRemoveRequest . Options ( )
224
228
let request = StorageRemoveRequest ( path: path, options: options)
229
+ let storageService = try storageService ( for: options. bucket)
225
230
let task = AWSS3StorageRemoveTask (
226
231
request,
227
232
storageConfiguration: storageConfiguration,
@@ -233,6 +238,7 @@ extension AWSS3StoragePlugin {
233
238
options: StorageListRequest . Options ? = nil
234
239
) async throws -> StorageListResult {
235
240
let options = options ?? StorageListRequest . Options ( )
241
+ let storageService = try storageService ( for: options. bucket)
236
242
let prefixResolver = storageConfiguration. prefixResolver ?? StorageAccessLevelAwarePrefixResolver ( authService: authService)
237
243
let prefix = try await prefixResolver. resolvePrefix ( for: options. accessLevel, targetIdentityId: options. targetIdentityId)
238
244
let result = try await storageService. list ( prefix: prefix, options: options)
@@ -250,6 +256,7 @@ extension AWSS3StoragePlugin {
250
256
) async throws -> StorageListResult {
251
257
let options = options ?? StorageListRequest . Options ( )
252
258
let request = StorageListRequest ( path: path, options: options)
259
+ let storageService = try storageService ( for: options. bucket)
253
260
let task = AWSS3StorageListObjectsTask (
254
261
request,
255
262
storageConfiguration: storageConfiguration,
0 commit comments