social media crossposting tool. 3rd time's the charm
mastodon
misskey
crossposting
bluesky
1from typing import override
2from cross.post import Post
3from cross.service import OutputService
4from database.connection import DatabasePool
5
6class DummyOptions:
7 @classmethod
8 def from_dict(cls, obj) -> 'DummyOptions':
9 return DummyOptions()
10
11class StderrOutputService(OutputService):
12 def __init__(self, db: DatabasePool, options: DummyOptions) -> None:
13 super().__init__("http://localhost", db)
14
15 @override
16 def accept_post(self, post: Post):
17 self.log.info("%s", post)
18
19 @override
20 def accept_repost(self, repost_id: str, reposted_id: str):
21 self.log.info("%s, %s", repost_id, reposted_id)
22
23 @override
24 def delete_post(self, post_id: str):
25 self.log.info("%s", post_id)
26
27 @override
28 def delete_repost(self, repost_id: str):
29 self.log.info("%s", repost_id)