CoreApi.g.swift 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327
  1. // Autogenerated from Pigeon (v26.0.1), do not edit directly.
  2. // See also: https://pub.dev/packages/pigeon
  3. import Foundation
  4. #if os(iOS)
  5. import Flutter
  6. #elseif os(macOS)
  7. import FlutterMacOS
  8. #else
  9. #error("Unsupported platform.")
  10. #endif
  11. /// Error class for passing custom error details to Dart side.
  12. final class PigeonError: Error {
  13. let code: String
  14. let message: String?
  15. let details: Sendable?
  16. init(code: String, message: String?, details: Sendable?) {
  17. self.code = code
  18. self.message = message
  19. self.details = details
  20. }
  21. var localizedDescription: String {
  22. return
  23. "PigeonError(code: \(code), message: \(message ?? "<nil>"), details: \(details ?? "<nil>")"
  24. }
  25. }
  26. private func wrapResult(_ result: Any?) -> [Any?] {
  27. return [result]
  28. }
  29. private func wrapError(_ error: Any) -> [Any?] {
  30. if let pigeonError = error as? PigeonError {
  31. return [
  32. pigeonError.code,
  33. pigeonError.message,
  34. pigeonError.details,
  35. ]
  36. }
  37. if let flutterError = error as? FlutterError {
  38. return [
  39. flutterError.code,
  40. flutterError.message,
  41. flutterError.details,
  42. ]
  43. }
  44. return [
  45. "\(error)",
  46. "\(type(of: error))",
  47. "Stacktrace: \(Thread.callStackSymbols)",
  48. ]
  49. }
  50. private func isNullish(_ value: Any?) -> Bool {
  51. return value is NSNull || value == nil
  52. }
  53. private func nilOrValue<T>(_ value: Any?) -> T? {
  54. if value is NSNull { return nil }
  55. return value as! T?
  56. }
  57. private class CoreApiPigeonCodecReader: FlutterStandardReader {
  58. }
  59. private class CoreApiPigeonCodecWriter: FlutterStandardWriter {
  60. }
  61. private class CoreApiPigeonCodecReaderWriter: FlutterStandardReaderWriter {
  62. override func reader(with data: Data) -> FlutterStandardReader {
  63. return CoreApiPigeonCodecReader(data: data)
  64. }
  65. override func writer(with data: NSMutableData) -> FlutterStandardWriter {
  66. return CoreApiPigeonCodecWriter(data: data)
  67. }
  68. }
  69. class CoreApiPigeonCodec: FlutterStandardMessageCodec, @unchecked Sendable {
  70. static let shared = CoreApiPigeonCodec(readerWriter: CoreApiPigeonCodecReaderWriter())
  71. }
  72. var coreApiPigeonMethodCodec = FlutterStandardMethodCodec(readerWriter: CoreApiPigeonCodecReaderWriter());
  73. /// Generated protocol from Pigeon that represents a handler of messages from Flutter.
  74. protocol CoreApi {
  75. func getApps(completion: @escaping (Result<String?, Error>) -> Void)
  76. func getSystemLocale() throws -> String?
  77. func connect(sessionId: String, socksPort: Int64, tunnelConfig: String, configJson: String) throws -> Bool?
  78. func disconnect() throws -> Bool?
  79. func getRemoteIp() throws -> String?
  80. func getAdvertisingId() throws -> String?
  81. func moveTaskToBack() throws -> Bool?
  82. func isConnected() throws -> Bool?
  83. func getSimInfo() throws -> String?
  84. func reconnect() throws -> Bool?
  85. func getChannel() throws -> String?
  86. }
  87. /// Generated setup class from Pigeon to handle messages through the `binaryMessenger`.
  88. class CoreApiSetup {
  89. static var codec: FlutterStandardMessageCodec { CoreApiPigeonCodec.shared }
  90. /// Sets up an instance of `CoreApi` to handle messages through the `binaryMessenger`.
  91. static func setUp(binaryMessenger: FlutterBinaryMessenger, api: CoreApi?, messageChannelSuffix: String = "") {
  92. let channelSuffix = messageChannelSuffix.count > 0 ? ".\(messageChannelSuffix)" : ""
  93. let getAppsChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.getApps\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  94. if let api = api {
  95. getAppsChannel.setMessageHandler { _, reply in
  96. api.getApps { result in
  97. switch result {
  98. case .success(let res):
  99. reply(wrapResult(res))
  100. case .failure(let error):
  101. reply(wrapError(error))
  102. }
  103. }
  104. }
  105. } else {
  106. getAppsChannel.setMessageHandler(nil)
  107. }
  108. let getSystemLocaleChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.getSystemLocale\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  109. if let api = api {
  110. getSystemLocaleChannel.setMessageHandler { _, reply in
  111. do {
  112. let result = try api.getSystemLocale()
  113. reply(wrapResult(result))
  114. } catch {
  115. reply(wrapError(error))
  116. }
  117. }
  118. } else {
  119. getSystemLocaleChannel.setMessageHandler(nil)
  120. }
  121. let connectChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.connect\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  122. if let api = api {
  123. connectChannel.setMessageHandler { message, reply in
  124. let args = message as! [Any?]
  125. let sessionIdArg = args[0] as! String
  126. let socksPortArg = args[1] as! Int64
  127. let tunnelConfigArg = args[2] as! String
  128. let configJsonArg = args[3] as! String
  129. do {
  130. let result = try api.connect(sessionId: sessionIdArg, socksPort: socksPortArg, tunnelConfig: tunnelConfigArg, configJson: configJsonArg)
  131. reply(wrapResult(result))
  132. } catch {
  133. reply(wrapError(error))
  134. }
  135. }
  136. } else {
  137. connectChannel.setMessageHandler(nil)
  138. }
  139. let disconnectChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.disconnect\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  140. if let api = api {
  141. disconnectChannel.setMessageHandler { _, reply in
  142. do {
  143. let result = try api.disconnect()
  144. reply(wrapResult(result))
  145. } catch {
  146. reply(wrapError(error))
  147. }
  148. }
  149. } else {
  150. disconnectChannel.setMessageHandler(nil)
  151. }
  152. let getRemoteIpChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.getRemoteIp\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  153. if let api = api {
  154. getRemoteIpChannel.setMessageHandler { _, reply in
  155. do {
  156. let result = try api.getRemoteIp()
  157. reply(wrapResult(result))
  158. } catch {
  159. reply(wrapError(error))
  160. }
  161. }
  162. } else {
  163. getRemoteIpChannel.setMessageHandler(nil)
  164. }
  165. let getAdvertisingIdChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.getAdvertisingId\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  166. if let api = api {
  167. getAdvertisingIdChannel.setMessageHandler { _, reply in
  168. do {
  169. let result = try api.getAdvertisingId()
  170. reply(wrapResult(result))
  171. } catch {
  172. reply(wrapError(error))
  173. }
  174. }
  175. } else {
  176. getAdvertisingIdChannel.setMessageHandler(nil)
  177. }
  178. let moveTaskToBackChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.moveTaskToBack\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  179. if let api = api {
  180. moveTaskToBackChannel.setMessageHandler { _, reply in
  181. do {
  182. let result = try api.moveTaskToBack()
  183. reply(wrapResult(result))
  184. } catch {
  185. reply(wrapError(error))
  186. }
  187. }
  188. } else {
  189. moveTaskToBackChannel.setMessageHandler(nil)
  190. }
  191. let isConnectedChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.isConnected\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  192. if let api = api {
  193. isConnectedChannel.setMessageHandler { _, reply in
  194. do {
  195. let result = try api.isConnected()
  196. reply(wrapResult(result))
  197. } catch {
  198. reply(wrapError(error))
  199. }
  200. }
  201. } else {
  202. isConnectedChannel.setMessageHandler(nil)
  203. }
  204. let getSimInfoChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.getSimInfo\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  205. if let api = api {
  206. getSimInfoChannel.setMessageHandler { _, reply in
  207. do {
  208. let result = try api.getSimInfo()
  209. reply(wrapResult(result))
  210. } catch {
  211. reply(wrapError(error))
  212. }
  213. }
  214. } else {
  215. getSimInfoChannel.setMessageHandler(nil)
  216. }
  217. let reconnectChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.reconnect\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  218. if let api = api {
  219. reconnectChannel.setMessageHandler { _, reply in
  220. do {
  221. let result = try api.reconnect()
  222. reply(wrapResult(result))
  223. } catch {
  224. reply(wrapError(error))
  225. }
  226. }
  227. } else {
  228. reconnectChannel.setMessageHandler(nil)
  229. }
  230. let getChannelChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.app.xixi.nomo.CoreApi.getChannel\(channelSuffix)", binaryMessenger: binaryMessenger, codec: codec)
  231. if let api = api {
  232. getChannelChannel.setMessageHandler { _, reply in
  233. do {
  234. let result = try api.getChannel()
  235. reply(wrapResult(result))
  236. } catch {
  237. reply(wrapError(error))
  238. }
  239. }
  240. } else {
  241. getChannelChannel.setMessageHandler(nil)
  242. }
  243. }
  244. }
  245. private class PigeonStreamHandler<ReturnType>: NSObject, FlutterStreamHandler {
  246. private let wrapper: PigeonEventChannelWrapper<ReturnType>
  247. private var pigeonSink: PigeonEventSink<ReturnType>? = nil
  248. init(wrapper: PigeonEventChannelWrapper<ReturnType>) {
  249. self.wrapper = wrapper
  250. }
  251. func onListen(withArguments arguments: Any?, eventSink events: @escaping FlutterEventSink)
  252. -> FlutterError?
  253. {
  254. pigeonSink = PigeonEventSink<ReturnType>(events)
  255. wrapper.onListen(withArguments: arguments, sink: pigeonSink!)
  256. return nil
  257. }
  258. func onCancel(withArguments arguments: Any?) -> FlutterError? {
  259. pigeonSink = nil
  260. wrapper.onCancel(withArguments: arguments)
  261. return nil
  262. }
  263. }
  264. class PigeonEventChannelWrapper<ReturnType> {
  265. func onListen(withArguments arguments: Any?, sink: PigeonEventSink<ReturnType>) {}
  266. func onCancel(withArguments arguments: Any?) {}
  267. }
  268. class PigeonEventSink<ReturnType> {
  269. private let sink: FlutterEventSink
  270. init(_ sink: @escaping FlutterEventSink) {
  271. self.sink = sink
  272. }
  273. func success(_ value: ReturnType) {
  274. sink(value)
  275. }
  276. func error(code: String, message: String?, details: Any?) {
  277. sink(FlutterError(code: code, message: message, details: details))
  278. }
  279. func endOfStream() {
  280. sink(FlutterEndOfEventStream)
  281. }
  282. }
  283. class OnEventChangeStreamHandler: PigeonEventChannelWrapper<String> {
  284. static func register(with messenger: FlutterBinaryMessenger,
  285. instanceName: String = "",
  286. streamHandler: OnEventChangeStreamHandler) {
  287. var channelName = "dev.flutter.pigeon.app.xixi.nomo.CoreChangeEventApi.onEventChange"
  288. if !instanceName.isEmpty {
  289. channelName += ".\(instanceName)"
  290. }
  291. let internalStreamHandler = PigeonStreamHandler<String>(wrapper: streamHandler)
  292. let channel = FlutterEventChannel(name: channelName, binaryMessenger: messenger, codec: coreApiPigeonMethodCodec)
  293. channel.setStreamHandler(internalStreamHandler)
  294. }
  295. }