From 16490eadc3154a98ec4822192ea223808e415a9b Mon Sep 17 00:00:00 2001 From: Dirk Zimmermann Date: Wed, 1 Sep 2021 13:21:10 +0200 Subject: [PATCH 1/7] Create PEPTransport.h (Objective C) --- src/src/PEPTransport.h | 79 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 src/src/PEPTransport.h diff --git a/src/src/PEPTransport.h b/src/src/PEPTransport.h new file mode 100644 index 0000000..b53c114 --- /dev/null +++ b/src/src/PEPTransport.h @@ -0,0 +1,79 @@ +#import + +@import PEPObjCTypes_macOS; + +@class PEPTransportConfig; +@class PEPSession; +@class PEPTransport; +@class PEPMessage; + +NS_ASSUME_NONNULL_BEGIN + +@protocol PEPCCSendResultDelegate + +- (BOOL)signalSendMessageResultWithTransportID:(PEPCCTransportID)transportID + messageID:(NSString *)messageID + address:(NSString *)address + statusCode:(PEPCCTransportStatusCode *)statusCode + error:(NSError * _Nullable * _Nullable)error; +@end + +@protocol PEPCCIncomingMessageDelegate + +- (BOOL)signalNewIncomingMessageWithTransportID:(PEPCCTransportID)transportID + statusCode:(PEPCCTransportStatusCode *)statusCode + error:(NSError * _Nullable * _Nullable)error; +@end + +@protocol PEPCCStatusChangeDelegate + +- (BOOL)statusChangedWithTransportID:(PEPCCTransportID)transportID + statusCode:(PEPCCTransportStatusCode *)statusCode + error:(NSError * _Nullable * _Nullable)error; +@end + +/// Idea in a nutshell: +/// - Init with callbacks and callbackExecutionType +/// - configure +/// - startup +/// - listen to status changes (e.g. connected aka "PEPCCTransportStatusCodeReady" +/// - use it: +/// - send message +/// - listen to- and handle sendMessageResult (e.g. done sending aka "PEPCCTransportStatusCodeMessageDelivered") +/// - listen to newIncommingMessage delegate +/// - call nextMessage to get it +/// shutdown +@protocol PEPTransport + +- (instancetype)init; + +/// Convenience initializer. +- (_Nullable instancetype)initWithChangeDelegate:(id _Nullable)statusChangeDelegate + signalSendResultDelegate:(id _Nullable)signalSendResultDelegate + signalIncomingMessageDelegate:(id _Nullable)signalIncomingMessageDelegate + callbackExecutionType:(PEPCCCallbackExcecutionType)callbackExecutionType + error:(NSError * _Nullable * _Nullable)error; + +- (BOOL)configure:(PEPTransport * _Nullable)pEptransport + withConfig:(PEPTransportConfig *)config +transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; + +- (BOOL)startup:(PEPTransport * _Nullable)pEptransport +transportStatusCode:(out PEPCCTransportStatusCode*)tsc + error:(NSError * _Nullable * _Nullable)error; + +- (BOOL)shutdown:(PEPTransport * _Nullable)pEptransport +transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; + +- (BOOL)sendMessage:(PEPMessage *)msg pEpSession:(PEPSession * _Nullable)pEpSession +transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; + +- (PEPMessage * _Nullable)nextMessageWithPEPSession:(PEPSession * _Nullable)pEpsession + transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; +@end + +NS_ASSUME_NONNULL_END From 7b411c7a4feb3661960a2ce9c32ee162e0ffa9c8 Mon Sep 17 00:00:00 2001 From: Dirk Zimmermann Date: Wed, 1 Sep 2021 13:23:07 +0200 Subject: [PATCH 2/7] Move it --- src/src/PEPTransport.h | 79 ------------------------------------------ 1 file changed, 79 deletions(-) delete mode 100644 src/src/PEPTransport.h diff --git a/src/src/PEPTransport.h b/src/src/PEPTransport.h deleted file mode 100644 index b53c114..0000000 --- a/src/src/PEPTransport.h +++ /dev/null @@ -1,79 +0,0 @@ -#import - -@import PEPObjCTypes_macOS; - -@class PEPTransportConfig; -@class PEPSession; -@class PEPTransport; -@class PEPMessage; - -NS_ASSUME_NONNULL_BEGIN - -@protocol PEPCCSendResultDelegate - -- (BOOL)signalSendMessageResultWithTransportID:(PEPCCTransportID)transportID - messageID:(NSString *)messageID - address:(NSString *)address - statusCode:(PEPCCTransportStatusCode *)statusCode - error:(NSError * _Nullable * _Nullable)error; -@end - -@protocol PEPCCIncomingMessageDelegate - -- (BOOL)signalNewIncomingMessageWithTransportID:(PEPCCTransportID)transportID - statusCode:(PEPCCTransportStatusCode *)statusCode - error:(NSError * _Nullable * _Nullable)error; -@end - -@protocol PEPCCStatusChangeDelegate - -- (BOOL)statusChangedWithTransportID:(PEPCCTransportID)transportID - statusCode:(PEPCCTransportStatusCode *)statusCode - error:(NSError * _Nullable * _Nullable)error; -@end - -/// Idea in a nutshell: -/// - Init with callbacks and callbackExecutionType -/// - configure -/// - startup -/// - listen to status changes (e.g. connected aka "PEPCCTransportStatusCodeReady" -/// - use it: -/// - send message -/// - listen to- and handle sendMessageResult (e.g. done sending aka "PEPCCTransportStatusCodeMessageDelivered") -/// - listen to newIncommingMessage delegate -/// - call nextMessage to get it -/// shutdown -@protocol PEPTransport - -- (instancetype)init; - -/// Convenience initializer. -- (_Nullable instancetype)initWithChangeDelegate:(id _Nullable)statusChangeDelegate - signalSendResultDelegate:(id _Nullable)signalSendResultDelegate - signalIncomingMessageDelegate:(id _Nullable)signalIncomingMessageDelegate - callbackExecutionType:(PEPCCCallbackExcecutionType)callbackExecutionType - error:(NSError * _Nullable * _Nullable)error; - -- (BOOL)configure:(PEPTransport * _Nullable)pEptransport - withConfig:(PEPTransportConfig *)config -transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc - error:(NSError * _Nullable * _Nullable)error; - -- (BOOL)startup:(PEPTransport * _Nullable)pEptransport -transportStatusCode:(out PEPCCTransportStatusCode*)tsc - error:(NSError * _Nullable * _Nullable)error; - -- (BOOL)shutdown:(PEPTransport * _Nullable)pEptransport -transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc - error:(NSError * _Nullable * _Nullable)error; - -- (BOOL)sendMessage:(PEPMessage *)msg pEpSession:(PEPSession * _Nullable)pEpSession -transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc - error:(NSError * _Nullable * _Nullable)error; - -- (PEPMessage * _Nullable)nextMessageWithPEPSession:(PEPSession * _Nullable)pEpsession - transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc - error:(NSError * _Nullable * _Nullable)error; -@end - -NS_ASSUME_NONNULL_END From 078849f9390704c88a5f6e0ccddc0e821583e6ab Mon Sep 17 00:00:00 2001 From: Dirk Zimmermann Date: Wed, 1 Sep 2021 13:23:25 +0200 Subject: [PATCH 3/7] Now really --- src/PEPTransport.h | 79 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 src/PEPTransport.h diff --git a/src/PEPTransport.h b/src/PEPTransport.h new file mode 100644 index 0000000..b53c114 --- /dev/null +++ b/src/PEPTransport.h @@ -0,0 +1,79 @@ +#import + +@import PEPObjCTypes_macOS; + +@class PEPTransportConfig; +@class PEPSession; +@class PEPTransport; +@class PEPMessage; + +NS_ASSUME_NONNULL_BEGIN + +@protocol PEPCCSendResultDelegate + +- (BOOL)signalSendMessageResultWithTransportID:(PEPCCTransportID)transportID + messageID:(NSString *)messageID + address:(NSString *)address + statusCode:(PEPCCTransportStatusCode *)statusCode + error:(NSError * _Nullable * _Nullable)error; +@end + +@protocol PEPCCIncomingMessageDelegate + +- (BOOL)signalNewIncomingMessageWithTransportID:(PEPCCTransportID)transportID + statusCode:(PEPCCTransportStatusCode *)statusCode + error:(NSError * _Nullable * _Nullable)error; +@end + +@protocol PEPCCStatusChangeDelegate + +- (BOOL)statusChangedWithTransportID:(PEPCCTransportID)transportID + statusCode:(PEPCCTransportStatusCode *)statusCode + error:(NSError * _Nullable * _Nullable)error; +@end + +/// Idea in a nutshell: +/// - Init with callbacks and callbackExecutionType +/// - configure +/// - startup +/// - listen to status changes (e.g. connected aka "PEPCCTransportStatusCodeReady" +/// - use it: +/// - send message +/// - listen to- and handle sendMessageResult (e.g. done sending aka "PEPCCTransportStatusCodeMessageDelivered") +/// - listen to newIncommingMessage delegate +/// - call nextMessage to get it +/// shutdown +@protocol PEPTransport + +- (instancetype)init; + +/// Convenience initializer. +- (_Nullable instancetype)initWithChangeDelegate:(id _Nullable)statusChangeDelegate + signalSendResultDelegate:(id _Nullable)signalSendResultDelegate + signalIncomingMessageDelegate:(id _Nullable)signalIncomingMessageDelegate + callbackExecutionType:(PEPCCCallbackExcecutionType)callbackExecutionType + error:(NSError * _Nullable * _Nullable)error; + +- (BOOL)configure:(PEPTransport * _Nullable)pEptransport + withConfig:(PEPTransportConfig *)config +transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; + +- (BOOL)startup:(PEPTransport * _Nullable)pEptransport +transportStatusCode:(out PEPCCTransportStatusCode*)tsc + error:(NSError * _Nullable * _Nullable)error; + +- (BOOL)shutdown:(PEPTransport * _Nullable)pEptransport +transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; + +- (BOOL)sendMessage:(PEPMessage *)msg pEpSession:(PEPSession * _Nullable)pEpSession +transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; + +- (PEPMessage * _Nullable)nextMessageWithPEPSession:(PEPSession * _Nullable)pEpsession + transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; +@end + +NS_ASSUME_NONNULL_END From a3ad6d8d7478fa17fe94f4cca4d80d99ddacdbf7 Mon Sep 17 00:00:00 2001 From: Dirk Zimmermann Date: Wed, 1 Sep 2021 13:29:41 +0200 Subject: [PATCH 4/7] Format --- src/PEPTransport.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/PEPTransport.h b/src/PEPTransport.h index b53c114..2dac173 100644 --- a/src/PEPTransport.h +++ b/src/PEPTransport.h @@ -67,7 +67,8 @@ transportStatusCode:(out PEPCCTransportStatusCode*)tsc transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc error:(NSError * _Nullable * _Nullable)error; -- (BOOL)sendMessage:(PEPMessage *)msg pEpSession:(PEPSession * _Nullable)pEpSession +- (BOOL)sendMessage:(PEPMessage *)msg + pEpSession:(PEPSession * _Nullable)pEpSession transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc error:(NSError * _Nullable * _Nullable)error; From e9c0df55d23317384a3288e3bb114bcf7c477cd5 Mon Sep 17 00:00:00 2001 From: Dirk Zimmermann Date: Wed, 1 Sep 2021 13:36:06 +0200 Subject: [PATCH 5/7] Remove CC everywhere --- src/PEPTransport.h | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/src/PEPTransport.h b/src/PEPTransport.h index 2dac173..ac0edb2 100644 --- a/src/PEPTransport.h +++ b/src/PEPTransport.h @@ -9,26 +9,26 @@ NS_ASSUME_NONNULL_BEGIN -@protocol PEPCCSendResultDelegate +@protocol PEPSendResultDelegate -- (BOOL)signalSendMessageResultWithTransportID:(PEPCCTransportID)transportID +- (BOOL)signalSendMessageResultWithTransportID:(PEPTransportID)transportID messageID:(NSString *)messageID address:(NSString *)address - statusCode:(PEPCCTransportStatusCode *)statusCode + statusCode:(PEPTransportStatusCode *)statusCode error:(NSError * _Nullable * _Nullable)error; @end -@protocol PEPCCIncomingMessageDelegate +@protocol PEPIncomingMessageDelegate -- (BOOL)signalNewIncomingMessageWithTransportID:(PEPCCTransportID)transportID - statusCode:(PEPCCTransportStatusCode *)statusCode +- (BOOL)signalNewIncomingMessageWithTransportID:(PEPTransportID)transportID + statusCode:(PEPTransportStatusCode *)statusCode error:(NSError * _Nullable * _Nullable)error; @end -@protocol PEPCCStatusChangeDelegate +@protocol PEPStatusChangeDelegate -- (BOOL)statusChangedWithTransportID:(PEPCCTransportID)transportID - statusCode:(PEPCCTransportStatusCode *)statusCode +- (BOOL)statusChangedWithTransportID:(PEPTransportID)transportID + statusCode:(PEPTransportStatusCode *)statusCode error:(NSError * _Nullable * _Nullable)error; @end @@ -36,10 +36,10 @@ NS_ASSUME_NONNULL_BEGIN /// - Init with callbacks and callbackExecutionType /// - configure /// - startup -/// - listen to status changes (e.g. connected aka "PEPCCTransportStatusCodeReady" +/// - listen to status changes (e.g. connected aka "PEPTransportStatusCodeReady" /// - use it: /// - send message -/// - listen to- and handle sendMessageResult (e.g. done sending aka "PEPCCTransportStatusCodeMessageDelivered") +/// - listen to- and handle sendMessageResult (e.g. done sending aka "PEPTransportStatusCodeMessageDelivered") /// - listen to newIncommingMessage delegate /// - call nextMessage to get it /// shutdown @@ -48,32 +48,32 @@ NS_ASSUME_NONNULL_BEGIN - (instancetype)init; /// Convenience initializer. -- (_Nullable instancetype)initWithChangeDelegate:(id _Nullable)statusChangeDelegate - signalSendResultDelegate:(id _Nullable)signalSendResultDelegate - signalIncomingMessageDelegate:(id _Nullable)signalIncomingMessageDelegate - callbackExecutionType:(PEPCCCallbackExcecutionType)callbackExecutionType +- (_Nullable instancetype)initWithChangeDelegate:(id _Nullable)statusChangeDelegate + signalSendResultDelegate:(id _Nullable)signalSendResultDelegate + signalIncomingMessageDelegate:(id _Nullable)signalIncomingMessageDelegate + callbackExecutionType:(PEPCallbackExcecutionType)callbackExecutionType error:(NSError * _Nullable * _Nullable)error; - (BOOL)configure:(PEPTransport * _Nullable)pEptransport withConfig:(PEPTransportConfig *)config -transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc +transportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc error:(NSError * _Nullable * _Nullable)error; - (BOOL)startup:(PEPTransport * _Nullable)pEptransport -transportStatusCode:(out PEPCCTransportStatusCode*)tsc +transportStatusCode:(out PEPTransportStatusCode*)tsc error:(NSError * _Nullable * _Nullable)error; - (BOOL)shutdown:(PEPTransport * _Nullable)pEptransport -transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc +transportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc error:(NSError * _Nullable * _Nullable)error; - (BOOL)sendMessage:(PEPMessage *)msg pEpSession:(PEPSession * _Nullable)pEpSession -transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc +transportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc error:(NSError * _Nullable * _Nullable)error; - (PEPMessage * _Nullable)nextMessageWithPEPSession:(PEPSession * _Nullable)pEpsession - transportStatusCode:(out PEPCCTransportStatusCode * _Nullable)tsc + transportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc error:(NSError * _Nullable * _Nullable)error; @end From 227304f5e5256f10a3869b03c657f5553db0ef0d Mon Sep 17 00:00:00 2001 From: Dirk Zimmermann Date: Wed, 1 Sep 2021 13:38:46 +0200 Subject: [PATCH 6/7] No PEPSession --- src/PEPTransport.h | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/PEPTransport.h b/src/PEPTransport.h index ac0edb2..cb2de61 100644 --- a/src/PEPTransport.h +++ b/src/PEPTransport.h @@ -3,7 +3,6 @@ @import PEPObjCTypes_macOS; @class PEPTransportConfig; -@class PEPSession; @class PEPTransport; @class PEPMessage; @@ -68,13 +67,11 @@ transportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc error:(NSError * _Nullable * _Nullable)error; - (BOOL)sendMessage:(PEPMessage *)msg - pEpSession:(PEPSession * _Nullable)pEpSession transportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc error:(NSError * _Nullable * _Nullable)error; -- (PEPMessage * _Nullable)nextMessageWithPEPSession:(PEPSession * _Nullable)pEpsession - transportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc - error:(NSError * _Nullable * _Nullable)error; +- (PEPMessage * _Nullable)nextMessageWithTransportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc + error:(NSError * _Nullable * _Nullable)error; @end NS_ASSUME_NONNULL_END From 7ea5738b0eb63fd8e583a5f935cc50188c43f1d4 Mon Sep 17 00:00:00 2001 From: Dirk Zimmermann Date: Wed, 1 Sep 2021 13:56:39 +0200 Subject: [PATCH 7/7] Re-insert notify --- src/PEPTransport.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/PEPTransport.h b/src/PEPTransport.h index cb2de61..fadb5e2 100644 --- a/src/PEPTransport.h +++ b/src/PEPTransport.h @@ -53,6 +53,12 @@ NS_ASSUME_NONNULL_BEGIN callbackExecutionType:(PEPCallbackExcecutionType)callbackExecutionType error:(NSError * _Nullable * _Nullable)error; +- (BOOL)notifyWithChangeDelegate:(id _Nullable)statusChangeDelegate + signalSendResultDelegate:(id _Nullable)signalSendResultDelegate + signalIncomingMessageDelegate:(id _Nullable)signalIncomingMessageDelegate + callbackExecutionType:(PEPCallbackExcecutionType)callbackExecutionType + error:(NSError * _Nullable * _Nullable)error; + - (BOOL)configure:(PEPTransport * _Nullable)pEptransport withConfig:(PEPTransportConfig *)config transportStatusCode:(out PEPTransportStatusCode * _Nullable)tsc