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

requestMessenger.py (1519B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\cosmetics\client\messengers\entitlements\character\ship\requestMessenger.py
      2 import logging
      3 from publicGateway.grpc.exceptions import GenericException
      4 from cosmetics.client.messengers.entitlements.character.ship import new_entitlement_from_type
      5 from eveProto.generated.eve_public.entitlement.character.character_pb2 import GetAllRequest, GetAllResponse
      6 TIMEOUT_SECONDS = 10
      7 logger = logging.getLogger(__name__)
      8 
      9 class PublicEntitlementsRequestsMessenger(object):
     10     public_gateway = None
     11 
     12     def __init__(self, public_gateway):
     13         self.public_gateway = public_gateway
     14 
     15     def get_owned_ship_logos(self):
     16         owned_ship_logos = []
     17         request = GetAllRequest()
     18         request_wrapper, response_wrapper, response_payload = self.blocking_request(request, GetAllResponse)
     19         if response_wrapper.status_code != 200:
     20             raise GenericException(request_primitive=request_wrapper, response_primitive=response_wrapper)
     21         for logo_entitlement in response_payload.entitlements:
     22             owned_ship_logos.append(new_entitlement_from_type(logo_entitlement))
     23 
     24         return owned_ship_logos
     25 
     26     def blocking_request(self, request, response_class):
     27         request_primitive, response_channel = self.public_gateway.send_character_request(request, response_class, TIMEOUT_SECONDS)
     28         response_primitive, payload = response_channel.receive()
     29         return (request_primitive, response_primitive, payload)