Welcome to mirror list, hosted at ThFree Co, Russian Federation.

dev.gajim.org/gajim/gajim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/resolver.py')
-rw-r--r--src/common/resolver.py36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/common/resolver.py b/src/common/resolver.py
index efcfc0b78..0be528f38 100644
--- a/src/common/resolver.py
+++ b/src/common/resolver.py
@@ -34,7 +34,7 @@ host_pattern = re.compile('^[a-z0-9\-._]*[a-z0-9]\.[a-z]{2,}$')
try:
#raise ImportError("Manually disabled libasync")
- import libasyncns
+ import libasyncns
USE_LIBASYNCNS = True
log.info("libasyncns-python loaded")
except ImportError:
@@ -75,7 +75,7 @@ class CommonResolver():
return
if self.handlers.has_key(host+type):
# host is about to be resolved by another connection,
- # attach our callback
+ # attach our callback
self.handlers[host+type].append(on_ready)
else:
# host has never been resolved, start now
@@ -97,10 +97,10 @@ class CommonResolver():
# FIXME: API usage is not consistent! This one requires that process is called
class LibAsyncNSResolver(CommonResolver):
'''
- Asynchronous resolver using libasyncns-python. process() method has to be
+ Asynchronous resolver using libasyncns-python. process() method has to be
called in order to proceed the pending requests.
- Based on patch submitted by Damien Thebault.
- '''
+ Based on patch submitted by Damien Thebault.
+ '''
def __init__(self):
self.asyncns = libasyncns.Asyncns()
CommonResolver.__init__(self)
@@ -163,16 +163,16 @@ class NSLookupResolver(CommonResolver):
self.idlequeue = idlequeue
self.process = False
CommonResolver.__init__(self)
-
+
def parse_srv_result(self, fqdn, result):
- ''' parse the output of nslookup command and return list of
+ ''' parse the output of nslookup command and return list of
properties: 'host', 'port','weight', 'priority' corresponding to the found
srv hosts '''
if os.name == 'nt':
return self._parse_srv_result_nt(fqdn, result)
elif os.name == 'posix':
return self._parse_srv_result_posix(fqdn, result)
-
+
def _parse_srv_result_nt(self, fqdn, result):
# output from win32 nslookup command
if not result:
@@ -195,7 +195,7 @@ class NSLookupResolver(CommonResolver):
hosts.append(current_host)
current_host = None
continue
- prop_type = res[0].strip()
+ prop_type = res[0].strip()
prop_value = res[1].strip()
if prop_type.find('prio') > -1:
try:
@@ -221,7 +221,7 @@ class NSLookupResolver(CommonResolver):
hosts.append(current_host)
current_host = None
return hosts
-
+
def _parse_srv_result_posix(self, fqdn, result):
# typical output of bind-tools nslookup command:
# _xmpp-client._tcp.jabber.org service = 30 30 5222 jabber.org.
@@ -261,12 +261,12 @@ class NSLookupResolver(CommonResolver):
hosts.append({'host': host, 'port': port, 'weight': weight,
'prio': prio})
return hosts
-
+
def _on_ready(self, host, type, result):
# nslookup finished, parse the result and call the handlers
result_list = self.parse_srv_result(host, result)
CommonResolver._on_ready(self, host, type, result_list)
-
+
def start_resolve(self, host, type):
''' spawn new nslookup process and start waiting for results '''
ns = NsLookup(self._on_ready, host, type)
@@ -278,7 +278,7 @@ class NSLookupResolver(CommonResolver):
class NsLookup(IdleCommand):
def __init__(self, on_result, host='_xmpp-client', type='srv'):
IdleCommand.__init__(self, on_result)
- self.commandtimeout = 10
+ self.commandtimeout = 10
self.host = host.lower()
self.type = type.lower()
if not host_pattern.match(self.host):
@@ -290,24 +290,24 @@ class NsLookup(IdleCommand):
log.error('Invalid querytype: %s' % self.type)
self.canexecute = False
return
-
+
def _compose_command_args(self):
return ['nslookup', '-type=' + self.type , self.host]
-
+
def _return_result(self):
if self.result_handler:
self.result_handler(self.host, self.type, self.result)
self.result_handler = None
-
+
# below lines is on how to use API and assist in testing
if __name__ == '__main__':
import gobject
import gtk
from xmpp import idlequeue
-
+
idlequeue = idlequeue.get_idlequeue()
resolver = get_resolver(idlequeue)
-
+
def clicked(widget):
global resolver
host = text_view.get_text()