From 908f4403570c66aaabed3c4a26743ecd5adf1095 Mon Sep 17 00:00:00 2001 From: Ralph Bean Date: Thu, 15 Dec 2016 13:50:43 -0500 Subject: [PATCH] Make BaseMessage instances appear a bit more like JSON so they can make it through moksha validation. --- module_build_service/messaging.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/module_build_service/messaging.py b/module_build_service/messaging.py index 9f991ec1..307bd307 100644 --- a/module_build_service/messaging.py +++ b/module_build_service/messaging.py @@ -43,6 +43,10 @@ class BaseMessage(object): """ self.msg_id = msg_id + # Unused; just placeholder attributes to appear more like JSON. + self.body = {} + self.topic = None + def __repr__(self): init_sig = signature(self.__init__) @@ -54,6 +58,15 @@ class BaseMessage(object): return "{}({})".format(type(self).__name__, ', '.join(args_strs)) + def __getitem__(self, key): + return getattr(self, key) + + def __setitem__(self, key, value): + return setattr(self, key, value) + + def get(self, key, value=None): + return getattr(self, key, value) + @staticmethod def from_amq(topic, msg): msg_obj = None