Files
tryton/configuration.py
T

27 lines
988 B
Python
Raw Normal View History

2016-06-01 19:07:40 +02:00
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
2018-06-26 19:11:57 +02:00
from urllib.parse import urljoin
from zeep import Client
from zeep.transports import Transport
from trytond.config import config
2016-06-01 19:07:40 +02:00
SERVER_URLS = {
'testing': 'https://public-ws-stage.dpd.com/services/',
'production': 'https://public-ws.dpd.com/services/',
}
LOGIN_SERVICE = 'LoginService/V2_0?wsdl'
SHIPMENT_SERVICE = 'ShipmentService/V3_2?wsdl'
def get_client(server, service):
api_base_url = config.get('stock_package_shipping_dpd',
server, default=SERVER_URLS[server])
url = urljoin(api_base_url, service)
# Disable the cache for testing because zeep's bug
# https://github.com/mvantellingen/python-zeep/issues/48
# which makes testing environments fail
transport = (Transport(cache=None)
if url.startswith(SERVER_URLS['testing']) else None)
return Client(url, transport=transport)