aboutsummaryrefslogtreecommitdiff
path: root/modules/fediverse
diff options
context:
space:
mode:
authorGravatar jesopo2019-09-16 13:58:13 +0100
committerGravatar jesopo2019-09-16 13:58:13 +0100
commitcc658925864b900fe1e1f11d791b7aab5861d631 (patch)
tree982a6a09cfc860b7f2fb8fcf73dca54aff27d285 /modules/fediverse
parentpush inbox PUSHes on to background thread (diff)
signature
Revert "push inbox PUSHes on to background thread"
This reverts commit 18613311f988136603b303d018b8e84ff3cb1291.
Diffstat (limited to 'modules/fediverse')
-rw-r--r--modules/fediverse/ap_server.py31
1 files changed, 6 insertions, 25 deletions
diff --git a/modules/fediverse/ap_server.py b/modules/fediverse/ap_server.py
index 158b2fc6..c0ada79a 100644
--- a/modules/fediverse/ap_server.py
+++ b/modules/fediverse/ap_server.py
@@ -1,4 +1,4 @@
-import base64, binascii, json, os, queue, threading, urllib.parse, uuid
+import base64, binascii, json, os, urllib.parse, uuid
from src import ModuleManager, utils
from . import ap_activities, ap_actor, ap_security, ap_utils
@@ -6,31 +6,11 @@ from . import ap_activities, ap_actor, ap_security, ap_utils
ACTIVITY_SETTING_PREFIX = "ap-activity-"
class Server(object):
- def _request_loop(self):
- private_key = self._private_key(key_id)
-
- while self._running:
- obj = self._request_queue.get()
- if obj == "kill":
- break
- else:
- our_actor, actor, activity = obj
- actor.inbox.send(our_actor, activity, private_key)
-
- def unload(self):
- self._running = False
- self._request_queue.put("kill")
-
def __init__(self, bot, username, instance):
self.bot = bot
self.username = username
self.instance = instance
- self._request_queue = queue.Queue()
- self._request_loop_thread = threading.Thread(target=self._request_loop)
- self._request_loop_thread.daemon = True
- self._request_loop_thread.start()
-
def _random_id(self):
return binascii.hexlify(os.urandom(3)).decode("ascii")
@@ -205,17 +185,18 @@ class Server(object):
if not new_follower in followers:
followers.add(new_follower)
- our_actor = ap_actor.Actor(self_id)
-
key_id = self._ap_keyid_url(event["url_for"])
+ private_key = self._private_key(key_id)
+
+ our_actor = ap_actor.Actor(self_id)
actor = ap_actor.Actor(new_follower)
actor.load()
accept = ap_activities.Accept(data["id"], data)
- self._request_queue.put([our_actor, actor, accept])
+ actor.inbox.send(our_actor, accept, private_key)
follow_id = "data:%s" % str(uuid.uuid4())
follow = ap_activities.Follow(follow_id, actor.url)
- self._request_queue.put([our_actor, actor, follow])
+ actor.inbox.send(our_actor, follow, private_key)
else:
event["response"].code = 404