Finish renaming "context" to "room_id" in federation codebase

This commit is contained in:
Mark Haines 2015-01-16 18:59:04 +00:00
parent 2408c4b0a4
commit 5fed042640
7 changed files with 62 additions and 99 deletions

View File

@ -256,23 +256,21 @@ class ReplicationLayer(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def get_state_for_context(self, destination, context, event_id): def get_state_for_room(self, destination, room_id, event_id):
"""Requests all of the `current` state PDUs for a given context from """Requests all of the `current` state PDUs for a given room from
a remote home server. a remote home server.
Args: Args:
destination (str): The remote homeserver to query for the state. destination (str): The remote homeserver to query for the state.
context (str): The context we're interested in. room_id (str): The id of the room we're interested in.
event_id (str): The id of the event we want the state at. event_id (str): The id of the event we want the state at.
Returns: Returns:
Deferred: Results in a list of PDUs. Deferred: Results in a list of PDUs.
""" """
result = yield self.transport_layer.get_context_state( result = yield self.transport_layer.get_room_state(
destination, destination, room_id, event_id=event_id,
context,
event_id=event_id,
) )
pdus = [ pdus = [
@ -288,9 +286,9 @@ class ReplicationLayer(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def get_event_auth(self, destination, context, event_id): def get_event_auth(self, destination, room_id, event_id):
res = yield self.transport_layer.get_event_auth( res = yield self.transport_layer.get_event_auth(
destination, context, event_id, destination, room_id, event_id,
) )
auth_chain = [ auth_chain = [
@ -304,9 +302,9 @@ class ReplicationLayer(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def on_backfill_request(self, origin, context, versions, limit): def on_backfill_request(self, origin, room_id, versions, limit):
pdus = yield self.handler.on_backfill_request( pdus = yield self.handler.on_backfill_request(
origin, context, versions, limit origin, room_id, versions, limit
) )
defer.returnValue((200, self._transaction_from_pdus(pdus).get_dict())) defer.returnValue((200, self._transaction_from_pdus(pdus).get_dict()))
@ -380,12 +378,10 @@ class ReplicationLayer(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def on_context_state_request(self, origin, context, event_id): def on_context_state_request(self, origin, room_id, event_id):
if event_id: if event_id:
pdus = yield self.handler.get_state_for_pdu( pdus = yield self.handler.get_state_for_pdu(
origin, origin, room_id, event_id,
context,
event_id,
) )
auth_chain = yield self.store.get_auth_chain( auth_chain = yield self.store.get_auth_chain(
[pdu.event_id for pdu in pdus] [pdu.event_id for pdu in pdus]
@ -413,7 +409,7 @@ class ReplicationLayer(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def on_pull_request(self, origin, versions): def on_pull_request(self, origin, versions):
raise NotImplementedError("Pull transacions not implemented") raise NotImplementedError("Pull transactions not implemented")
@defer.inlineCallbacks @defer.inlineCallbacks
def on_query_request(self, query_type, args): def on_query_request(self, query_type, args):
@ -422,30 +418,21 @@ class ReplicationLayer(object):
defer.returnValue((200, response)) defer.returnValue((200, response))
else: else:
defer.returnValue( defer.returnValue(
(404, "No handler for Query type '%s'" % (query_type, )) (404, "No handler for Query type '%s'" % (query_type,))
) )
@defer.inlineCallbacks @defer.inlineCallbacks
def on_make_join_request(self, context, user_id): def on_make_join_request(self, room_id, user_id):
pdu = yield self.handler.on_make_join_request(context, user_id) pdu = yield self.handler.on_make_join_request(room_id, user_id)
time_now = self._clock.time_msec() time_now = self._clock.time_msec()
defer.returnValue({ defer.returnValue({"event": pdu.get_pdu_json(time_now)})
"event": pdu.get_pdu_json(time_now),
})
@defer.inlineCallbacks @defer.inlineCallbacks
def on_invite_request(self, origin, content): def on_invite_request(self, origin, content):
pdu = self.event_from_pdu_json(content) pdu = self.event_from_pdu_json(content)
ret_pdu = yield self.handler.on_invite_request(origin, pdu) ret_pdu = yield self.handler.on_invite_request(origin, pdu)
time_now = self._clock.time_msec() time_now = self._clock.time_msec()
defer.returnValue( defer.returnValue((200, {"event": ret_pdu.get_pdu_json(time_now)}))
(
200,
{
"event": ret_pdu.get_pdu_json(time_now),
}
)
)
@defer.inlineCallbacks @defer.inlineCallbacks
def on_send_join_request(self, origin, content): def on_send_join_request(self, origin, content):
@ -462,26 +449,17 @@ class ReplicationLayer(object):
})) }))
@defer.inlineCallbacks @defer.inlineCallbacks
def on_event_auth(self, origin, context, event_id): def on_event_auth(self, origin, room_id, event_id):
time_now = self._clock.time_msec() time_now = self._clock.time_msec()
auth_pdus = yield self.handler.on_event_auth(event_id) auth_pdus = yield self.handler.on_event_auth(event_id)
defer.returnValue( defer.returnValue((200, {
( "auth_chain": [a.get_pdu_json(time_now) for a in auth_pdus],
200, }))
{
"auth_chain": [
a.get_pdu_json(time_now) for a in auth_pdus
],
}
)
)
@defer.inlineCallbacks @defer.inlineCallbacks
def make_join(self, destination, context, user_id): def make_join(self, destination, room_id, user_id):
ret = yield self.transport_layer.make_join( ret = yield self.transport_layer.make_join(
destination=destination, destination, room_id, user_id
context=context,
user_id=user_id,
) )
pdu_dict = ret["event"] pdu_dict = ret["event"]
@ -494,10 +472,10 @@ class ReplicationLayer(object):
def send_join(self, destination, pdu): def send_join(self, destination, pdu):
time_now = self._clock.time_msec() time_now = self._clock.time_msec()
_, content = yield self.transport_layer.send_join( _, content = yield self.transport_layer.send_join(
destination, destination=destination,
pdu.room_id, room_id=pdu.room_id,
pdu.event_id, event_id=pdu.event_id,
pdu.get_pdu_json(time_now), content=pdu.get_pdu_json(time_now),
) )
logger.debug("Got content: %s", content) logger.debug("Got content: %s", content)
@ -507,9 +485,6 @@ class ReplicationLayer(object):
for p in content.get("state", []) for p in content.get("state", [])
] ]
# FIXME: We probably want to do something with the auth_chain given
# to us
auth_chain = [ auth_chain = [
self.event_from_pdu_json(p, outlier=True) self.event_from_pdu_json(p, outlier=True)
for p in content.get("auth_chain", []) for p in content.get("auth_chain", [])
@ -523,11 +498,11 @@ class ReplicationLayer(object):
}) })
@defer.inlineCallbacks @defer.inlineCallbacks
def send_invite(self, destination, context, event_id, pdu): def send_invite(self, destination, room_id, event_id, pdu):
time_now = self._clock.time_msec() time_now = self._clock.time_msec()
code, content = yield self.transport_layer.send_invite( code, content = yield self.transport_layer.send_invite(
destination=destination, destination=destination,
context=context, room_id=room_id,
event_id=event_id, event_id=event_id,
content=pdu.get_pdu_json(time_now), content=pdu.get_pdu_json(time_now),
) )
@ -657,7 +632,7 @@ class ReplicationLayer(object):
"_handle_new_pdu getting state for %s", "_handle_new_pdu getting state for %s",
pdu.room_id pdu.room_id
) )
state, auth_chain = yield self.get_state_for_context( state, auth_chain = yield self.get_state_for_room(
origin, pdu.room_id, pdu.event_id, origin, pdu.room_id, pdu.event_id,
) )
@ -830,14 +805,15 @@ class _TransactionQueue(object):
pending_failures = self.pending_failures_by_dest.pop(destination, []) pending_failures = self.pending_failures_by_dest.pop(destination, [])
if pending_pdus: if pending_pdus:
logger.info("TX [%s] len(pending_pdus_by_dest[dest]) = %d", destination, len(pending_pdus)) logger.info("TX [%s] len(pending_pdus_by_dest[dest]) = %d",
destination, len(pending_pdus))
if not pending_pdus and not pending_edus and not pending_failures: if not pending_pdus and not pending_edus and not pending_failures:
return return
logger.debug( logger.debug(
"TX [%s] Attempting new transaction " "TX [%s] Attempting new transaction"
"(pdus: %d, edus: %d, failures: %d)", " (pdus: %d, edus: %d, failures: %d)",
destination, destination,
len(pending_pdus), len(pending_pdus),
len(pending_edus), len(pending_edus),

View File

@ -29,9 +29,9 @@ class TransportLayerClient(object):
"""Sends federation HTTP requests to other servers""" """Sends federation HTTP requests to other servers"""
@log_function @log_function
def get_context_state(self, destination, context, event_id): def get_room_state(self, destination, room_id, event_id):
""" Requests all state for a given context (i.e. room) from the """ Requests all state for a given room from the given server at the
given server. given event.
Args: Args:
destination (str): The host name of the remote home server we want destination (str): The host name of the remote home server we want
@ -42,10 +42,10 @@ class TransportLayerClient(object):
Returns: Returns:
Deferred: Results in a dict received from the remote homeserver. Deferred: Results in a dict received from the remote homeserver.
""" """
logger.debug("get_context_state dest=%s, context=%s", logger.debug("get_room_state dest=%s, room=%s",
destination, context) destination, room_id)
path = PREFIX + "/state/%s/" % context path = PREFIX + "/state/%s/" % room_id
return self.client.get_json( return self.client.get_json(
destination, path=path, args={"event_id": event_id}, destination, path=path, args={"event_id": event_id},
) )
@ -69,13 +69,13 @@ class TransportLayerClient(object):
return self.client.get_json(destination, path=path) return self.client.get_json(destination, path=path)
@log_function @log_function
def backfill(self, dest, context, event_tuples, limit): def backfill(self, destination, room_id, event_tuples, limit):
""" Requests `limit` previous PDUs in a given context before list of """ Requests `limit` previous PDUs in a given context before list of
PDUs. PDUs.
Args: Args:
dest (str) dest (str)
context (str) room_id (str)
event_tuples (list) event_tuples (list)
limt (int) limt (int)
@ -83,15 +83,15 @@ class TransportLayerClient(object):
Deferred: Results in a dict received from the remote homeserver. Deferred: Results in a dict received from the remote homeserver.
""" """
logger.debug( logger.debug(
"backfill dest=%s, context=%s, event_tuples=%s, limit=%s", "backfill dest=%s, room_id=%s, event_tuples=%s, limit=%s",
dest, context, repr(event_tuples), str(limit) destination, room_id, repr(event_tuples), str(limit)
) )
if not event_tuples: if not event_tuples:
# TODO: raise? # TODO: raise?
return return
path = PREFIX + "/backfill/%s/" % (context,) path = PREFIX + "/backfill/%s/" % (room_id,)
args = { args = {
"v": event_tuples, "v": event_tuples,
@ -159,8 +159,8 @@ class TransportLayerClient(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def make_join(self, destination, context, user_id, retry_on_dns_fail=True): def make_join(self, destination, room_id, user_id, retry_on_dns_fail=True):
path = PREFIX + "/make_join/%s/%s" % (context, user_id,) path = PREFIX + "/make_join/%s/%s" % (room_id, user_id)
response = yield self.client.get_json( response = yield self.client.get_json(
destination=destination, destination=destination,
@ -172,11 +172,8 @@ class TransportLayerClient(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def send_join(self, destination, context, event_id, content): def send_join(self, destination, room_id, event_id, content):
path = PREFIX + "/send_join/%s/%s" % ( path = PREFIX + "/send_join/%s/%s" % (room_id, event_id)
context,
event_id,
)
code, content = yield self.client.put_json( code, content = yield self.client.put_json(
destination=destination, destination=destination,
@ -191,11 +188,8 @@ class TransportLayerClient(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def send_invite(self, destination, context, event_id, content): def send_invite(self, destination, room_id, event_id, content):
path = PREFIX + "/invite/%s/%s" % ( path = PREFIX + "/invite/%s/%s" % (room_id, event_id)
context,
event_id,
)
code, content = yield self.client.put_json( code, content = yield self.client.put_json(
destination=destination, destination=destination,
@ -210,11 +204,8 @@ class TransportLayerClient(object):
@defer.inlineCallbacks @defer.inlineCallbacks
@log_function @log_function
def get_event_auth(self, destination, context, event_id): def get_event_auth(self, destination, room_id, event_id):
path = PREFIX + "/event_auth/%s/%s" % ( path = PREFIX + "/event_auth/%s/%s" % (room_id, event_id)
context,
event_id,
)
response = yield self.client.get_json( response = yield self.client.get_json(
destination=destination, destination=destination,

View File

@ -285,7 +285,6 @@ class TransportLayerServer(object):
defer.returnValue((code, response)) defer.returnValue((code, response))
@log_function @log_function
def _on_backfill_request(self, origin, context, v_list, limits): def _on_backfill_request(self, origin, context, v_list, limits):
if not limits: if not limits:

View File

@ -144,7 +144,5 @@ class BaseHandler(object):
yield self.notifier.on_new_room_event(event, extra_users=extra_users) yield self.notifier.on_new_room_event(event, extra_users=extra_users)
yield federation_handler.handle_new_event( yield federation_handler.handle_new_event(
event, event, destinations=destinations,
None,
destinations=destinations,
) )

View File

@ -75,14 +75,14 @@ class FederationHandler(BaseHandler):
@log_function @log_function
@defer.inlineCallbacks @defer.inlineCallbacks
def handle_new_event(self, event, snapshot, destinations): def handle_new_event(self, event, destinations):
""" Takes in an event from the client to server side, that has already """ Takes in an event from the client to server side, that has already
been authed and handled by the state module, and sends it to any been authed and handled by the state module, and sends it to any
remote home servers that may be interested. remote home servers that may be interested.
Args: Args:
event event: The event to send
snapshot (.storage.Snapshot): THe snapshot the event happened after destinations: A list of destinations to send it to
Returns: Returns:
Deferred: Resolved when it has successfully been queued for Deferred: Resolved when it has successfully been queued for
@ -154,7 +154,7 @@ class FederationHandler(BaseHandler):
replication = self.replication_layer replication = self.replication_layer
if not state: if not state:
state, auth_chain = yield replication.get_state_for_context( state, auth_chain = yield replication.get_state_for_room(
origin, context=event.room_id, event_id=event.event_id, origin, context=event.room_id, event_id=event.event_id,
) )
@ -281,7 +281,7 @@ class FederationHandler(BaseHandler):
""" """
pdu = yield self.replication_layer.send_invite( pdu = yield self.replication_layer.send_invite(
destination=target_host, destination=target_host,
context=event.room_id, room_id=event.room_id,
event_id=event.event_id, event_id=event.event_id,
pdu=event pdu=event
) )

View File

@ -72,7 +72,6 @@ class MatrixFederationHttpClient(object):
requests. requests.
""" """
def __init__(self, hs): def __init__(self, hs):
self.hs = hs self.hs = hs
self.signing_key = hs.config.signing_key[0] self.signing_key = hs.config.signing_key[0]

View File

@ -223,7 +223,7 @@ class RoomMemberHandlerTestCase(unittest.TestCase):
yield room_handler.change_membership(event, context) yield room_handler.change_membership(event, context)
self.federation.handle_new_event.assert_called_once_with( self.federation.handle_new_event.assert_called_once_with(
event, None, destinations=set() event, destinations=set()
) )
self.datastore.persist_event.assert_called_once_with( self.datastore.persist_event.assert_called_once_with(
@ -301,7 +301,7 @@ class RoomMemberHandlerTestCase(unittest.TestCase):
yield room_handler.change_membership(event, context) yield room_handler.change_membership(event, context)
self.federation.handle_new_event.assert_called_once_with( self.federation.handle_new_event.assert_called_once_with(
event, None, destinations=set(['red']) event, destinations=set(['red'])
) )
self.datastore.persist_event.assert_called_once_with( self.datastore.persist_event.assert_called_once_with(