Beispiel #1
0
 def __init__(self, conf, session=None, **kwargs):
     super(Client, self).__init__()
     validate_service_conf(conf)
     self.ns = conf.get('namespace')
     ns_conf = load_namespace_conf(self.ns)
     self.conf = conf
     self.ns_conf = ns_conf
     self.logger = get_logger(conf)
     self.session = session or requests.Session()
     self.endpoint = 'http://%s' % ns_conf.get('proxy')
Beispiel #2
0
 def __init__(self, conf, **kwargs):
     super(Client, self).__init__()
     validate_service_conf(conf)
     self.ns = conf.get("namespace")
     ns_conf = load_namespace_conf(self.ns)
     self.conf = conf
     self.ns_conf = ns_conf
     self.logger = get_logger(conf)
     self.session = requests.Session()
     self.endpoint = "http://%s" % ns_conf.get("proxy")
Beispiel #3
0
 def __init__(self, conf):
     validate_service_conf(conf)
     self.conf = conf
     self.logger = get_logger(conf)
     self.running = False
     self.retry_interval = int_value(conf.get('retry_interval'), 30)
     self.last_retry = 0
     self.init_zmq()
     self.init_queue()
     self.init_workers()
Beispiel #4
0
 def __init__(self, conf):
     validate_service_conf(conf)
     self.conf = conf
     self.logger = get_logger(conf)
     self.running = False
     self.retry_interval = int_value(conf.get('retry_interval'), 30)
     self.last_retry = 0
     self.init_zmq()
     self.init_queue()
     self.init_workers()
Beispiel #5
0
 def __init__(self, conf):
     validate_service_conf(conf)
     self.conf = conf
     self.logger = get_logger(conf)
     self.running = False
     self.retries_run_time = 0
     self.max_retries_per_second = int_value(
         conf.get('retries_per_second'), 30)
     self.batch_size = int_value(conf.get('batch_size'), 500)
     self.init_zmq()
     self.init_queue()
     self.init_workers()
Beispiel #6
0
    def __init__(self,
                 conf,
                 pool_manager=None,
                 request_prefix="",
                 no_ns_in_url=False,
                 endpoint=None,
                 request_attempts=REQUEST_ATTEMPTS,
                 logger=None,
                 **kwargs):
        """
        :param pool_manager: an optional pool manager that will be reused
        :type pool_manager: `urllib3.PoolManager`
        :param request_prefix: text to insert in between endpoint and
            requested URL
        :type request_prefix: `str`
        :param no_ns_in_url: do not insert namespace name between endpoint
            and `request_prefix`
        :type no_ns_in_url: `bool`
        :param request_attempts: number of attempts for the request in case of
            error 503

        :raise oio.common.exceptions.ServiceBusy: if all attempts fail
        """
        assert (request_attempts > 0)

        validate_service_conf(conf)
        self.ns = conf.get('namespace')
        self.conf = conf
        self.logger = logger or get_logger(conf)

        ep_parts = list()
        if endpoint:
            self.proxy_netloc = endpoint.lstrip("http://")
        else:
            ns_conf = load_namespace_conf(self.ns)
            self.proxy_netloc = ns_conf.get('proxy')
        ep_parts.append("http:/")
        ep_parts.append(self.proxy_netloc)

        ep_parts.append("v3.0")
        if not no_ns_in_url:
            ep_parts.append(self.ns)
        if request_prefix:
            ep_parts.append(request_prefix.lstrip('/'))

        self._request_attempts = request_attempts

        super(ProxyClient, self).__init__(endpoint='/'.join(ep_parts),
                                          **kwargs)
Beispiel #7
0
    def __init__(self,
                 conf,
                 session=None,
                 request_prefix="",
                 no_ns_in_url=False,
                 endpoint=None,
                 **kwargs):
        """
        :param session: an optional session that will be reused
        :type session: `requests.Session`
        :param request_prefix: text to insert in between endpoint and
            requested URL
        :type request_prefix: `str`
        :param no_ns_in_url: do not insert namespace name between endpoint
            and `request_prefix`
        :type no_ns_in_url: `bool`
        """
        validate_service_conf(conf)
        self.ns = conf.get('namespace')
        self.conf = conf
        self.logger = get_logger(conf)

        ep_parts = list()
        if endpoint:
            self.proxy_netloc = endpoint[7:]  # skip "http://"
            ep_parts.append(endpoint)
        else:
            ns_conf = load_namespace_conf(self.ns)
            self.proxy_netloc = ns_conf.get('proxy')
            ep_parts.append("http:/")
            ep_parts.append(self.proxy_netloc)

        ep_parts.append("v3.0")
        if not no_ns_in_url:
            ep_parts.append(self.ns)
        if request_prefix:
            ep_parts.append(request_prefix.lstrip('/'))
        super(ProxyClient, self).__init__(endpoint='/'.join(ep_parts),
                                          **kwargs)
Beispiel #8
0
 def __init__(self, conf):
     validate_service_conf(conf)
     self.conf = conf
     self.logger = get_logger(conf)
     self.load_services()
     self.init_watchers(self.conf['services'])
Beispiel #9
0
 def __init__(self, conf):
     validate_service_conf(conf)
     self.conf = conf
     self.logger = get_logger(conf)
     self.load_services()
     self.init_watchers(self.conf['services'])