def serialize(self): serialized = PersistentID.serialize(self) for attr in Interface._STD_ATTRS: serialized[attr] = serializeElement(getattr(self, attr)) for attr in 'nets routes'.split(): collection = getattr(self, attr) serialized[attr] = list2dict( (item.serialize() for item in collection) ) return serialized