From 786f12f311ad1e36c188bd027a190db02dab0d33 Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Thu, 21 Jul 2022 17:42:31 +0100 Subject: [PATCH] Add CmixNetworkFollowerStatus functor --- Sources/ElixxirDAppsSDK/Cmix.swift | 9 +++++-- .../CmixNetworkFollowerStatus.swift | 26 +++++++++++++++++++ .../{Legacy => }/NetworkFollowerStatus.swift | 0 3 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 Sources/ElixxirDAppsSDK/CmixNetworkFollowerStatus.swift rename Sources/ElixxirDAppsSDK/{Legacy => }/NetworkFollowerStatus.swift (100%) diff --git a/Sources/ElixxirDAppsSDK/Cmix.swift b/Sources/ElixxirDAppsSDK/Cmix.swift index 5a8ace4b..a0bcced7 100644 --- a/Sources/ElixxirDAppsSDK/Cmix.swift +++ b/Sources/ElixxirDAppsSDK/Cmix.swift @@ -5,6 +5,7 @@ public struct Cmix { public var makeReceptionIdentity: MakeReceptionIdentity public var isHealthy: CmixIsHealthy public var hasRunningProcesses: CmixHasRunningProcesses + public var networkFollowerStatus: CmixNetworkFollowerStatus } extension Cmix { @@ -12,7 +13,9 @@ extension Cmix { Cmix( getId: .live(bindingsCmix), makeReceptionIdentity: .live(bindingsCmix), - isHealthy: .live(bindingsCmix) + isHealthy: .live(bindingsCmix), + hasRunningProcesses: .live(bindingsCmix), + networkFollowerStatus: .live(bindingsCmix) ) } } @@ -21,6 +24,8 @@ extension Cmix { public static let unimplemented = Cmix( getId: .unimplemented, makeReceptionIdentity: .unimplemented, - isHealthy: .unimplemented + isHealthy: .unimplemented, + hasRunningProcesses: .unimplemented, + networkFollowerStatus: .unimplemented ) } diff --git a/Sources/ElixxirDAppsSDK/CmixNetworkFollowerStatus.swift b/Sources/ElixxirDAppsSDK/CmixNetworkFollowerStatus.swift new file mode 100644 index 00000000..53857634 --- /dev/null +++ b/Sources/ElixxirDAppsSDK/CmixNetworkFollowerStatus.swift @@ -0,0 +1,26 @@ +import Bindings +import XCTestDynamicOverlay + +public struct CmixNetworkFollowerStatus { + public var run: () -> NetworkFollowerStatus + + public func callAsFunction() -> NetworkFollowerStatus { + run() + } +} + +extension CmixNetworkFollowerStatus { + public static func live(_ bindingsCmix: BindingsCmix) -> CmixNetworkFollowerStatus { + CmixNetworkFollowerStatus { + NetworkFollowerStatus( + rawValue: bindingsCmix.networkFollowerStatus() + ) + } + } +} + +extension CmixNetworkFollowerStatus { + public static let unimplemented = CmixNetworkFollowerStatus( + run: XCTUnimplemented("\(Self.self)") + ) +} diff --git a/Sources/ElixxirDAppsSDK/Legacy/NetworkFollowerStatus.swift b/Sources/ElixxirDAppsSDK/NetworkFollowerStatus.swift similarity index 100% rename from Sources/ElixxirDAppsSDK/Legacy/NetworkFollowerStatus.swift rename to Sources/ElixxirDAppsSDK/NetworkFollowerStatus.swift -- GitLab