NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

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