From a9121177a7f1a5b315f14ab95d12bd3497d258de Mon Sep 17 00:00:00 2001
From: Dariusz Rybicki <dariusz@elixxir.io>
Date: Mon, 25 Jul 2022 16:57:54 +0100
Subject: [PATCH] Add E2EGetAllPartnerIds functor

---
 Sources/ElixxirDAppsSDK/E2E.swift             |  3 +++
 .../ElixxirDAppsSDK/E2EGetAllPartnerIds.swift | 22 +++++++++++++++++++
 2 files changed, 25 insertions(+)
 create mode 100644 Sources/ElixxirDAppsSDK/E2EGetAllPartnerIds.swift

diff --git a/Sources/ElixxirDAppsSDK/E2E.swift b/Sources/ElixxirDAppsSDK/E2E.swift
index 0b820550..f6353308 100644
--- a/Sources/ElixxirDAppsSDK/E2E.swift
+++ b/Sources/ElixxirDAppsSDK/E2E.swift
@@ -6,6 +6,7 @@ public struct E2E {
   public var getHistoricalDHPrivateKey: E2EGetHistoricalDHPrivateKey
   public var getHistoricalDHPublicKey: E2EGetHistoricalDHPublicKey
   public var getContact: E2EGetContact
+  public var getAllPartnerIds: E2EGetAllPartnerIds
   public var payloadSize: E2EPayloadSize
   public var partitionSize: E2EPartitionSize
   public var addPartnerCallback: E2EAddPartnerCallback
@@ -23,6 +24,7 @@ extension E2E {
       getHistoricalDHPrivateKey: .live(bindingsE2E),
       getHistoricalDHPublicKey: .live(bindingsE2E),
       getContact: .live(bindingsE2E),
+      getAllPartnerIds: .live(bindingsE2E),
       payloadSize: .live(bindingsE2E),
       partitionSize: .live(bindingsE2E),
       addPartnerCallback: .live(bindingsE2E),
@@ -39,6 +41,7 @@ extension E2E {
     getHistoricalDHPrivateKey: .unimplemented,
     getHistoricalDHPublicKey: .unimplemented,
     getContact: .unimplemented,
+    getAllPartnerIds: .unimplemented,
     payloadSize: .unimplemented,
     partitionSize: .unimplemented,
     addPartnerCallback: .unimplemented,
diff --git a/Sources/ElixxirDAppsSDK/E2EGetAllPartnerIds.swift b/Sources/ElixxirDAppsSDK/E2EGetAllPartnerIds.swift
new file mode 100644
index 00000000..f4375932
--- /dev/null
+++ b/Sources/ElixxirDAppsSDK/E2EGetAllPartnerIds.swift
@@ -0,0 +1,22 @@
+import Bindings
+import XCTestDynamicOverlay
+
+public struct E2EGetAllPartnerIds {
+  public var run: () throws -> Data
+
+  public func callAsFunction() throws -> Data {
+    try run()
+  }
+}
+
+extension E2EGetAllPartnerIds {
+  public static func live(_ bindingsE2E: BindingsE2e) -> E2EGetAllPartnerIds {
+    E2EGetAllPartnerIds(run: bindingsE2E.getAllPartnerIDs)
+  }
+}
+
+extension E2EGetAllPartnerIds {
+  public static let unimplemented = E2EGetAllPartnerIds(
+    run: XCTUnimplemented("\(Self.self)")
+  )
+}
-- 
GitLab