From bb9c2297c9c6b1213248a36d0994d53c190bb6fa Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Wed, 29 Jan 2020 15:41:13 -0500 Subject: [PATCH] Stringify firmware datetime With the change to msgpack, datetime objects cannot be serialized. Apply tlvdata compliant transform before storing. --- confluent_server/confluent/messages.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/confluent_server/confluent/messages.py b/confluent_server/confluent/messages.py index a99efad1..21987269 100644 --- a/confluent_server/confluent/messages.py +++ b/confluent_server/confluent/messages.py @@ -1501,6 +1501,12 @@ class Firmware(ConfluentMessage): readonly = True def __init__(self, data, name): + for datum in data: + for component in datum: + for field in datum[component]: + tdatum = datum[component] + if isinstance(tdatum[field], datetime): + tdatum[field] = tdatum[field].strftime('%Y-%m-%dT%H:%M:%S') self.myargs = (data, name) self.notnode = name is None self.desc = 'Firmware information'