Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactor

This commit is contained in:
Erik Johnston 2014-08-26 16:29:44 +01:00
commit 8885c8546c
8 changed files with 22 additions and 17 deletions

View file

@ -436,7 +436,7 @@ class SynapseCmd(cmd.Cmd):
print "Unrecognised type: %s" % args["type"] print "Unrecognised type: %s" % args["type"]
return return
room_id = args["roomid"] room_id = args["roomid"]
path = "/rooms/%s/%s/list" % (urllib.quote(room_id), args["type"]) path = "/rooms/%s/%s" % (urllib.quote(room_id), args["type"])
qp = {"access_token": self._tok()} qp = {"access_token": self._tok()}
if "qp" in args: if "qp" in args:

View file

@ -114,7 +114,7 @@ class FederationHandler(BaseHandler):
if event.type == RoomMemberEvent.TYPE: if event.type == RoomMemberEvent.TYPE:
if event.membership == Membership.JOIN: if event.membership == Membership.JOIN:
user = self.hs.parse_userid(event.target_user_id) user = self.hs.parse_userid(event.state_key)
self.distributor.fire( self.distributor.fire(
"user_joined_room", user=user, room_id=event.room_id "user_joined_room", user=user, room_id=event.room_id
) )

View file

@ -270,6 +270,10 @@ class MessageHandler(BaseHandler):
# FIXME (erikj): We need to not generate this token, # FIXME (erikj): We need to not generate this token,
now_token = "%s_%s" % (now_rooms_token, now_presence_token) now_token = "%s_%s" % (now_rooms_token, now_presence_token)
limit = pagin_config.limit
if not limit:
limit = 10
for event in room_list: for event in room_list:
d = { d = {
"room_id": event.room_id, "room_id": event.room_id,
@ -286,7 +290,7 @@ class MessageHandler(BaseHandler):
try: try:
messages, token = yield self.store.get_recent_events_for_room( messages, token = yield self.store.get_recent_events_for_room(
event.room_id, event.room_id,
limit=10, limit=limit,
end_token=now_rooms_token, end_token=now_rooms_token,
) )

View file

@ -15,7 +15,8 @@
from . import ( from . import (
room, events, register, login, profile, public, presence, im, directory room, events, register, login, profile, public, presence, initial_sync,
directory
) )
@ -41,5 +42,5 @@ class RestServletFactory(object):
profile.register_servlets(hs, client_resource) profile.register_servlets(hs, client_resource)
public.register_servlets(hs, client_resource) public.register_servlets(hs, client_resource)
presence.register_servlets(hs, client_resource) presence.register_servlets(hs, client_resource)
im.register_servlets(hs, client_resource) initial_sync.register_servlets(hs, client_resource)
directory.register_servlets(hs, client_resource) directory.register_servlets(hs, client_resource)

View file

@ -19,8 +19,8 @@ from synapse.api.streams import PaginationConfig
from base import RestServlet, client_path_pattern from base import RestServlet, client_path_pattern
class ImSyncRestServlet(RestServlet): class InitialSyncRestServlet(RestServlet):
PATTERN = client_path_pattern("/im/sync$") PATTERN = client_path_pattern("/initialSync$")
@defer.inlineCallbacks @defer.inlineCallbacks
def on_GET(self, request): def on_GET(self, request):
@ -37,4 +37,4 @@ class ImSyncRestServlet(RestServlet):
def register_servlets(hs, http_server): def register_servlets(hs, http_server):
ImSyncRestServlet(hs).register(http_server) InitialSyncRestServlet(hs).register(http_server)

View file

@ -306,7 +306,7 @@ class FeedbackRestServlet(RestServlet):
class RoomMemberListRestServlet(RestServlet): class RoomMemberListRestServlet(RestServlet):
PATTERN = client_path_pattern("/rooms/(?P<room_id>[^/]*)/members/list$") PATTERN = client_path_pattern("/rooms/(?P<room_id>[^/]*)/members$")
@defer.inlineCallbacks @defer.inlineCallbacks
def on_GET(self, request, room_id): def on_GET(self, request, room_id):
@ -333,7 +333,7 @@ class RoomMemberListRestServlet(RestServlet):
class RoomMessageListRestServlet(RestServlet): class RoomMessageListRestServlet(RestServlet):
PATTERN = client_path_pattern("/rooms/(?P<room_id>[^/]*)/messages/list$") PATTERN = client_path_pattern("/rooms/(?P<room_id>[^/]*)/messages$")
@defer.inlineCallbacks @defer.inlineCallbacks
def on_GET(self, request, room_id): def on_GET(self, request, room_id):

View file

@ -426,13 +426,13 @@ class RoomsMemberListTestCase(RestTestCase):
room_id = "!aa:test" room_id = "!aa:test"
yield self.create_room_as(room_id, self.user_id) yield self.create_room_as(room_id, self.user_id)
(code, response) = yield self.mock_resource.trigger_get( (code, response) = yield self.mock_resource.trigger_get(
"/rooms/%s/members/list" % room_id) "/rooms/%s/members" % room_id)
self.assertEquals(200, code, msg=str(response)) self.assertEquals(200, code, msg=str(response))
@defer.inlineCallbacks @defer.inlineCallbacks
def test_get_member_list_no_room(self): def test_get_member_list_no_room(self):
(code, response) = yield self.mock_resource.trigger_get( (code, response) = yield self.mock_resource.trigger_get(
"/rooms/roomdoesnotexist/members/list") "/rooms/roomdoesnotexist/members")
self.assertEquals(403, code, msg=str(response)) self.assertEquals(403, code, msg=str(response))
@defer.inlineCallbacks @defer.inlineCallbacks
@ -440,14 +440,14 @@ class RoomsMemberListTestCase(RestTestCase):
room_id = "!bb:test" room_id = "!bb:test"
yield self.create_room_as(room_id, "@some_other_guy:red") yield self.create_room_as(room_id, "@some_other_guy:red")
(code, response) = yield self.mock_resource.trigger_get( (code, response) = yield self.mock_resource.trigger_get(
"/rooms/%s/members/list" % room_id) "/rooms/%s/members" % room_id)
self.assertEquals(403, code, msg=str(response)) self.assertEquals(403, code, msg=str(response))
@defer.inlineCallbacks @defer.inlineCallbacks
def test_get_member_list_mixed_memberships(self): def test_get_member_list_mixed_memberships(self):
room_id = "!bb:test" room_id = "!bb:test"
room_creator = "@some_other_guy:blue" room_creator = "@some_other_guy:blue"
room_path = "/rooms/%s/members/list" % room_id room_path = "/rooms/%s/members" % room_id
yield self.create_room_as(room_id, room_creator) yield self.create_room_as(room_id, room_creator)
yield self.invite(room=room_id, src=room_creator, yield self.invite(room=room_id, src=room_creator,
targ=self.user_id) targ=self.user_id)

View file

@ -108,7 +108,7 @@ angular.module('matrixService', [])
// List all rooms joined or been invited to // List all rooms joined or been invited to
rooms: function(from, to, limit) { rooms: function(from, to, limit) {
// The REST path spec // The REST path spec
var path = "/im/sync"; var path = "/initialSync";
return doRequest("GET", path); return doRequest("GET", path);
}, },
@ -217,13 +217,13 @@ angular.module('matrixService', [])
// Like the cmd client, escape room ids // Like the cmd client, escape room ids
room_id = encodeURIComponent(room_id); room_id = encodeURIComponent(room_id);
var path = "/rooms/$room_id/members/list"; var path = "/rooms/$room_id/members";
path = path.replace("$room_id", room_id); path = path.replace("$room_id", room_id);
return doRequest("GET", path); return doRequest("GET", path);
}, },
paginateBackMessages: function(room_id, from_token, limit) { paginateBackMessages: function(room_id, from_token, limit) {
var path = "/rooms/$room_id/messages/list"; var path = "/rooms/$room_id/messages";
path = path.replace("$room_id", room_id); path = path.replace("$room_id", room_id);
var params = { var params = {
from: from_token, from: from_token,