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

identifier.py (1294B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\achievement_system\client\model\definition\category\identifier.py
      2 import uuid as uuidPackage
      3 from eveProto.generated.eve_public.achievement.category.definition.category_pb2 import Identifier as ProtoCategoryDefinitionIdentifier
      4 
      5 class CategoryDefinitionIdentifier(object):
      6 
      7     def __init__(self, identifier):
      8         self._uuid = identifier
      9 
     10     @property
     11     def uuid(self):
     12         return self._uuid
     13 
     14     @classmethod
     15     def from_proto(cls, payload):
     16         return CategoryDefinitionIdentifier(identifier=uuidPackage.UUID(bytes=payload.uuid))
     17 
     18     @classmethod
     19     def to_proto(cls, instance):
     20         return ProtoCategoryDefinitionIdentifier(uuid=instance.uuid.bytes)
     21 
     22     @classmethod
     23     def from_flatbuffer(cls, fb_data):
     24         return CategoryDefinitionIdentifier(identifier=uuidPackage.UUID(fb_data))
     25 
     26     def __eq__(self, other):
     27         if other is None:
     28             return False
     29         if not isinstance(other, CategoryDefinitionIdentifier):
     30             return False
     31         return self.uuid == other.uuid
     32 
     33     def __ne__(self, other):
     34         return not self.__eq__(other)
     35 
     36     def __hash__(self):
     37         return hash(self._uuid)
     38 
     39     def __str__(self):
     40         return 'uuid: %s' % self.uuid