MCPcopy Create free account
hub / github.com/daodst/chat / Inputer

Struct Inputer

roomserver/internal/input/input.go:72–89  ·  view source on GitHub ↗

Inputer is responsible for consuming from the roomserver input streams and processing the events. All input events are queued into a single NATS stream and the order is preserved strictly. The `room_id` message header will contain the room ID which will be used to assign the pending event to a per-r

Source from the content-addressed store, hash-verified

70// up, so they will do nothing until a new event comes in for B
71// or C.
72type Inputer struct {
73 Cfg *config.RoomServer
74 Base *base.BaseDendrite
75 ProcessContext *process.ProcessContext
76 DB storage.Database
77 NATSClient *nats.Conn
78 JetStream nats.JetStreamContext
79 Durable nats.SubOpt
80 ServerName gomatrixserverlib.ServerName
81 FSAPI fedapi.RoomserverFederationAPI
82 KeyRing gomatrixserverlib.JSONVerifier
83 ACLs *acls.ServerACLs
84 InputRoomEventTopic string
85 OutputProducer *producers.RoomEventProducer
86 workers sync.Map // room ID -> *worker
87
88 Queryer *query.Queryer
89}
90
91type worker struct {
92 phony.Inbox

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected