21 lines
503 B
Python
21 lines
503 B
Python
import discord
|
|
from .Observer import Observer
|
|
|
|
|
|
class Subject:
|
|
observers: set = set()
|
|
|
|
def subscribe(self, observer: Observer) -> None:
|
|
self.observers.add(observer)
|
|
|
|
def unsubscribe(self, observer: Observer) -> None:
|
|
try:
|
|
self.observers.remove(observer)
|
|
|
|
except KeyError:
|
|
pass
|
|
|
|
async def notify(self, message: discord.Message) -> None:
|
|
for observer in self.observers:
|
|
await observer.update(message)
|