mirror of
https://github.com/1f349/dendrite.git
synced 2024-11-22 19:51:39 +00:00
c45d0936b5
* Generic-based internal HTTP API (tested out on a few endpoints in the federation API) * Add `PerformInvite` * More tweaks * Fix metric name * Fix LookupStateIDs * Lots of changes to clients * Some serverside stuff * Some error handling * Use paths as metric names * Revert "Use paths as metric names" This reverts commit a9323a6a343f5ce6461a2e5bd570fe06465f1b15. * Namespace metric names * Remove duplicate entry * Remove another duplicate entry * Tweak error handling * Some more tweaks * Update error behaviour * Some more error tweaking * Fix API path for `PerformDeleteKeys` * Fix another path * Tweak federation client proxying * Fix another path * Don't return typed nils * Some more tweaks, not that it makes any difference * Tweak federation client proxying * Maybe fix the key backup test
197 lines
5.7 KiB
Go
197 lines
5.7 KiB
Go
package inthttp
|
|
|
|
import (
|
|
"github.com/gorilla/mux"
|
|
"github.com/matrix-org/dendrite/internal/httputil"
|
|
"github.com/matrix-org/dendrite/roomserver/api"
|
|
)
|
|
|
|
// AddRoutes adds the RoomserverInternalAPI handlers to the http.ServeMux.
|
|
// nolint: gocyclo
|
|
func AddRoutes(r api.RoomserverInternalAPI, internalAPIMux *mux.Router) {
|
|
internalAPIMux.Handle(
|
|
RoomserverInputRoomEventsPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverInputRoomEvents", r.InputRoomEvents),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformInvitePath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformInvite", r.PerformInvite),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformJoinPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformJoin", r.PerformJoin),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformLeavePath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformLeave", r.PerformLeave),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformPeekPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformPeek", r.PerformPeek),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformInboundPeekPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformInboundPeek", r.PerformInboundPeek),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformUnpeekPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformUnpeek", r.PerformUnpeek),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformRoomUpgradePath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformRoomUpgrade", r.PerformRoomUpgrade),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformPublishPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformPublish", r.PerformPublish),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformAdminEvacuateRoomPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformAdminEvacuateRoom", r.PerformAdminEvacuateRoom),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformAdminEvacuateUserPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformAdminEvacuateUser", r.PerformAdminEvacuateUser),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryPublishedRoomsPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryPublishedRooms", r.QueryPublishedRooms),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryLatestEventsAndStatePath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryLatestEventsAndState", r.QueryLatestEventsAndState),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryStateAfterEventsPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryStateAfterEvents", r.QueryStateAfterEvents),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryEventsByIDPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryEventsByID", r.QueryEventsByID),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryMembershipForUserPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryMembershipForUser", r.QueryMembershipForUser),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryMembershipsForRoomPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryMembershipsForRoom", r.QueryMembershipsForRoom),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryServerJoinedToRoomPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryServerJoinedToRoom", r.QueryServerJoinedToRoom),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryServerAllowedToSeeEventPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryServerAllowedToSeeEvent", r.QueryServerAllowedToSeeEvent),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryMissingEventsPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryMissingEvents", r.QueryMissingEvents),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryStateAndAuthChainPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryStateAndAuthChain", r.QueryStateAndAuthChain),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformBackfillPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformBackfill", r.PerformBackfill),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverPerformForgetPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverPerformForget", r.PerformForget),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryRoomVersionCapabilitiesPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryRoomVersionCapabilities", r.QueryRoomVersionCapabilities),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryRoomVersionForRoomPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryRoomVersionForRoom", r.QueryRoomVersionForRoom),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverSetRoomAliasPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverSetRoomAlias", r.SetRoomAlias),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverGetRoomIDForAliasPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverGetRoomIDForAlias", r.GetRoomIDForAlias),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverGetAliasesForRoomIDPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverGetAliasesForRoomID", r.GetAliasesForRoomID),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverRemoveRoomAliasPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverRemoveRoomAlias", r.RemoveRoomAlias),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryCurrentStatePath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryCurrentState", r.QueryCurrentState),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryRoomsForUserPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryRoomsForUser", r.QueryRoomsForUser),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryBulkStateContentPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryBulkStateContent", r.QueryBulkStateContent),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQuerySharedUsersPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQuerySharedUsers", r.QuerySharedUsers),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryKnownUsersPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryKnownUsers", r.QueryKnownUsers),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryServerBannedFromRoomPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryServerBannedFromRoom", r.QueryServerBannedFromRoom),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryAuthChainPath,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryAuthChain", r.QueryAuthChain),
|
|
)
|
|
|
|
internalAPIMux.Handle(
|
|
RoomserverQueryRestrictedJoinAllowed,
|
|
httputil.MakeInternalRPCAPI("RoomserverQueryRestrictedJoinAllowed", r.QueryRestrictedJoinAllowed),
|
|
)
|
|
}
|