diff options
author | Neil Alexander <neilalexander@users.noreply.github.com> | 2020-06-05 16:42:01 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-05 16:42:01 +0100 |
commit | e7b19d2c70be49f3c995a9bfd9dd93ce767d960f (patch) | |
tree | 0ff8734c896530843537c4c58421964cf89f020d /roomserver | |
parent | 76ff47c0522e03eabd72140bf62e1d0d1d1029e0 (diff) |
More flexible caching (#1101)
Diffstat (limited to 'roomserver')
-rw-r--r-- | roomserver/internal/api.go | 2 | ||||
-rw-r--r-- | roomserver/internal/query.go | 4 | ||||
-rw-r--r-- | roomserver/inthttp/client.go | 18 | ||||
-rw-r--r-- | roomserver/roomserver.go | 2 |
4 files changed, 13 insertions, 13 deletions
diff --git a/roomserver/internal/api.go b/roomserver/internal/api.go index 3a7b0d76..37a8a39b 100644 --- a/roomserver/internal/api.go +++ b/roomserver/internal/api.go @@ -16,7 +16,7 @@ type RoomserverInternalAPI struct { DB storage.Database Cfg *config.Dendrite Producer sarama.SyncProducer - ImmutableCache caching.ImmutableCache + Cache caching.RoomVersionCache ServerName gomatrixserverlib.ServerName KeyRing gomatrixserverlib.JSONVerifier FedClient *gomatrixserverlib.FederationClient diff --git a/roomserver/internal/query.go b/roomserver/internal/query.go index fce2ae90..9fb67e7e 100644 --- a/roomserver/internal/query.go +++ b/roomserver/internal/query.go @@ -951,7 +951,7 @@ func (r *RoomserverInternalAPI) QueryRoomVersionForRoom( request *api.QueryRoomVersionForRoomRequest, response *api.QueryRoomVersionForRoomResponse, ) error { - if roomVersion, ok := r.ImmutableCache.GetRoomVersion(request.RoomID); ok { + if roomVersion, ok := r.Cache.GetRoomVersion(request.RoomID); ok { response.RoomVersion = roomVersion return nil } @@ -961,6 +961,6 @@ func (r *RoomserverInternalAPI) QueryRoomVersionForRoom( return err } response.RoomVersion = roomVersion - r.ImmutableCache.StoreRoomVersion(request.RoomID, response.RoomVersion) + r.Cache.StoreRoomVersion(request.RoomID, response.RoomVersion) return nil } diff --git a/roomserver/inthttp/client.go b/roomserver/inthttp/client.go index 99db9e1e..5cc2537e 100644 --- a/roomserver/inthttp/client.go +++ b/roomserver/inthttp/client.go @@ -43,9 +43,9 @@ const ( ) type httpRoomserverInternalAPI struct { - roomserverURL string - httpClient *http.Client - immutableCache caching.ImmutableCache + roomserverURL string + httpClient *http.Client + cache caching.RoomVersionCache } // NewRoomserverClient creates a RoomserverInputAPI implemented by talking to a HTTP POST API. @@ -53,15 +53,15 @@ type httpRoomserverInternalAPI struct { func NewRoomserverClient( roomserverURL string, httpClient *http.Client, - immutableCache caching.ImmutableCache, + cache caching.RoomVersionCache, ) (api.RoomserverInternalAPI, error) { if httpClient == nil { return nil, errors.New("NewRoomserverInternalAPIHTTP: httpClient is <nil>") } return &httpRoomserverInternalAPI{ - roomserverURL: roomserverURL, - httpClient: httpClient, - immutableCache: immutableCache, + roomserverURL: roomserverURL, + httpClient: httpClient, + cache: cache, }, nil } @@ -320,7 +320,7 @@ func (h *httpRoomserverInternalAPI) QueryRoomVersionForRoom( request *api.QueryRoomVersionForRoomRequest, response *api.QueryRoomVersionForRoomResponse, ) error { - if roomVersion, ok := h.immutableCache.GetRoomVersion(request.RoomID); ok { + if roomVersion, ok := h.cache.GetRoomVersion(request.RoomID); ok { response.RoomVersion = roomVersion return nil } @@ -331,7 +331,7 @@ func (h *httpRoomserverInternalAPI) QueryRoomVersionForRoom( apiURL := h.roomserverURL + RoomserverQueryRoomVersionForRoomPath err := internalHTTP.PostJSON(ctx, span, h.httpClient, apiURL, request, response) if err == nil { - h.immutableCache.StoreRoomVersion(request.RoomID, response.RoomVersion) + h.cache.StoreRoomVersion(request.RoomID, response.RoomVersion) } return err } diff --git a/roomserver/roomserver.go b/roomserver/roomserver.go index ae0b0794..a55b20be 100644 --- a/roomserver/roomserver.go +++ b/roomserver/roomserver.go @@ -44,7 +44,7 @@ func SetupRoomServerComponent( Cfg: base.Cfg, Producer: base.KafkaProducer, OutputRoomEventTopic: string(base.Cfg.Kafka.Topics.OutputRoomEvent), - ImmutableCache: base.ImmutableCache, + Cache: base.Caches, ServerName: base.Cfg.Matrix.ServerName, FedClient: fedClient, KeyRing: keyRing, |