Use PDU interface (#3070)

We only use it in a few places currently, enough to get things to
compile and run. We should be using it in much more places.

Similarly, in some places we cast []PDU back to []*Event, we need to not
do that. Likewise, in some places we cast PDU to *Event, we need to not
do that. For now though, hopefully this is a start.
This commit is contained in:
kegsay 2023-04-27 16:35:19 +01:00 committed by GitHub
parent c6457cd4e5
commit 6171310307
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
23 changed files with 96 additions and 77 deletions

View file

@ -279,13 +279,13 @@ func (p *PDUStreamProvider) addRoomDeltaToResponse(
hisVisMap[re.EventID()] = re.Visibility
}
recEvents := gomatrixserverlib.HeaderedReverseTopologicalOrdering(
toEvents(snapshot.StreamEventsToEvents(device, recentStreamEvents)),
gomatrixserverlib.ToPDUs(toEvents(snapshot.StreamEventsToEvents(device, recentStreamEvents))),
gomatrixserverlib.TopologicalOrderByPrevEvents,
)
recentEvents := make([]*rstypes.HeaderedEvent, len(recEvents))
for i := range recEvents {
recentEvents[i] = &rstypes.HeaderedEvent{
Event: recEvents[i],
Event: recEvents[i].(*gomatrixserverlib.Event),
Visibility: hisVisMap[recEvents[i].EventID()],
}
}
@ -358,13 +358,13 @@ func (p *PDUStreamProvider) addRoomDeltaToResponse(
hisVisMap[re.EventID()] = re.Visibility
}
sEvents := gomatrixserverlib.HeaderedReverseTopologicalOrdering(
toEvents(removeDuplicates(delta.StateEvents, events)),
gomatrixserverlib.ToPDUs(toEvents(removeDuplicates(delta.StateEvents, events))),
gomatrixserverlib.TopologicalOrderByAuthEvents,
)
delta.StateEvents = make([]*rstypes.HeaderedEvent, len(sEvents))
for i := range sEvents {
delta.StateEvents[i] = &rstypes.HeaderedEvent{
Event: sEvents[i],
Event: sEvents[i].(*gomatrixserverlib.Event),
Visibility: hisVisMap[sEvents[i].EventID()],
}
}