Added shared instance for LogsEventHandler

This commit is contained in:
Ebrahim Tahernejad
2024-02-04 19:16:55 +03:30
committed by GitHub
parent 0ce01bf60d
commit e74b472895

View File

@@ -3,6 +3,7 @@ import Combine
import Libcore import Libcore
class LogsEventHandler: NSObject, FlutterPlugin, FlutterStreamHandler, LibboxCommandClientHandlerProtocol { class LogsEventHandler: NSObject, FlutterPlugin, FlutterStreamHandler, LibboxCommandClientHandlerProtocol {
static let shared: LogsEventHandler = LogsEventHandler()
static let name = "\(Bundle.main.serviceIdentifier)/service.logs" static let name = "\(Bundle.main.serviceIdentifier)/service.logs"
private var channel: FlutterEventChannel? private var channel: FlutterEventChannel?
@@ -15,7 +16,7 @@ class LogsEventHandler: NSObject, FlutterPlugin, FlutterStreamHandler, LibboxCom
private var lock: NSLock = NSLock() private var lock: NSLock = NSLock()
public static func register(with registrar: FlutterPluginRegistrar) { public static func register(with registrar: FlutterPluginRegistrar) {
let instance = LogsEventHandler() let instance = LogsEventHandler.shared
instance.channel = FlutterEventChannel(name: Self.name, binaryMessenger: registrar.messenger()) instance.channel = FlutterEventChannel(name: Self.name, binaryMessenger: registrar.messenger())
instance.channel?.setStreamHandler(instance) instance.channel?.setStreamHandler(instance)
} }