aboutsummaryrefslogtreecommitdiff
path: root/roomserver/api
diff options
context:
space:
mode:
authorNeil Alexander <neilalexander@users.noreply.github.com>2020-05-01 10:48:17 +0100
committerGitHub <noreply@github.com>2020-05-01 10:48:17 +0100
commite15f6676ac3f76ec2ef679c2df300d6a8e7e668f (patch)
tree0b82339939e8932d46e1ca2cf6024ab55dc7602f /roomserver/api
parentebbfc125920beb321713e28a2a137d768406fa15 (diff)
Consolidation of roomserver APIs (#994)
* Consolidation of roomserver APIs * Comment out alias tests for now, they are broken * Wire AS API into roomserver again * Roomserver didn't take asAPI param before so return to that * Prevent roomserver asking AS API for alias info * Rename some files * Remove alias_test, incoherent tests and unwanted appservice integration * Remove FS API inject on syncapi component
Diffstat (limited to 'roomserver/api')
-rw-r--r--roomserver/api/alias.go64
-rw-r--r--roomserver/api/api.go141
-rw-r--r--roomserver/api/http.go41
-rw-r--r--roomserver/api/input.go41
-rw-r--r--roomserver/api/query.go131
5 files changed, 200 insertions, 218 deletions
diff --git a/roomserver/api/alias.go b/roomserver/api/alias.go
index ad375a83..488e99ab 100644
--- a/roomserver/api/alias.go
+++ b/roomserver/api/alias.go
@@ -16,8 +16,6 @@ package api
import (
"context"
- "errors"
- "net/http"
commonHTTP "github.com/matrix-org/dendrite/common/http"
opentracing "github.com/opentracing/opentracing-go"
@@ -86,44 +84,6 @@ type RemoveRoomAliasRequest struct {
// RemoveRoomAliasResponse is a response to RemoveRoomAlias
type RemoveRoomAliasResponse struct{}
-// RoomserverAliasAPI is used to save, lookup or remove a room alias
-type RoomserverAliasAPI interface {
- // Set a room alias
- SetRoomAlias(
- ctx context.Context,
- req *SetRoomAliasRequest,
- response *SetRoomAliasResponse,
- ) error
-
- // Get the room ID for an alias
- GetRoomIDForAlias(
- ctx context.Context,
- req *GetRoomIDForAliasRequest,
- response *GetRoomIDForAliasResponse,
- ) error
-
- // Get all known aliases for a room ID
- GetAliasesForRoomID(
- ctx context.Context,
- req *GetAliasesForRoomIDRequest,
- response *GetAliasesForRoomIDResponse,
- ) error
-
- // Get the user ID of the creator of an alias
- GetCreatorIDForAlias(
- ctx context.Context,
- req *GetCreatorIDForAliasRequest,
- response *GetCreatorIDForAliasResponse,
- ) error
-
- // Remove a room alias
- RemoveRoomAlias(
- ctx context.Context,
- req *RemoveRoomAliasRequest,
- response *RemoveRoomAliasResponse,
- ) error
-}
-
// RoomserverSetRoomAliasPath is the HTTP path for the SetRoomAlias API.
const RoomserverSetRoomAliasPath = "/api/roomserver/setRoomAlias"
@@ -139,22 +99,8 @@ const RoomserverGetCreatorIDForAliasPath = "/api/roomserver/GetCreatorIDForAlias
// RoomserverRemoveRoomAliasPath is the HTTP path for the RemoveRoomAlias API.
const RoomserverRemoveRoomAliasPath = "/api/roomserver/removeRoomAlias"
-// NewRoomserverAliasAPIHTTP creates a RoomserverAliasAPI implemented by talking to a HTTP POST API.
-// If httpClient is nil an error is returned
-func NewRoomserverAliasAPIHTTP(roomserverURL string, httpClient *http.Client) (RoomserverAliasAPI, error) {
- if httpClient == nil {
- return nil, errors.New("NewRoomserverAliasAPIHTTP: httpClient is <nil>")
- }
- return &httpRoomserverAliasAPI{roomserverURL, httpClient}, nil
-}
-
-type httpRoomserverAliasAPI struct {
- roomserverURL string
- httpClient *http.Client
-}
-
// SetRoomAlias implements RoomserverAliasAPI
-func (h *httpRoomserverAliasAPI) SetRoomAlias(
+func (h *httpRoomserverInternalAPI) SetRoomAlias(
ctx context.Context,
request *SetRoomAliasRequest,
response *SetRoomAliasResponse,
@@ -167,7 +113,7 @@ func (h *httpRoomserverAliasAPI) SetRoomAlias(
}
// GetRoomIDForAlias implements RoomserverAliasAPI
-func (h *httpRoomserverAliasAPI) GetRoomIDForAlias(
+func (h *httpRoomserverInternalAPI) GetRoomIDForAlias(
ctx context.Context,
request *GetRoomIDForAliasRequest,
response *GetRoomIDForAliasResponse,
@@ -180,7 +126,7 @@ func (h *httpRoomserverAliasAPI) GetRoomIDForAlias(
}
// GetAliasesForRoomID implements RoomserverAliasAPI
-func (h *httpRoomserverAliasAPI) GetAliasesForRoomID(
+func (h *httpRoomserverInternalAPI) GetAliasesForRoomID(
ctx context.Context,
request *GetAliasesForRoomIDRequest,
response *GetAliasesForRoomIDResponse,
@@ -193,7 +139,7 @@ func (h *httpRoomserverAliasAPI) GetAliasesForRoomID(
}
// GetCreatorIDForAlias implements RoomserverAliasAPI
-func (h *httpRoomserverAliasAPI) GetCreatorIDForAlias(
+func (h *httpRoomserverInternalAPI) GetCreatorIDForAlias(
ctx context.Context,
request *GetCreatorIDForAliasRequest,
response *GetCreatorIDForAliasResponse,
@@ -206,7 +152,7 @@ func (h *httpRoomserverAliasAPI) GetCreatorIDForAlias(
}
// RemoveRoomAlias implements RoomserverAliasAPI
-func (h *httpRoomserverAliasAPI) RemoveRoomAlias(
+func (h *httpRoomserverInternalAPI) RemoveRoomAlias(
ctx context.Context,
request *RemoveRoomAliasRequest,
response *RemoveRoomAliasResponse,
diff --git a/roomserver/api/api.go b/roomserver/api/api.go
new file mode 100644
index 00000000..c12dbddd
--- /dev/null
+++ b/roomserver/api/api.go
@@ -0,0 +1,141 @@
+package api
+
+import (
+ "context"
+
+ fsAPI "github.com/matrix-org/dendrite/federationsender/api"
+)
+
+// RoomserverInputAPI is used to write events to the room server.
+type RoomserverInternalAPI interface {
+ // needed to avoid chicken and egg scenario when setting up the
+ // interdependencies between the roomserver and other input APIs
+ SetFederationSenderAPI(fsAPI fsAPI.FederationSenderInternalAPI)
+
+ InputRoomEvents(
+ ctx context.Context,
+ request *InputRoomEventsRequest,
+ response *InputRoomEventsResponse,
+ ) error
+
+ // Query the latest events and state for a room from the room server.
+ QueryLatestEventsAndState(
+ ctx context.Context,
+ request *QueryLatestEventsAndStateRequest,
+ response *QueryLatestEventsAndStateResponse,
+ ) error
+
+ // Query the state after a list of events in a room from the room server.
+ QueryStateAfterEvents(
+ ctx context.Context,
+ request *QueryStateAfterEventsRequest,
+ response *QueryStateAfterEventsResponse,
+ ) error
+
+ // Query a list of events by event ID.
+ QueryEventsByID(
+ ctx context.Context,
+ request *QueryEventsByIDRequest,
+ response *QueryEventsByIDResponse,
+ ) error
+
+ // Query the membership event for an user for a room.
+ QueryMembershipForUser(
+ ctx context.Context,
+ request *QueryMembershipForUserRequest,
+ response *QueryMembershipForUserResponse,
+ ) error
+
+ // Query a list of membership events for a room
+ QueryMembershipsForRoom(
+ ctx context.Context,
+ request *QueryMembershipsForRoomRequest,
+ response *QueryMembershipsForRoomResponse,
+ ) error
+
+ // Query a list of invite event senders for a user in a room.
+ QueryInvitesForUser(
+ ctx context.Context,
+ request *QueryInvitesForUserRequest,
+ response *QueryInvitesForUserResponse,
+ ) error
+
+ // Query whether a server is allowed to see an event
+ QueryServerAllowedToSeeEvent(
+ ctx context.Context,
+ request *QueryServerAllowedToSeeEventRequest,
+ response *QueryServerAllowedToSeeEventResponse,
+ ) error
+
+ // Query missing events for a room from roomserver
+ QueryMissingEvents(
+ ctx context.Context,
+ request *QueryMissingEventsRequest,
+ response *QueryMissingEventsResponse,
+ ) error
+
+ // Query to get state and auth chain for a (potentially hypothetical) event.
+ // Takes lists of PrevEventIDs and AuthEventsIDs and uses them to calculate
+ // the state and auth chain to return.
+ QueryStateAndAuthChain(
+ ctx context.Context,
+ request *QueryStateAndAuthChainRequest,
+ response *QueryStateAndAuthChainResponse,
+ ) error
+
+ // Query a given amount (or less) of events prior to a given set of events.
+ QueryBackfill(
+ ctx context.Context,
+ request *QueryBackfillRequest,
+ response *QueryBackfillResponse,
+ ) error
+
+ // Asks for the default room version as preferred by the server.
+ QueryRoomVersionCapabilities(
+ ctx context.Context,
+ request *QueryRoomVersionCapabilitiesRequest,
+ response *QueryRoomVersionCapabilitiesResponse,
+ ) error
+
+ // Asks for the room version for a given room.
+ QueryRoomVersionForRoom(
+ ctx context.Context,
+ request *QueryRoomVersionForRoomRequest,
+ response *QueryRoomVersionForRoomResponse,
+ ) error
+
+ // Set a room alias
+ SetRoomAlias(
+ ctx context.Context,
+ req *SetRoomAliasRequest,
+ response *SetRoomAliasResponse,
+ ) error
+
+ // Get the room ID for an alias
+ GetRoomIDForAlias(
+ ctx context.Context,
+ req *GetRoomIDForAliasRequest,
+ response *GetRoomIDForAliasResponse,
+ ) error
+
+ // Get all known aliases for a room ID
+ GetAliasesForRoomID(
+ ctx context.Context,
+ req *GetAliasesForRoomIDRequest,
+ response *GetAliasesForRoomIDResponse,
+ ) error
+
+ // Get the user ID of the creator of an alias
+ GetCreatorIDForAlias(
+ ctx context.Context,
+ req *GetCreatorIDForAliasRequest,
+ response *GetCreatorIDForAliasResponse,
+ ) error
+
+ // Remove a room alias
+ RemoveRoomAlias(
+ ctx context.Context,
+ req *RemoveRoomAliasRequest,
+ response *RemoveRoomAliasResponse,
+ ) error
+}
diff --git a/roomserver/api/http.go b/roomserver/api/http.go
new file mode 100644
index 00000000..d643526b
--- /dev/null
+++ b/roomserver/api/http.go
@@ -0,0 +1,41 @@
+package api
+
+import (
+ "errors"
+ "net/http"
+
+ "github.com/matrix-org/dendrite/common/caching"
+ fsInputAPI "github.com/matrix-org/dendrite/federationsender/api"
+)
+
+type httpRoomserverInternalAPI struct {
+ roomserverURL string
+ httpClient *http.Client
+ fsAPI fsInputAPI.FederationSenderInternalAPI
+ immutableCache caching.ImmutableCache
+}
+
+// NewRoomserverInputAPIHTTP creates a RoomserverInputAPI implemented by talking to a HTTP POST API.
+// If httpClient is nil an error is returned
+func NewRoomserverInternalAPIHTTP(
+ roomserverURL string,
+ httpClient *http.Client,
+ //fsInputAPI fsAPI.FederationSenderInternalAPI,
+ immutableCache caching.ImmutableCache,
+) (RoomserverInternalAPI, error) {
+ if httpClient == nil {
+ return nil, errors.New("NewRoomserverInternalAPIHTTP: httpClient is <nil>")
+ }
+ return &httpRoomserverInternalAPI{
+ roomserverURL: roomserverURL,
+ httpClient: httpClient,
+ immutableCache: immutableCache,
+ }, nil
+}
+
+// SetFederationSenderInputAPI passes in a federation sender input API reference
+// so that we can avoid the chicken-and-egg problem of both the roomserver input API
+// and the federation sender input API being interdependent.
+func (h *httpRoomserverInternalAPI) SetFederationSenderAPI(fsAPI fsInputAPI.FederationSenderInternalAPI) {
+ h.fsAPI = fsAPI
+}
diff --git a/roomserver/api/input.go b/roomserver/api/input.go
index d9cffad2..8e8fdae4 100644
--- a/roomserver/api/input.go
+++ b/roomserver/api/input.go
@@ -17,11 +17,8 @@ package api
import (
"context"
- "errors"
- "net/http"
commonHTTP "github.com/matrix-org/dendrite/common/http"
- fsAPI "github.com/matrix-org/dendrite/federationsender/api"
"github.com/matrix-org/gomatrixserverlib"
opentracing "github.com/opentracing/opentracing-go"
)
@@ -105,47 +102,11 @@ type InputRoomEventsResponse struct {
EventID string `json:"event_id"`
}
-// RoomserverInputAPI is used to write events to the room server.
-type RoomserverInputAPI interface {
- // needed to avoid chicken and egg scenario when setting up the
- // interdependencies between the roomserver and the FS input API
- SetFederationSenderAPI(fsInputAPI fsAPI.FederationSenderInternalAPI)
- InputRoomEvents(
- ctx context.Context,
- request *InputRoomEventsRequest,
- response *InputRoomEventsResponse,
- ) error
-}
-
// RoomserverInputRoomEventsPath is the HTTP path for the InputRoomEvents API.
const RoomserverInputRoomEventsPath = "/api/roomserver/inputRoomEvents"
-// NewRoomserverInputAPIHTTP creates a RoomserverInputAPI implemented by talking to a HTTP POST API.
-// If httpClient is nil an error is returned
-func NewRoomserverInputAPIHTTP(roomserverURL string, httpClient *http.Client) (RoomserverInputAPI, error) {
- if httpClient == nil {
- return nil, errors.New("NewRoomserverInputAPIHTTP: httpClient is <nil>")
- }
- return &httpRoomserverInputAPI{roomserverURL, httpClient, nil}, nil
-}
-
-type httpRoomserverInputAPI struct {
- roomserverURL string
- httpClient *http.Client
- // The federation sender API allows us to send federation
- // requests from the new perform input requests, still TODO.
- fsInputAPI fsAPI.FederationSenderInternalAPI
-}
-
-// SetFederationSenderInputAPI passes in a federation sender input API reference
-// so that we can avoid the chicken-and-egg problem of both the roomserver input API
-// and the federation sender input API being interdependent.
-func (h *httpRoomserverInputAPI) SetFederationSenderAPI(fsInputAPI fsAPI.FederationSenderInternalAPI) {
- h.fsInputAPI = fsInputAPI
-}
-
// InputRoomEvents implements RoomserverInputAPI
-func (h *httpRoomserverInputAPI) InputRoomEvents(
+func (h *httpRoomserverInternalAPI) InputRoomEvents(
ctx context.Context,
request *InputRoomEventsRequest,
response *InputRoomEventsResponse,
diff --git a/roomserver/api/query.go b/roomserver/api/query.go
index 11fa5c9c..cb7cbb86 100644
--- a/roomserver/api/query.go
+++ b/roomserver/api/query.go
@@ -18,10 +18,7 @@ package api
import (
"context"
- "errors"
- "net/http"
- "github.com/matrix-org/dendrite/common/caching"
commonHTTP "github.com/matrix-org/dendrite/common/http"
"github.com/matrix-org/gomatrixserverlib"
opentracing "github.com/opentracing/opentracing-go"
@@ -264,95 +261,6 @@ type QueryRoomVersionForRoomResponse struct {
RoomVersion gomatrixserverlib.RoomVersion `json:"room_version"`
}
-// RoomserverQueryAPI is used to query information from the room server.
-type RoomserverQueryAPI interface {
- // Query the latest events and state for a room from the room server.
- QueryLatestEventsAndState(
- ctx context.Context,
- request *QueryLatestEventsAndStateRequest,
- response *QueryLatestEventsAndStateResponse,
- ) error
-
- // Query the state after a list of events in a room from the room server.
- QueryStateAfterEvents(
- ctx context.Context,
- request *QueryStateAfterEventsRequest,
- response *QueryStateAfterEventsResponse,
- ) error
-
- // Query a list of events by event ID.
- QueryEventsByID(
- ctx context.Context,
- request *QueryEventsByIDRequest,
- response *QueryEventsByIDResponse,
- ) error
-
- // Query the membership event for an user for a room.
- QueryMembershipForUser(
- ctx context.Context,
- request *QueryMembershipForUserRequest,
- response *QueryMembershipForUserResponse,
- ) error
-
- // Query a list of membership events for a room
- QueryMembershipsForRoom(
- ctx context.Context,
- request *QueryMembershipsForRoomRequest,
- response *QueryMembershipsForRoomResponse,
- ) error
-
- // Query a list of invite event senders for a user in a room.
- QueryInvitesForUser(
- ctx context.Context,
- request *QueryInvitesForUserRequest,
- response *QueryInvitesForUserResponse,
- ) error
-
- // Query whether a server is allowed to see an event
- QueryServerAllowedToSeeEvent(
- ctx context.Context,
- request *QueryServerAllowedToSeeEventRequest,
- response *QueryServerAllowedToSeeEventResponse,
- ) error
-
- // Query missing events for a room from roomserver
- QueryMissingEvents(
- ctx context.Context,
- request *QueryMissingEventsRequest,
- response *QueryMissingEventsResponse,
- ) error
-
- // Query to get state and auth chain for a (potentially hypothetical) event.
- // Takes lists of PrevEventIDs and AuthEventsIDs and uses them to calculate
- // the state and auth chain to return.
- QueryStateAndAuthChain(
- ctx context.Context,
- request *QueryStateAndAuthChainRequest,
- response *QueryStateAndAuthChainResponse,
- ) error
-
- // Query a given amount (or less) of events prior to a given set of events.
- QueryBackfill(
- ctx context.Context,
- request *QueryBackfillRequest,
- response *QueryBackfillResponse,
- ) error
-
- // Asks for the default room version as preferred by the server.
- QueryRoomVersionCapabilities(
- ctx context.Context,
- request *QueryRoomVersionCapabilitiesRequest,
- response *QueryRoomVersionCapabilitiesResponse,
- ) error
-
- // Asks for the room version for a given room.
- QueryRoomVersionForRoom(
- ctx context.Context,
- request *QueryRoomVersionForRoomRequest,
- response *QueryRoomVersionForRoomResponse,
- ) error
-}
-
// RoomserverQueryLatestEventsAndStatePath is the HTTP path for the QueryLatestEventsAndState API.
const RoomserverQueryLatestEventsAndStatePath = "/api/roomserver/queryLatestEventsAndState"
@@ -389,23 +297,8 @@ const RoomserverQueryRoomVersionCapabilitiesPath = "/api/roomserver/queryRoomVer
// RoomserverQueryRoomVersionForRoomPath is the HTTP path for the QueryRoomVersionForRoom API
const RoomserverQueryRoomVersionForRoomPath = "/api/roomserver/queryRoomVersionForRoom"
-// NewRoomserverQueryAPIHTTP creates a RoomserverQueryAPI implemented by talking to a HTTP POST API.
-// If httpClient is nil an error is returned
-func NewRoomserverQueryAPIHTTP(roomserverURL string, httpClient *http.Client, cache caching.ImmutableCache) (RoomserverQueryAPI, error) {
- if httpClient == nil {
- return nil, errors.New("NewRoomserverQueryAPIHTTP: httpClient is <nil>")
- }
- return &httpRoomserverQueryAPI{roomserverURL, httpClient, cache}, nil
-}
-
-type httpRoomserverQueryAPI struct {
- roomserverURL string
- httpClient *http.Client
- immutableCache caching.ImmutableCache
-}
-
// QueryLatestEventsAndState implements RoomserverQueryAPI
-func (h *httpRoomserverQueryAPI) QueryLatestEventsAndState(
+func (h *httpRoomserverInternalAPI) QueryLatestEventsAndState(
ctx context.Context,
request *QueryLatestEventsAndStateRequest,
response *QueryLatestEventsAndStateResponse,
@@ -418,7 +311,7 @@ func (h *httpRoomserverQueryAPI) QueryLatestEventsAndState(
}
// QueryStateAfterEvents implements RoomserverQueryAPI
-func (h *httpRoomserverQueryAPI) QueryStateAfterEvents(
+func (h *httpRoomserverInternalAPI) QueryStateAfterEvents(
ctx context.Context,
request *QueryStateAfterEventsRequest,
response *QueryStateAfterEventsResponse,
@@ -431,7 +324,7 @@ func (h *httpRoomserverQueryAPI) QueryStateAfterEvents(
}
// QueryEventsByID implements RoomserverQueryAPI
-func (h *httpRoomserverQueryAPI) QueryEventsByID(
+func (h *httpRoomserverInternalAPI) QueryEventsByID(
ctx context.Context,
request *QueryEventsByIDRequest,
response *QueryEventsByIDResponse,
@@ -444,7 +337,7 @@ func (h *httpRoomserverQueryAPI) QueryEventsByID(
}
// QueryMembershipForUser implements RoomserverQueryAPI
-func (h *httpRoomserverQueryAPI) QueryMembershipForUser(
+func (h *httpRoomserverInternalAPI) QueryMembershipForUser(
ctx context.Context,
request *QueryMembershipForUserRequest,
response *QueryMembershipForUserResponse,
@@ -457,7 +350,7 @@ func (h *httpRoomserverQueryAPI) QueryMembershipForUser(
}
// QueryMembershipsForRoom implements RoomserverQueryAPI
-func (h *httpRoomserverQueryAPI) QueryMembershipsForRoom(
+func (h *httpRoomserverInternalAPI) QueryMembershipsForRoom(
ctx context.Context,
request *QueryMembershipsForRoomRequest,
response *QueryMembershipsForRoomResponse,
@@ -470,7 +363,7 @@ func (h *httpRoomserverQueryAPI) QueryMembershipsForRoom(
}
// QueryInvitesForUser implements RoomserverQueryAPI
-func (h *httpRoomserverQueryAPI) QueryInvitesForUser(
+func (h *httpRoomserverInternalAPI) QueryInvitesForUser(
ctx context.Context,
request *QueryInvitesForUserRequest,
response *QueryInvitesForUserResponse,
@@ -483,7 +376,7 @@ func (h *httpRoomserverQueryAPI) QueryInvitesForUser(
}
// QueryServerAllowedToSeeEvent implements RoomserverQueryAPI
-func (h *httpRoomserverQueryAPI) QueryServerAllowedToSeeEvent(
+func (h *httpRoomserverInternalAPI) QueryServerAllowedToSeeEvent(
ctx context.Context,
request *QueryServerAllowedToSeeEventRequest,
response *QueryServerAllowedToSeeEventResponse,
@@ -496,7 +389,7 @@ func (h *httpRoomserverQueryAPI) QueryServerAllowedToSeeEvent(
}
// QueryMissingEvents implements RoomServerQueryAPI
-func (h *httpRoomserverQueryAPI) QueryMissingEvents(
+func (h *httpRoomserverInternalAPI) QueryMissingEvents(
ctx context.Context,
request *QueryMissingEventsRequest,
response *QueryMissingEventsResponse,
@@ -509,7 +402,7 @@ func (h *httpRoomserverQueryAPI) QueryMissingEvents(
}
// QueryStateAndAuthChain implements RoomserverQueryAPI
-func (h *httpRoomserverQueryAPI) QueryStateAndAuthChain(
+func (h *httpRoomserverInternalAPI) QueryStateAndAuthChain(
ctx context.Context,
request *QueryStateAndAuthChainRequest,
response *QueryStateAndAuthChainResponse,
@@ -522,7 +415,7 @@ func (h *httpRoomserverQueryAPI) QueryStateAndAuthChain(
}
// QueryBackfill implements RoomServerQueryAPI
-func (h *httpRoomserverQueryAPI) QueryBackfill(
+func (h *httpRoomserverInternalAPI) QueryBackfill(
ctx context.Context,
request *QueryBackfillRequest,
response *QueryBackfillResponse,
@@ -535,7 +428,7 @@ func (h *httpRoomserverQueryAPI) QueryBackfill(
}
// QueryRoomVersionCapabilities implements RoomServerQueryAPI
-func (h *httpRoomserverQueryAPI) QueryRoomVersionCapabilities(
+func (h *httpRoomserverInternalAPI) QueryRoomVersionCapabilities(
ctx context.Context,
request *QueryRoomVersionCapabilitiesRequest,
response *QueryRoomVersionCapabilitiesResponse,
@@ -548,7 +441,7 @@ func (h *httpRoomserverQueryAPI) QueryRoomVersionCapabilities(
}
// QueryRoomVersionForRoom implements RoomServerQueryAPI
-func (h *httpRoomserverQueryAPI) QueryRoomVersionForRoom(
+func (h *httpRoomserverInternalAPI) QueryRoomVersionForRoom(
ctx context.Context,
request *QueryRoomVersionForRoomRequest,
response *QueryRoomVersionForRoomResponse,