mirror of
https://github.com/logos-messaging/logos-delivery.git
synced 2026-07-22 12:39:30 +00:00
* change all usage of std.options.Option[T] to results.Opt[T] * fix broken apps and examples (to validate refactor) * removed all std/options code added for libp2p v2 migration * add broker Opt codec to persistency/backend_comm.nim * add a readValue overload for Opt[T] in tools/confutils/cli_args.nim * keep Option where required (Presto, confutils' config_file.nim) * Change generateRlnProof error handling * Fix imports
40 lines
1.1 KiB
Nim
40 lines
1.1 KiB
Nim
{.used.}
|
|
|
|
import results, chronos, libp2p/crypto/crypto
|
|
|
|
import
|
|
logos_delivery/waku/[
|
|
node/peer_manager,
|
|
waku_core,
|
|
waku_archive,
|
|
waku_archive/driver/sqlite_driver,
|
|
waku_archive/driver/sqlite_driver/migrations,
|
|
common/databases/db_sqlite,
|
|
],
|
|
../testlib/[wakucore]
|
|
|
|
proc newSqliteDatabase*(path: Opt[string] = Opt.none(string)): SqliteDatabase =
|
|
SqliteDatabase.new(path.get(":memory:")).tryGet()
|
|
|
|
proc newSqliteArchiveDriver*(): ArchiveDriver =
|
|
let database = newSqliteDatabase()
|
|
migrate(database).tryGet()
|
|
return SqliteDriver.new(database).tryGet()
|
|
|
|
proc newWakuArchive*(driver: ArchiveDriver): WakuArchive =
|
|
WakuArchive.new(driver).get()
|
|
|
|
proc put*(
|
|
driver: ArchiveDriver, pubsubTopic: PubSubTopic, msgList: seq[WakuMessage]
|
|
): ArchiveDriver =
|
|
for msg in msgList:
|
|
let _ = waitFor driver.put(computeMessageHash(pubsubTopic, msg), pubsubTopic, msg)
|
|
return driver
|
|
|
|
proc newArchiveDriverWithMessages*(
|
|
pubsubTopic: PubSubTopic, msgList: seq[WakuMessage]
|
|
): ArchiveDriver =
|
|
var driver = newSqliteArchiveDriver()
|
|
driver = driver.put(pubsubTopic, msgList)
|
|
return driver
|