ハンドラに前処理を追加したい
class BaseHandler:
def __init__(self):
setup()
try:
handle()
finally:
finish()
def setup(self):
pass
def handle(self):
pass
def finish(self):
pass
の handle
に前処理を追加し,継承先では前処理が行われた状態で handle
の処理を開始したいです。この場合は,どのように記述すればよいでしょうか。
具体的には,
class MessageHandler(socketserver.BaseRequestHandler):
def handle(self):
with pickle.loads(self.request.recv(1024)) as message:
pass
を継承し,
class ChildMessageHandler(socketserver.BaseRequestHandler):
def handle(self):
if isinstance(massage, Message):
print(message.text)
というような使い方をしたいです。setattr
を使って前処理の結果を属性に加えるなども考えています。
この場合,どのように記述するのが適切でしょうか。