1313#import " RNFetchBlob.h"
1414#import " RNFetchBlobConst.h"
1515#import " RNFetchBlobProgress.h"
16- #import " RNFetchBlobRequest.h"
1716
1817#if __has_include(<React/RCTAssert.h>)
1918#import < React/RCTRootView.h>
@@ -46,23 +45,21 @@ static void initialize_tables() {
4645
4746@implementation RNFetchBlobNetwork
4847
49- NSOperationQueue *taskQueue;
50- NSMapTable <NSString *, RNFetchBlobRequest*> * requestsTable;
5148
5249- (id )init {
5350 self = [super init ];
5451 if (self) {
55- requestsTable = [NSMapTable mapTableWithKeyOptions: NSMapTableStrongMemory valueOptions: NSMapTableWeakMemory ];
52+ self. requestsTable = [NSMapTable mapTableWithKeyOptions: NSMapTableStrongMemory valueOptions: NSMapTableWeakMemory ];
5653
57- taskQueue = [[NSOperationQueue alloc ] init ];
58- taskQueue.qualityOfService = NSQualityOfServiceUtility ;
59- taskQueue.maxConcurrentOperationCount = 10 ;
54+ self. taskQueue = [[NSOperationQueue alloc ] init ];
55+ self. taskQueue .qualityOfService = NSQualityOfServiceUtility ;
56+ self. taskQueue .maxConcurrentOperationCount = 10 ;
6057 }
6158
6259 return self;
6360}
6461
65- + (instancetype )sharedInstance {
62+ + (RNFetchBlobNetwork* _Nullable )sharedInstance {
6663 static id _sharedInstance = nil ;
6764 static dispatch_once_t onceToken;
6865 dispatch_once (&onceToken, ^{
@@ -85,19 +82,19 @@ + (void) sendRequest:(__weak NSDictionary * _Nullable )options
8582 bridge: bridgeRef
8683 taskId: taskId
8784 withRequest: req
88- taskOperationQueue: taskQueue
85+ taskOperationQueue: [ self sharedInstance ]. taskQueue
8986 callback: callback];
9087
9188 @synchronized ([RNFetchBlobNetwork class ]) {
92- [requestsTable setObject: request forKey: taskId];
89+ [[ self sharedInstance ]. requestsTable setObject: request forKey: taskId];
9390 }
9491}
9592
9693+ (void ) enableProgressReport : (NSString *) taskId config : (RNFetchBlobProgress *)config
9794{
9895 if (config) {
9996 @synchronized ([RNFetchBlobNetwork class ]) {
100- [requestsTable objectForKey: taskId].progressConfig = config;
97+ [[ self sharedInstance ]. requestsTable objectForKey: taskId].progressConfig = config;
10198 }
10299 }
103100}
@@ -106,7 +103,7 @@ + (void) enableUploadProgress:(NSString *) taskId config:(RNFetchBlobProgress *)
106103{
107104 if (config) {
108105 @synchronized ([RNFetchBlobNetwork class ]) {
109- [requestsTable objectForKey: taskId].uploadProgressConfig = config;
106+ [[ self sharedInstance ]. requestsTable objectForKey: taskId].uploadProgressConfig = config;
110107 }
111108 }
112109}
@@ -148,7 +145,7 @@ + (void) cancelRequest:(NSString *)taskId
148145 NSURLSessionDataTask * task;
149146
150147 @synchronized ([RNFetchBlobNetwork class ]) {
151- task = [requestsTable objectForKey: taskId].task ;
148+ task = [[ self sharedInstance ]. requestsTable objectForKey: taskId].task ;
152149 }
153150
154151 if (task && task.state == NSURLSessionTaskStateRunning ) {
0 commit comments