Skip to content

Commit 95d3c6b

Browse files
Travis Sheppardhaverchuck
authored andcommitted
fix(storage): throw pluginNotAddedException when storage plugin not c… (#1903)
1 parent d603df3 commit 95d3c6b

File tree

2 files changed

+16
-6
lines changed

2 files changed

+16
-6
lines changed

packages/amplify_core/lib/src/category/amplify_storage_category.dart

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,22 +27,30 @@ class StorageCategory extends AmplifyCategory<StoragePluginInterface> {
2727
UploadFileOptions? options}) {
2828
final UploadFileRequest request =
2929
UploadFileRequest(local: local, key: key, options: options);
30-
return plugins[0].uploadFile(request: request, onProgress: onProgress);
30+
return plugins.length == 1
31+
? plugins[0].uploadFile(request: request, onProgress: onProgress)
32+
: throw _pluginNotAddedException('Storage');
3133
}
3234

3335
Future<GetUrlResult> getUrl({required String key, GetUrlOptions? options}) {
3436
final GetUrlRequest request = GetUrlRequest(key: key, options: options);
35-
return plugins[0].getUrl(request: request);
37+
return plugins.length == 1
38+
? plugins[0].getUrl(request: request)
39+
: throw _pluginNotAddedException('Storage');
3640
}
3741

3842
Future<RemoveResult> remove({required String key, RemoveOptions? options}) {
3943
final RemoveRequest request = RemoveRequest(key: key, options: options);
40-
return plugins[0].remove(request: request);
44+
return plugins.length == 1
45+
? plugins[0].remove(request: request)
46+
: throw _pluginNotAddedException('Storage');
4147
}
4248

4349
Future<ListResult> list({String? path, ListOptions? options}) {
4450
final ListRequest request = ListRequest(path: path, options: options);
45-
return plugins[0].list(request: request);
51+
return plugins.length == 1
52+
? plugins[0].list(request: request)
53+
: throw _pluginNotAddedException('Storage');
4654
}
4755

4856
Future<DownloadFileResult> downloadFile(
@@ -52,6 +60,8 @@ class StorageCategory extends AmplifyCategory<StoragePluginInterface> {
5260
DownloadFileOptions? options}) {
5361
final DownloadFileRequest request =
5462
DownloadFileRequest(key: key, local: local, options: options);
55-
return plugins[0].downloadFile(request: request, onProgress: onProgress);
63+
return plugins.length == 1
64+
? plugins[0].downloadFile(request: request, onProgress: onProgress)
65+
: throw _pluginNotAddedException('Storage');
5666
}
5767
}

packages/storage/amplify_storage_s3/example/integration_test/main_test.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ void main() async {
5656
}
5757

5858
setUpAll(() async {
59-
Amplify.addPlugins([AmplifyAuthCognito(), AmplifyStorageS3()]);
59+
await Amplify.addPlugins([AmplifyAuthCognito(), AmplifyStorageS3()]);
6060
await Amplify.configure(amplifyconfig);
6161

6262
await deleteAllGuestFiles();

0 commit comments

Comments
 (0)