chore: rearrange helper funcs

This commit is contained in:
shash256 2025-07-25 12:37:26 +05:30
parent b69164da17
commit 7105874c07
2 changed files with 22 additions and 22 deletions

View File

@ -33,24 +33,3 @@ const
DefaultSyncMessageInterval* = initDuration(seconds = 30)
DefaultBufferSweepInterval* = initDuration(seconds = 60)
MaxMessageSize* = 1024 * 1024 # 1 MB
# Helper functions for HistoryEntry
proc newHistoryEntry*(messageId: SdsMessageID, retrievalHint: seq[byte] = @[]): HistoryEntry =
## Creates a new HistoryEntry with optional retrieval hint
HistoryEntry(messageId: messageId, retrievalHint: retrievalHint)
proc newHistoryEntry*(messageId: SdsMessageID, retrievalHint: string): HistoryEntry =
## Creates a new HistoryEntry with string retrieval hint
HistoryEntry(messageId: messageId, retrievalHint: cast[seq[byte]](retrievalHint))
proc toCausalHistory*(messageIds: seq[SdsMessageID]): seq[HistoryEntry] =
## Converts a sequence of message IDs to HistoryEntry sequence (for backward compatibility)
result = newSeq[HistoryEntry](messageIds.len)
for i, msgId in messageIds:
result[i] = newHistoryEntry(msgId)
proc getMessageIds*(causalHistory: seq[HistoryEntry]): seq[SdsMessageID] =
## Extracts message IDs from HistoryEntry sequence
result = newSeq[SdsMessageID](causalHistory.len)
for i, entry in causalHistory:
result[i] = entry.messageId

View File

@ -124,6 +124,27 @@ proc updateLamportTimestamp*(
error "Failed to update lamport timestamp",
channelId = channelId, msgTs = msgTs, error = getCurrentExceptionMsg()
# Helper functions for HistoryEntry
proc newHistoryEntry*(messageId: SdsMessageID, retrievalHint: seq[byte] = @[]): HistoryEntry =
## Creates a new HistoryEntry with optional retrieval hint
HistoryEntry(messageId: messageId, retrievalHint: retrievalHint)
proc newHistoryEntry*(messageId: SdsMessageID, retrievalHint: string): HistoryEntry =
## Creates a new HistoryEntry with string retrieval hint
HistoryEntry(messageId: messageId, retrievalHint: cast[seq[byte]](retrievalHint))
proc toCausalHistory*(messageIds: seq[SdsMessageID]): seq[HistoryEntry] =
## Converts a sequence of message IDs to HistoryEntry sequence
result = newSeq[HistoryEntry](messageIds.len)
for i, msgId in messageIds:
result[i] = newHistoryEntry(msgId)
proc getMessageIds*(causalHistory: seq[HistoryEntry]): seq[SdsMessageID] =
## Extracts message IDs from HistoryEntry sequence
result = newSeq[SdsMessageID](causalHistory.len)
for i, entry in causalHistory:
result[i] = entry.messageId
proc getRecentHistoryEntries*(
rm: ReliabilityManager, n: int, channelId: SdsChannelID
): seq[HistoryEntry] =
@ -265,4 +286,4 @@ proc removeChannel*(
except Exception:
error "Failed to remove channel",
channelId = channelId, msg = getCurrentExceptionMsg()
return err(ReliabilityError.reInternalError)
return err(ReliabilityError.reInternalError)