diff --git a/sat/tools/common/data_objects.py b/sat/tools/common/data_objects.py index 9db5008c..ba4bcca1 100644 --- a/sat/tools/common/data_objects.py +++ b/sat/tools/common/data_objects.py @@ -72,8 +72,16 @@ def parsePubSubMetadata(metadata, items): class BlogItem(object): - def __init__(self, mb_data, parent): - self.mb_data = data_format.deserialise(mb_data) + def __init__(self, mb_data, parent, deserialise=True): + """ + @param deserialise(bool): if True, mb_data is a serialised string which must + be deserialised + """ + # FIXME: deserialise should not be done here, but before BlogItem is called + if deserialise: + self.mb_data = data_format.deserialise(mb_data) + else: + self.mb_data = mb_data self.parent = parent self._comments = None self._comments_items_list = None @@ -180,8 +188,13 @@ class BlogItem(object): class BlogItems(object): - def __init__(self, mb_data): - self.items = [BlogItem(i, self) for i in mb_data[0]] + def __init__(self, mb_data, deserialise=True): + """ + @param deserialise(bool): if True, mb_data is a serialised string which must + be deserialised + """ + # FIXME: deserialise should not be done here, but before BlogItem is called + self.items = [BlogItem(i, self, deserialise=deserialise) for i in mb_data[0]] self.metadata = parsePubSubMetadata(mb_data[1], self.items) @property