diff --git a/client/react-native/ios/Berty.xcodeproj/project.pbxproj b/client/react-native/ios/Berty.xcodeproj/project.pbxproj index 3a4b951f92..7aea249b37 100644 --- a/client/react-native/ios/Berty.xcodeproj/project.pbxproj +++ b/client/react-native/ios/Berty.xcodeproj/project.pbxproj @@ -5,7 +5,6 @@ }; objectVersion = 46; objects = { - /* Begin PBXBuildFile section */ 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */; }; 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */; }; diff --git a/client/react-native/ios/modules/core/CoreModule.m b/client/react-native/ios/modules/core/CoreModule.m index 387cabe23e..4400d1a9bb 100644 --- a/client/react-native/ios/modules/core/CoreModule.m +++ b/client/react-native/ios/modules/core/CoreModule.m @@ -26,60 +26,16 @@ @implementation objc_name (RCTExternModule) \ @interface RCT_EXTERN_REMAP_MODULE_2(CoreModule, CoreModule, NSObject) -RCT_EXTERN_METHOD(initialize:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(listAccounts:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(start:(NSString)nickname +RCT_EXTERN_METHOD(invoke:(NSString)method + message:(NSString)message resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject); -RCT_EXTERN_METHOD(restart:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(panic:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - RCT_EXPORT_METHOD(throwException) { @throw [NSException exceptionWithName:@"throw exception" reason:@"throw native exception" userInfo:nil]; } -RCT_EXTERN_METHOD(dropDatabase:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(getPort:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(getNetworkConfig:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(updateNetworkConfig:(NSString *)config - resolve:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(isBotRunning:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(startBot:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(stopBot:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(getLocalGRPCInfos:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(startLocalGRPC:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(stopLocalGRPC:(RCTPromiseResolveBlock)resolve - reject:(RCTPromiseRejectBlock)reject); - -RCT_EXTERN_METHOD(setCurrentRoute:(NSString)route); - RCT_EXTERN_METHOD(getNotificationStatus:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject); diff --git a/client/react-native/ios/modules/core/CoreModule.swift b/client/react-native/ios/modules/core/CoreModule.swift index 0c25f1b316..ee8a6447fc 100644 --- a/client/react-native/ios/modules/core/CoreModule.swift +++ b/client/react-native/ios/modules/core/CoreModule.swift @@ -20,18 +20,17 @@ var logger = Logger("chat.berty.io", "CoreModule") class CoreModule: NSObject { let connectivity = ConnectivityUpdateHandler() let serialCoreQueue = DispatchQueue(label: "BertyCore") - let daemon: CoreNativeBridge = NewCoreNativeBridge() + let daemon = CoreNewNativeBridge() - @objc func invoke(_ method: string, message: string, resolve: RCTPromiseResolveBlock!, reject: RCTPromiseRejectBlock!) { + @objc func invoke(_ method: NSString, message: NSString, resolve: RCTPromiseResolveBlock!, reject: RCTPromiseRejectBlock!) { self.serialCoreQueue.sync { var err: NSError? do { - let ret = self.daemon.Invoke(method, message, &err) + let ret = self.daemon?.invoke(method as String, msgIn: message as String, error: &err) if let error = err { throw error } - resolve(ret) } catch let error as NSError { reject("\(String(describing: error.code))", error.userInfo.description, error) @@ -39,193 +38,6 @@ class CoreModule: NSObject { } } - @objc func initialize(_ resolve: RCTPromiseResolveBlock!, reject: RCTPromiseRejectBlock!) { - var err: NSError? - - do { - CoreInitialize(logger, Core.deviceInfo()?.getStoragePath(), &err) - if let error = err { - throw error - } - resolve(nil) - } catch let error as NSError { - logger.format("unable to init core: %@", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.userInfo.description, error) - } - } - - @objc func listAccounts(_ resolve: RCTPromiseResolveBlock!, reject: RCTPromiseRejectBlock!) { - var err: NSError? - - do { - let list = CoreListAccounts(&err) - if let error = err { - throw error - } - resolve(list) - } catch let error as NSError { - logger.format("unable to list accounts: %@", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.userInfo.description, error) - } - } - - @objc func start(_ nickname: NSString, resolve: RCTPromiseResolveBlock!, reject: RCTPromiseRejectBlock!) { - var err: NSError? - - do { - - guard let coreOptions = CoreMobileOptions() - .withLoggerDriver(logger)? - .withNickname(nickname as String) - else { - throw CoreError.invalidOptions - } - - CoreStart(coreOptions, &err) - if let error = err { - throw error - } - resolve(nil) - } catch let error as NSError { - logger.format("unable to start core: %@", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } - } - - @objc func restart(_ resolve: RCTPromiseResolveBlock!, reject: RCTPromiseRejectBlock!) { - var err: NSError? - - do { - CoreRestart(&err) - if let error = err { - throw error - } - resolve(nil) - } catch let error as NSError { - logger.format("unable to restart core: %@", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } - } - - @objc func panic(_ resolve: RCTPromiseResolveBlock!, reject: RCTPromiseRejectBlock!) { - CorePanic() - resolve(nil) - } - - @objc func dropDatabase(_ resolve: RCTPromiseResolveBlock!, reject: RCTPromiseRejectBlock!) { - - var err: NSError? - - do { - CoreDropDatabase(&err) - if let error = err { - throw error - } - resolve(nil) - } catch let error as NSError { - logger.format("unable to drop database: %@", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } - } - - @objc func getPort(_ resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - var err: NSError? - var port: Int = 0 - - CoreGetPort(&port, &err) - if let error = err { - logger.format("unable to get port: ", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } else { - resolve(port) - } - } - - @objc func getNetworkConfig(_ resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - var err: NSError? - var config: String! - - config = CoreGetNetworkConfig(&err) - if let error = err { - logger.format("get network config error: ", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } else { - resolve(config) - } - } - - @objc func updateNetworkConfig(_ config: String, resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - var err: NSError? - - CoreUpdateNetworkConfig(config, &err) - if let error = err { - logger.format("update network config error: ", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } else { - resolve(nil) - } - } - - @objc func isBotRunning(_ resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - resolve(CoreIsBotRunning()) - } - - @objc func startBot(_ resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - var err: NSError? - - CoreStartBot(&err) - if let error = err { - logger.format("start bot error: ", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } else { - resolve(nil) - } - } - - @objc func stopBot(_ resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - var err: NSError? - - CoreStopBot(&err) - if let error = err { - logger.format("stop bot error: ", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } else { - resolve(nil) - } - } - - @objc func getLocalGRPCInfos(_ resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - resolve(CoreGetLocalGRPCInfos()) - } - - @objc func startLocalGRPC(_ resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - var err: NSError? - - CoreStartLocalGRPC(&err) - if let error = err { - logger.format("start local gRPC error: ", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } else { - resolve(nil) - } - } - - @objc func stopLocalGRPC(_ resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) { - var err: NSError? - - CoreStopLocalGRPC(&err) - if let error = err { - logger.format("stop local gRPC error: ", level: .error, error.userInfo.description) - reject("\(String(describing: error.code))", error.localizedDescription, error) - } else { - resolve(nil) - } - } - - @objc func setCurrentRoute(_ route: String!) { - Core.deviceInfo()?.setAppRoute(route) - } - @objc static func requiresMainQueueSetup() -> Bool { return false }