def get_port_from_address(address): parse_result = urlparse.urlparse(address) # urlparse do not parse values like 0.0.0.0:8000, # network_utils do not parse values like http://localhost:8000, # so combine approach is using if parse_result.port: return parse_result.port else: return network_utils.parse_host_port(address)[1]
def get_port_from_address(address): parse_result = urlparse.urlparse(address) # urlparse do not parse values like 0.0.0.0:8000, # network_utils do not parse values like http://localhost:8000, # so combine approach is using if parse_result.port: return parse_result.port else: return network_utils.parse_host_port(address)[1]
def __init__(self, conf, server_params=None): self.consumers = [] self.consumer_thread = None self.proxy_callbacks = [] self.conf = conf self.max_retries = self.conf.rabbit_max_retries # Try forever? if self.max_retries <= 0: self.max_retries = None self.interval_start = self.conf.rabbit_retry_interval self.interval_stepping = self.conf.rabbit_retry_backoff # max retry-interval = 30 seconds self.interval_max = 30 self.memory_transport = False if server_params is None: server_params = {} # Keys to translate from server_params to kombu params server_params_to_kombu_params = {'username': '******'} ssl_params = self._fetch_ssl_params() params_list = [] for adr in self.conf.rabbit_hosts: hostname, port = network_utils.parse_host_port( adr, default_port=self.conf.rabbit_port) params = { 'hostname': hostname, 'port': port, 'userid': self.conf.rabbit_userid, 'password': self.conf.rabbit_password, 'virtual_host': self.conf.rabbit_virtual_host, } for sp_key, value in server_params.iteritems(): p_key = server_params_to_kombu_params.get(sp_key, sp_key) params[p_key] = value if self.conf.fake_rabbit: params['transport'] = 'memory' if self.conf.rabbit_use_ssl: params['ssl'] = ssl_params params_list.append(params) self.params_list = params_list self.memory_transport = self.conf.fake_rabbit self.connection = None self.reconnect()