From 36e47fda0d6f5471b5e4c79fd667fbe11c29c605 Mon Sep 17 00:00:00 2001 From: Gabriel mermelstein Date: Thu, 12 Jun 2025 11:40:50 +0200 Subject: [PATCH] logs --- library/libsds.nim | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/library/libsds.nim b/library/libsds.nim index 90d3b83..42a2456 100644 --- a/library/libsds.nim +++ b/library/libsds.nim @@ -35,27 +35,32 @@ template checkLibsdsParams*( return RET_MISSING_CALLBACK template callEventCallback(ctx: ptr SdsContext, eventName: string, body: untyped) = + echo "------------- callEventCallback 1" if isNil(ctx[].eventCallback): error eventName & " - eventCallback is nil" return + echo "------------- callEventCallback 2" if isNil(ctx[].eventUserData): error eventName & " - eventUserData is nil" return foreignThreadGc: try: + echo "------------- callEventCallback 3" let event = body cast[SdsCallBack](ctx[].eventCallback)( RET_OK, unsafeAddr event[0], cast[csize_t](len(event)), ctx[].eventUserData ) except Exception, CatchableError: + echo "------------- callEventCallback 4" let msg = "Exception " & eventName & " when calling 'eventCallBack': " & getCurrentExceptionMsg() cast[SdsCallBack](ctx[].eventCallback)( RET_ERR, unsafeAddr msg[0], cast[csize_t](len(msg)), ctx[].eventUserData ) + echo "------------- callEventCallback 5" proc handleRequest( ctx: ptr SdsContext, @@ -64,11 +69,15 @@ proc handleRequest( callback: SdsCallBack, userData: pointer, ): cint = + echo "---------------- handleRequest 1" sds_thread.sendRequestToSdsThread(ctx, requestType, content, callback, userData).isOkOr: + echo "---------------- handleRequest 2" let msg = "libsds error: " & $error callback(RET_ERR, unsafeAddr msg[0], cast[csize_t](len(msg)), userData) + echo "---------------- handleRequest 3" return RET_ERR + echo "---------------- handleRequest 4" return RET_OK proc onMessageReady(ctx: ptr SdsContext): MessageReadyCallback = @@ -133,6 +142,7 @@ proc initializeLibrary() {.exported.} = proc NewReliabilityManager( channelId: cstring, callback: SdsCallBack, userData: pointer ): pointer {.dynlib, exportc, cdecl.} = + echo "------------- NewReliabilityManager 1" initializeLibrary() ## Creates a new instance of the Reliability Manager. @@ -173,6 +183,7 @@ proc NewReliabilityManager( proc SetEventCallback( ctx: ptr SdsContext, callback: SdsCallBack, userData: pointer ) {.dynlib, exportc.} = + echo "------------- SetEventCallback 1" initializeLibrary() ctx[].eventCallback = cast[pointer](callback) ctx[].eventUserData = userData @@ -180,6 +191,7 @@ proc SetEventCallback( proc CleanupReliabilityManager( ctx: ptr SdsContext, callback: SdsCallBack, userData: pointer ): cint {.dynlib, exportc.} = + echo "------------- CleanupReliabilityManager 1" initializeLibrary() checkLibsdsParams(ctx, callback, userData) @@ -196,6 +208,7 @@ proc CleanupReliabilityManager( proc ResetReliabilityManager( ctx: ptr SdsContext, callback: SdsCallBack, userData: pointer ): cint {.dynlib, exportc.} = + echo "------------- ResetReliabilityManager 1" initializeLibrary() checkLibsdsParams(ctx, callback, userData) handleRequest( @@ -214,19 +227,25 @@ proc WrapOutgoingMessage( callback: SdsCallBack, userData: pointer, ): cint {.dynlib, exportc.} = + echo "------------- WrapOutgoingMessage 1" initializeLibrary() + echo "------------- WrapOutgoingMessage 2" checkLibsdsParams(ctx, callback, userData) + echo "------------- WrapOutgoingMessage 3" if message == nil and messageLen > 0: + echo "------------- WrapOutgoingMessage 4" let msg = "libsds error: " & "message pointer is NULL but length > 0" callback(RET_ERR, unsafeAddr msg[0], cast[csize_t](len(msg)), userData) return RET_ERR if messageId == nil: + echo "------------- WrapOutgoingMessage 5" let msg = "libsds error: " & "message ID pointer is NULL" callback(RET_ERR, unsafeAddr msg[0], cast[csize_t](len(msg)), userData) return RET_ERR + echo "------------- WrapOutgoingMessage 6" handleRequest( ctx, RequestType.MESSAGE, @@ -244,14 +263,19 @@ proc UnwrapReceivedMessage( callback: SdsCallBack, userData: pointer, ): cint {.dynlib, exportc.} = + echo "------------- UnwrapReceivedMessage 1" initializeLibrary() + echo "------------- UnwrapReceivedMessage 2" checkLibsdsParams(ctx, callback, userData) + echo "------------- UnwrapReceivedMessage 3" if message == nil and messageLen > 0: + echo "------------- UnwrapReceivedMessage 4" let msg = "libsds error: " & "message pointer is NULL but length > 0" callback(RET_ERR, unsafeAddr msg[0], cast[csize_t](len(msg)), userData) return RET_ERR + echo "------------- UnwrapReceivedMessage 5" handleRequest( ctx, RequestType.MESSAGE, @@ -272,11 +296,14 @@ proc MarkDependenciesMet( initializeLibrary() checkLibsdsParams(ctx, callback, userData) + echo "------------- MarkDependenciesMet 1" if messageIds == nil and count > 0: + echo "------------- MarkDependenciesMet 2" let msg = "libsds error: " & "MessageIDs pointer is NULL but count > 0" callback(RET_ERR, unsafeAddr msg[0], cast[csize_t](len(msg)), userData) return RET_ERR + echo "------------- MarkDependenciesMet 3" handleRequest( ctx, RequestType.DEPENDENCIES, @@ -290,8 +317,11 @@ proc MarkDependenciesMet( proc StartPeriodicTasks( ctx: ptr SdsContext, callback: SdsCallBack, userData: pointer ): cint {.dynlib, exportc.} = + echo "------------- StartPeriodicTasks 1" initializeLibrary() + echo "------------- StartPeriodicTasks 2" checkLibsdsParams(ctx, callback, userData) + echo "------------- StartPeriodicTasks 3" handleRequest( ctx, RequestType.LIFECYCLE,