side_effect.py (1887B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\campaigns\client\v2\data_model\side_effect.py 2 from campaigns.client.v2.data_model.ui_definition import UIDefinition 3 4 class SideEffect(object): 5 6 def __init__(self, key, ui_definition): 7 self._key = key 8 self._ui_definition = ui_definition 9 10 @property 11 def key(self): 12 return self._key 13 14 @property 15 def ui_definition(self): 16 return self._ui_definition 17 18 @classmethod 19 def from_proto(cls, configuration): 20 return SideEffect(configuration.key, UIDefinition.from_proto(configuration.ui)) 21 22 def __eq__(self, other): 23 if not isinstance(other, SideEffect): 24 raise NotImplementedError 25 return self.key == other.key and self.ui_definition == other.ui_definition 26 27 def __ne__(self, other): 28 return not self.__eq__(other) 29 30 def __repr__(self): 31 return '<%s %r>' % (self.__class__.__name__, self.__dict__) 32 33 34 class SideEffectGroup(object): 35 36 def __init__(self, side_effects, ui_definition): 37 self._side_effects = side_effects 38 self._ui_definition = ui_definition 39 40 @property 41 def side_effects(self): 42 return self._side_effects 43 44 @property 45 def ui_definition(self): 46 return self._ui_definition 47 48 @classmethod 49 def from_proto(cls, group): 50 return SideEffectGroup([ SideEffect.from_proto(side_effect) for side_effect in group.side_effects ], UIDefinition.from_proto(group.ui)) 51 52 def __eq__(self, other): 53 if not isinstance(other, SideEffectGroup): 54 raise NotImplementedError 55 return self.side_effects == other.side_effects and self.ui_definition == other.ui_definition 56 57 def __ne__(self, other): 58 return not self.__eq__(other) 59 60 def __repr__(self): 61 return '<%s %r>' % (self.__class__.__name__, self.__dict__)