aboutsummaryrefslogtreecommitdiff
path: root/federationapi
diff options
context:
space:
mode:
authorkegsay <kegan@matrix.org>2023-05-03 10:21:27 +0100
committerGitHub <noreply@github.com>2023-05-03 10:21:27 +0100
commit6284790f986b922877895a3db31ca2723509dbf9 (patch)
treef9426d8be7004aa33ed9dc75ab483af484f96d83 /federationapi
parent9b98e5a10282dbf594f46a41baa21191b2d2b8f6 (diff)
Use PDU in even more places (#3074)
- No longer rely on *Event returning from NewEventFrom... functions Requires https://github.com/matrix-org/gomatrixserverlib/pull/377
Diffstat (limited to 'federationapi')
-rw-r--r--federationapi/api/servers.go12
-rw-r--r--federationapi/federationapi.go3
-rw-r--r--federationapi/federationapi_test.go2
-rw-r--r--federationapi/routing/profile_test.go2
-rw-r--r--federationapi/routing/query_test.go2
-rw-r--r--federationapi/routing/routing.go4
-rw-r--r--federationapi/routing/send.go2
-rw-r--r--federationapi/routing/send_test.go2
-rw-r--r--federationapi/routing/threepid.go4
9 files changed, 8 insertions, 25 deletions
diff --git a/federationapi/api/servers.go b/federationapi/api/servers.go
deleted file mode 100644
index ff4dc6c9..00000000
--- a/federationapi/api/servers.go
+++ /dev/null
@@ -1,12 +0,0 @@
-package api
-
-import (
- "context"
-
- "github.com/matrix-org/gomatrixserverlib"
- "github.com/matrix-org/gomatrixserverlib/spec"
-)
-
-type ServersInRoomProvider interface {
- GetServersForRoom(ctx context.Context, roomID string, event *gomatrixserverlib.Event) []spec.ServerName
-}
diff --git a/federationapi/federationapi.go b/federationapi/federationapi.go
index 14448383..ee15a8a6 100644
--- a/federationapi/federationapi.go
+++ b/federationapi/federationapi.go
@@ -53,7 +53,6 @@ func AddPublicRoutes(
keyRing gomatrixserverlib.JSONVerifier,
rsAPI roomserverAPI.FederationRoomserverAPI,
fedAPI federationAPI.FederationInternalAPI,
- servers federationAPI.ServersInRoomProvider,
enableMetrics bool,
) {
cfg := &dendriteConfig.FederationAPI
@@ -87,7 +86,7 @@ func AddPublicRoutes(
dendriteConfig,
rsAPI, f, keyRing,
federation, userAPI, mscCfg,
- servers, producer, enableMetrics,
+ producer, enableMetrics,
)
}
diff --git a/federationapi/federationapi_test.go b/federationapi/federationapi_test.go
index c21e7ecb..aa96dacc 100644
--- a/federationapi/federationapi_test.go
+++ b/federationapi/federationapi_test.go
@@ -313,7 +313,7 @@ func TestRoomsV3URLEscapeDoNot404(t *testing.T) {
natsInstance := jetstream.NATSInstance{}
// TODO: This is pretty fragile, as if anything calls anything on these nils this test will break.
// Unfortunately, it makes little sense to instantiate these dependencies when we just want to test routing.
- federationapi.AddPublicRoutes(processCtx, routers, cfg, &natsInstance, nil, nil, keyRing, nil, &internal.FederationInternalAPI{}, nil, caching.DisableMetrics)
+ federationapi.AddPublicRoutes(processCtx, routers, cfg, &natsInstance, nil, nil, keyRing, nil, &internal.FederationInternalAPI{}, caching.DisableMetrics)
baseURL, cancel := test.ListenAndServe(t, routers.Federation, true)
defer cancel()
serverName := spec.ServerName(strings.TrimPrefix(baseURL, "https://"))
diff --git a/federationapi/routing/profile_test.go b/federationapi/routing/profile_test.go
index 18a908e4..a31b206c 100644
--- a/federationapi/routing/profile_test.go
+++ b/federationapi/routing/profile_test.go
@@ -71,7 +71,7 @@ func TestHandleQueryProfile(t *testing.T) {
if !ok {
panic("This is a programming error.")
}
- routing.Setup(routers, cfg, nil, r, keyRing, &fedClient, &userapi, &cfg.MSCs, nil, nil, caching.DisableMetrics)
+ routing.Setup(routers, cfg, nil, r, keyRing, &fedClient, &userapi, &cfg.MSCs, nil, caching.DisableMetrics)
handler := fedMux.Get(routing.QueryProfileRouteName).GetHandler().ServeHTTP
_, sk, _ := ed25519.GenerateKey(nil)
diff --git a/federationapi/routing/query_test.go b/federationapi/routing/query_test.go
index e7094e19..bb14ab03 100644
--- a/federationapi/routing/query_test.go
+++ b/federationapi/routing/query_test.go
@@ -69,7 +69,7 @@ func TestHandleQueryDirectory(t *testing.T) {
if !ok {
panic("This is a programming error.")
}
- routing.Setup(routers, cfg, nil, r, keyRing, &fedClient, &userapi, &cfg.MSCs, nil, nil, caching.DisableMetrics)
+ routing.Setup(routers, cfg, nil, r, keyRing, &fedClient, &userapi, &cfg.MSCs, nil, caching.DisableMetrics)
handler := fedMux.Get(routing.QueryDirectoryRouteName).GetHandler().ServeHTTP
_, sk, _ := ed25519.GenerateKey(nil)
diff --git a/federationapi/routing/routing.go b/federationapi/routing/routing.go
index c82912c9..6ef544d0 100644
--- a/federationapi/routing/routing.go
+++ b/federationapi/routing/routing.go
@@ -24,7 +24,6 @@ import (
"github.com/getsentry/sentry-go"
"github.com/gorilla/mux"
"github.com/matrix-org/dendrite/clientapi/jsonerror"
- federationAPI "github.com/matrix-org/dendrite/federationapi/api"
fedInternal "github.com/matrix-org/dendrite/federationapi/internal"
"github.com/matrix-org/dendrite/federationapi/producers"
"github.com/matrix-org/dendrite/internal"
@@ -64,7 +63,6 @@ func Setup(
federation fclient.FederationClient,
userAPI userapi.FederationUserAPI,
mscCfg *config.MSCs,
- servers federationAPI.ServersInRoomProvider,
producer *producers.SyncAPIProducer, enableMetrics bool,
) {
fedMux := routers.Federation
@@ -141,7 +139,7 @@ func Setup(
func(httpReq *http.Request, request *fclient.FederationRequest, vars map[string]string) util.JSONResponse {
return Send(
httpReq, request, gomatrixserverlib.TransactionID(vars["txnID"]),
- cfg, rsAPI, userAPI, keys, federation, mu, servers, producer,
+ cfg, rsAPI, userAPI, keys, federation, mu, producer,
)
},
)).Methods(http.MethodPut, http.MethodOptions).Name(SendRouteName)
diff --git a/federationapi/routing/send.go b/federationapi/routing/send.go
index 2e674f98..04bf505a 100644
--- a/federationapi/routing/send.go
+++ b/federationapi/routing/send.go
@@ -26,7 +26,6 @@ import (
"github.com/matrix-org/util"
"github.com/matrix-org/dendrite/clientapi/jsonerror"
- federationAPI "github.com/matrix-org/dendrite/federationapi/api"
"github.com/matrix-org/dendrite/federationapi/producers"
"github.com/matrix-org/dendrite/internal"
"github.com/matrix-org/dendrite/roomserver/api"
@@ -64,7 +63,6 @@ func Send(
keys gomatrixserverlib.JSONVerifier,
federation fclient.FederationClient,
mu *internal.MutexByRoom,
- servers federationAPI.ServersInRoomProvider,
producer *producers.SyncAPIProducer,
) util.JSONResponse {
// First we should check if this origin has already submitted this
diff --git a/federationapi/routing/send_test.go b/federationapi/routing/send_test.go
index 55b156e5..f629479d 100644
--- a/federationapi/routing/send_test.go
+++ b/federationapi/routing/send_test.go
@@ -66,7 +66,7 @@ func TestHandleSend(t *testing.T) {
if !ok {
panic("This is a programming error.")
}
- routing.Setup(routers, cfg, nil, r, keyRing, nil, nil, &cfg.MSCs, nil, nil, caching.DisableMetrics)
+ routing.Setup(routers, cfg, nil, r, keyRing, nil, nil, &cfg.MSCs, nil, caching.DisableMetrics)
handler := fedMux.Get(routing.SendRouteName).GetHandler().ServeHTTP
_, sk, _ := ed25519.GenerateKey(nil)
diff --git a/federationapi/routing/threepid.go b/federationapi/routing/threepid.go
index fdfc7bce..8f26d53d 100644
--- a/federationapi/routing/threepid.go
+++ b/federationapi/routing/threepid.go
@@ -237,7 +237,7 @@ func createInviteFrom3PIDInvite(
cfg *config.FederationAPI,
inv invite, federation fclient.FederationClient,
userAPI userapi.FederationUserAPI,
-) (*gomatrixserverlib.Event, error) {
+) (gomatrixserverlib.PDU, error) {
_, server, err := gomatrixserverlib.SplitID('@', inv.MXID)
if err != nil {
return nil, err
@@ -293,7 +293,7 @@ func buildMembershipEvent(
ctx context.Context,
builder *gomatrixserverlib.EventBuilder, rsAPI api.FederationRoomserverAPI,
cfg *config.FederationAPI,
-) (*gomatrixserverlib.Event, error) {
+) (gomatrixserverlib.PDU, error) {
eventsNeeded, err := gomatrixserverlib.StateNeededForEventBuilder(builder)
if err != nil {
return nil, err