mirror of
https://github.com/logos-messaging/nim-sds.git
synced 2026-01-05 15:43:09 +00:00
logs
This commit is contained in:
parent
48d4fac4a0
commit
36e47fda0d
@ -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,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user