From 7e1dc8a1a5a3369bd253dfd4e37322571fc4704d Mon Sep 17 00:00:00 2001 From: Jakub Stasiak Date: Tue, 17 May 2016 21:09:36 +0200 Subject: [PATCH] greendns: Reduce code redundancy This list of module dependencies are already present in the code three times and I intend to make a change that will require the same dependencies reused even more. This patch is contributed by Smarkets Limited. --- eventlet/support/greendns.py | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/eventlet/support/greendns.py b/eventlet/support/greendns.py index 7a23bb4..896db7b 100644 --- a/eventlet/support/greendns.py +++ b/eventlet/support/greendns.py @@ -42,23 +42,21 @@ from eventlet.green import select from eventlet.support import six -dns = patcher.import_patched('dns', - select=select, - time=time, - os=os, - socket=_socket_nodns) -dns.resolver = patcher.import_patched('dns.resolver', - select=select, - time=time, - os=os, - socket=_socket_nodns) +def import_patched(module_name): + return patcher.import_patched(module_name, + select=select, + time=time, + os=os, + socket=_socket_nodns) + + +dns = import_patched('dns') +dns.resolver = import_patched('dns.resolver') for pkg in ('dns.entropy', 'dns.inet', 'dns.query'): - setattr(dns, pkg.split('.')[1], patcher.import_patched(pkg, - select=select, - time=time, - os=os, - socket=_socket_nodns)) + setattr(dns, pkg.split('.')[1], import_patched(pkg)) +del import_patched + import dns.rdtypes for pkg in ['dns.rdtypes.IN', 'dns.rdtypes.ANY']: setattr(dns.rdtypes, pkg.split('.')[-1], patcher.import_patched(pkg))