instance_attributes.py (1549B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\communitytracks\client\data\instance_attributes.py 2 from communitytracks.client.data.definition_identifier import DefinitionIdentifier 3 from eveProto.generated.eve_public.communitytrack.instance.instance_pb2 import Attributes as ProtoInstanceAttributes 4 5 class InstanceAttributes(object): 6 7 def __init__(self, definition_identifier, progress): 8 self._definition_identifier = definition_identifier 9 self._progress = progress 10 11 @property 12 def definition_identifier(self): 13 return self._definition_identifier 14 15 @property 16 def progress(self): 17 return self._progress 18 19 @classmethod 20 def from_proto(cls, proto_payload): 21 return InstanceAttributes(definition_identifier=DefinitionIdentifier.from_proto(proto_payload.definition), progress=proto_payload.progress) 22 23 @classmethod 24 def to_proto(cls, instance_attributes): 25 return ProtoInstanceAttributes(definition=DefinitionIdentifier.to_proto(instance_attributes.definition_identifier), progress=instance_attributes.progress) 26 27 def __eq__(self, other): 28 if other is None: 29 return False 30 return self.definition_identifier == other.definition_identifier and self.progress == other.progress 31 32 def __ne__(self, other): 33 return not self.__eq__(other) 34 35 def __str__(self): 36 result = '\nDefinition Identifier: %s' % self.definition_identifier 37 result += '\nProgress: %s' % self.progress 38 return result