45 lines
1.1 KiB
Nim
45 lines
1.1 KiB
Nim
# SPDX-FileCopyrightText: ☭ Emery Hemingway
|
|
# SPDX-License-Identifier: Unlicense
|
|
|
|
## Syndicate multitool.
|
|
|
|
import syndicate, syndicate/relays, syndicate/actors/timers
|
|
|
|
const
|
|
withPostgre* {.booldefine.}: bool = true
|
|
withSqlite* {.booldefine.}: bool = true
|
|
|
|
import ./syndesizer/[
|
|
cache_actor,
|
|
file_system_usage,
|
|
json_socket_translator,
|
|
json_translator,
|
|
pulses,
|
|
webhooks,
|
|
websockets,
|
|
xml_translator,
|
|
xslt_actor]
|
|
|
|
when withPostgre:
|
|
import ./syndesizer/postgre_actor
|
|
|
|
when withSqlite:
|
|
import ./syndesizer/sqlite_actor
|
|
|
|
runActor("syndesizer") do (turn: var Turn; root: Cap):
|
|
connectStdio(turn, root)
|
|
discard spawnTimers(turn, root)
|
|
discard spawnCacheActor(turn, root)
|
|
discard spawnFileSystemUsageActor(turn, root)
|
|
discard spawnJsonSocketTranslator(turn, root)
|
|
discard spawnJsonStdioTranslator(turn, root)
|
|
discard spawnPulseActor(turn, root)
|
|
discard spawnWebhookActor(turn, root)
|
|
discard spawnWebsocketActor(turn, root)
|
|
discard spawnXmlTranslator(turn, root)
|
|
discard spawnXsltActor(turn, root)
|
|
when withPostgre:
|
|
discard spawnPostgreActor(turn, root)
|
|
when withSqlite:
|
|
discard spawnSqliteActor(turn, root)
|