Source code for fedex.services.pickup_service

from fedex.base_service import FedexBaseService


[docs]class FedexCreatePickupRequest(FedexBaseService): def __init__(self, config_obj, *args, **kwargs): self._config_obj = config_obj # Holds version info for the VersionId SOAP object. self._version_info = { 'service_id': 'disp', 'major': '11', 'intermediate': '0', 'minor': '0' } self.OriginDetail = None self.PackageCount = None self.TotalWeight = None self.CarrierCode = None self.OversizePackageCount = None self.Remarks = None self.CommodityDescription = None self.CountryRelationship = None self.PickupServiceCategory = None super(FedexCreatePickupRequest, self).__init__(self._config_obj, 'PickupService_v11.wsdl', *args, **kwargs) def _prepare_wsdl_objects(self): self.OriginDetail = self.client.factory.create('PickupOriginDetail') self.OriginDetail.PickupLocation = self.client.factory.create('ContactAndAddress') self.OriginDetail.PickupLocation.Contact = self.client.factory.create('Contact') self.OriginDetail.PickupLocation.Address = self.client.factory.create('Address') self.OriginDetail.PackageLocation = None self.OriginDetail.BuildingPart = None self.TotalWeight = self.client.factory.create('Weight') self.CarrierCode = self.client.factory.create('CarrierCodeType') self.logger.debug(self.OriginDetail) self.logger.debug(self.TotalWeight) self.logger.debug(self.CarrierCode) def _assemble_and_send_request(self): """ Fires off the Fedex request. @warning: NEVER CALL THIS METHOD DIRECTLY. CALL send_request(), WHICH RESIDES ON FedexBaseService AND IS INHERITED. """ # Fire off the query. return self.client.service.createPickup( WebAuthenticationDetail=self.WebAuthenticationDetail, ClientDetail=self.ClientDetail, TransactionDetail=self.TransactionDetail, Version=self.VersionId, OriginDetail=self.OriginDetail, PickupServiceCategory=self.PickupServiceCategory, PackageCount=self.PackageCount, TotalWeight=self.TotalWeight, CarrierCode=self.CarrierCode, OversizePackageCount=self.OversizePackageCount, Remarks=self.Remarks, CommodityDescription=self.CommodityDescription, CountryRelationship=self.CountryRelationship )