Implement key caching directly (#1038)

* Use gomatrixserverlib key caching

* Implement key caching wrapper

* Add caching wrapper in BaseComponent

* Review comments
This commit is contained in:
Neil Alexander 2020-05-15 09:32:40 +01:00 committed by GitHub
parent 7ca230e931
commit 419ff150d4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 108 additions and 27 deletions

View file

@ -4,9 +4,12 @@ import "github.com/matrix-org/gomatrixserverlib"
const (
RoomVersionMaxCacheEntries = 128
ServerKeysMaxCacheEntries = 128
)
type ImmutableCache interface {
GetRoomVersion(roomId string) (gomatrixserverlib.RoomVersion, bool)
StoreRoomVersion(roomId string, roomVersion gomatrixserverlib.RoomVersion)
GetServerKey(request gomatrixserverlib.PublicKeyLookupRequest) (gomatrixserverlib.PublicKeyLookupResult, bool)
StoreServerKey(request gomatrixserverlib.PublicKeyLookupRequest, response gomatrixserverlib.PublicKeyLookupResult)
}