From 2e40377ddbc970a21b1129b80b9dfe2f4e882a9f Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Fri, 5 Aug 2022 19:47:02 +0100 Subject: [PATCH] Add CMixGetNodeRegistrationStatus functor --- Sources/ElixxirDAppsSDK/CMix/CMix.swift | 3 +++ .../CMixGetNodeRegistrationStatus.swift | 25 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 Sources/ElixxirDAppsSDK/CMix/Functors/CMixGetNodeRegistrationStatus.swift diff --git a/Sources/ElixxirDAppsSDK/CMix/CMix.swift b/Sources/ElixxirDAppsSDK/CMix/CMix.swift index 3cc8d100..5edb9fe0 100644 --- a/Sources/ElixxirDAppsSDK/CMix/CMix.swift +++ b/Sources/ElixxirDAppsSDK/CMix/CMix.swift @@ -6,6 +6,7 @@ public struct CMix { public var makeReceptionIdentity: CMixMakeReceptionIdentity public var makeLegacyReceptionIdentity: CMixMakeLegacyReceptionIdentity public var isHealthy: CMixIsHealthy + public var getNodeRegistrationStatus: CMixGetNodeRegistrationStatus public var hasRunningProcesses: CMixHasRunningProcesses public var networkFollowerStatus: CMixNetworkFollowerStatus public var startNetworkFollower: CMixStartNetworkFollower @@ -25,6 +26,7 @@ extension CMix { makeReceptionIdentity: .live(bindingsCMix), makeLegacyReceptionIdentity: .live(bindingsCMix), isHealthy: .live(bindingsCMix), + getNodeRegistrationStatus: .live(bindingsCMix), hasRunningProcesses: .live(bindingsCMix), networkFollowerStatus: .live(bindingsCMix), startNetworkFollower: .live(bindingsCMix), @@ -45,6 +47,7 @@ extension CMix { makeReceptionIdentity: .unimplemented, makeLegacyReceptionIdentity: .unimplemented, isHealthy: .unimplemented, + getNodeRegistrationStatus: .unimplemented, hasRunningProcesses: .unimplemented, networkFollowerStatus: .unimplemented, startNetworkFollower: .unimplemented, diff --git a/Sources/ElixxirDAppsSDK/CMix/Functors/CMixGetNodeRegistrationStatus.swift b/Sources/ElixxirDAppsSDK/CMix/Functors/CMixGetNodeRegistrationStatus.swift new file mode 100644 index 00000000..612b68a6 --- /dev/null +++ b/Sources/ElixxirDAppsSDK/CMix/Functors/CMixGetNodeRegistrationStatus.swift @@ -0,0 +1,25 @@ +import Bindings +import XCTestDynamicOverlay + +public struct CMixGetNodeRegistrationStatus { + public var run: () throws -> NodeRegistrationReport + + public func callAsFunction() throws -> NodeRegistrationReport { + try run() + } +} + +extension CMixGetNodeRegistrationStatus { + public static func live(_ bindingsCMix: BindingsCmix) -> CMixGetNodeRegistrationStatus { + CMixGetNodeRegistrationStatus { + let data = try bindingsCMix.getNodeRegistrationStatus() + return try NodeRegistrationReport.decode(data) + } + } +} + +extension CMixGetNodeRegistrationStatus { + public static let unimplemented = CMixGetNodeRegistrationStatus( + run: XCTUnimplemented("\(Self.self)") + ) +} -- GitLab