@@ -42,8 +42,8 @@ public class FlutterFirebaseStoragePlugin
42
42
static final String STORAGE_TASK_EVENT_NAME = "taskEvent" ;
43
43
static final String DEFAULT_ERROR_CODE = "firebase_storage" ;
44
44
45
- private final Map <String , EventChannel > eventChannels = new HashMap <>();
46
- private final Map <String , StreamHandler > streamHandlers = new HashMap <>();
45
+ static final Map <String , EventChannel > eventChannels = new HashMap <>();
46
+ static final Map <String , StreamHandler > streamHandlers = new HashMap <>();
47
47
48
48
static Map <String , String > getExceptionDetails (Exception exception ) {
49
49
Map <String , String > details = new HashMap <>();
@@ -145,11 +145,6 @@ private void initInstance(BinaryMessenger messenger) {
145
145
this .messenger = messenger ;
146
146
}
147
147
148
- private String registerEventChannel (String prefix , StreamHandler handler ) {
149
- String identifier = UUID .randomUUID ().toString ().toLowerCase (Locale .US );
150
- return registerEventChannel (prefix , identifier , handler );
151
- }
152
-
153
148
private String registerEventChannel (String prefix , String identifier , StreamHandler handler ) {
154
149
final String channelName = prefix + "/" + identifier ;
155
150
@@ -459,10 +454,12 @@ public void referencePutData(
459
454
FlutterFirebaseStorageTask .uploadBytes (
460
455
handle .intValue (), androidReference , data , androidMetaData );
461
456
try {
462
- TaskStateChannelStreamHandler handler = storageTask .startTaskWithMethodChannel (channel );
457
+ String identifier = UUID .randomUUID ().toString ().toLowerCase (Locale .US );
458
+ TaskStateChannelStreamHandler handler =
459
+ storageTask .startTaskWithMethodChannel (channel , identifier );
463
460
result .success (
464
461
registerEventChannel (
465
- STORAGE_METHOD_CHANNEL_NAME + "/" + STORAGE_TASK_EVENT_NAME , handler ));
462
+ STORAGE_METHOD_CHANNEL_NAME + "/" + STORAGE_TASK_EVENT_NAME , identifier , handler ));
466
463
} catch (Exception e ) {
467
464
result .error (FlutterFirebaseStorageException .parserExceptionToFlutter (e ));
468
465
}
@@ -489,10 +486,12 @@ public void referencePutString(
489
486
androidMetaData );
490
487
491
488
try {
492
- TaskStateChannelStreamHandler handler = storageTask .startTaskWithMethodChannel (channel );
489
+ String identifier = UUID .randomUUID ().toString ().toLowerCase (Locale .US );
490
+ TaskStateChannelStreamHandler handler =
491
+ storageTask .startTaskWithMethodChannel (channel , identifier );
493
492
result .success (
494
493
registerEventChannel (
495
- STORAGE_METHOD_CHANNEL_NAME + "/" + STORAGE_TASK_EVENT_NAME , handler ));
494
+ STORAGE_METHOD_CHANNEL_NAME + "/" + STORAGE_TASK_EVENT_NAME , identifier , handler ));
496
495
} catch (Exception e ) {
497
496
result .error (FlutterFirebaseStorageException .parserExceptionToFlutter (e ));
498
497
}
@@ -517,10 +516,12 @@ public void referencePutFile(
517
516
settableMetaData == null ? null : getMetaDataFromPigeon (settableMetaData ));
518
517
519
518
try {
520
- TaskStateChannelStreamHandler handler = storageTask .startTaskWithMethodChannel (channel );
519
+ String identifier = UUID .randomUUID ().toString ().toLowerCase (Locale .US );
520
+ TaskStateChannelStreamHandler handler =
521
+ storageTask .startTaskWithMethodChannel (channel , identifier );
521
522
result .success (
522
523
registerEventChannel (
523
- STORAGE_METHOD_CHANNEL_NAME + "/" + STORAGE_TASK_EVENT_NAME , handler ));
524
+ STORAGE_METHOD_CHANNEL_NAME + "/" + STORAGE_TASK_EVENT_NAME , identifier , handler ));
524
525
} catch (Exception e ) {
525
526
result .error (FlutterFirebaseStorageException .parserExceptionToFlutter (e ));
526
527
}
@@ -540,10 +541,12 @@ public void referenceDownloadFile(
540
541
handle .intValue (), androidReference , new File (filePath ));
541
542
542
543
try {
543
- TaskStateChannelStreamHandler handler = storageTask .startTaskWithMethodChannel (channel );
544
+ String identifier = UUID .randomUUID ().toString ().toLowerCase (Locale .US );
545
+ TaskStateChannelStreamHandler handler =
546
+ storageTask .startTaskWithMethodChannel (channel , identifier );
544
547
result .success (
545
548
registerEventChannel (
546
- STORAGE_METHOD_CHANNEL_NAME + "/" + STORAGE_TASK_EVENT_NAME , handler ));
549
+ STORAGE_METHOD_CHANNEL_NAME + "/" + STORAGE_TASK_EVENT_NAME , identifier , handler ));
547
550
} catch (Exception e ) {
548
551
result .error (FlutterFirebaseStorageException .parserExceptionToFlutter (e ));
549
552
}
0 commit comments