[Twisted-Python] Handeling unresolved DNS queries?
exarkun at twistedmatrix.com
exarkun at twistedmatrix.com
Sun Oct 25 10:47:32 MDT 2009
On 24 Oct, 08:04 pm, jesper at taxboel.dk wrote:
>Im looking at the common.py and I feel a bit confused about how to wrap
>a
>resolver.
>
>Would'nt a subclass achieve the same thing. I would only need to
>implement
>the changed functions in the subclass.
>
>I guess my problem is that I dont exactly know how to write a wrapper
>in
>python.
There's nothing special to it. Just do the obvious thing:
class SomeWrapper:
def __init__(self, wrapee):
self.wrapee = wrapee
def someMethod(self, args):
do something with self.wrapee.someMethod and args
common.py will show you all the methods that a resolver is expected to
have. Subclassing ResolverBase might help, though it's unfortunate that
it works by demultiplexing everything to "_lookup", a private method
that Twisted's compatibility policy doesn't guarantee will continue to
operate as it presently does.
Wrapping (ie "containment" or "has-a") is just an alternative
implementation strategy to subclassing (ie "inheritance" or "is-a").
Generally it's a better approach for various reasons, none of which are
really specific to Twisted.
Jean-Paul
More information about the Twisted-Python
mailing list