8889841có ‹Oc@sgdZddlZddlZddlZejjdƒZed„Zee d„Z dd„Z dS(s‚DNS E.164 helpers @var public_enum_domain: The DNS public ENUM domain, e164.arpa. @type public_enum_domain: dns.name.Name object iÿÿÿÿNs e164.arpa.cCsNg|D]}|jƒr|^q}|jƒtjjdj|ƒd|ƒS(suConvert an E.164 number in textual form into a Name object whose value is the ENUM domain name for that number. @param text: an E.164 number in textual form. @type text: str @param origin: The domain in which the number should be constructed. The default is e164.arpa. @type origin: dns.name.Name object or None @rtype: dns.name.Name object t.torigin(tisdigittreversetdnstnamet from_texttjoin(ttextRtdtparts((s./usr/lib64/python2.7/site-packages/dns/e164.pyt from_e164s % cCs¸|dk r|j|ƒ}ng|jD]*}|jƒr(t|ƒdkr(|^q(}t|ƒt|jƒkrˆtjjdƒ‚n|jƒdj |ƒ}|r´d|}n|S(s¨Convert an ENUM domain name into an E.164 number. @param name: the ENUM domain name. @type name: dns.name.Name object. @param origin: A domain containing the ENUM domain name. The name is relativized to this domain before being converted to text. @type origin: dns.name.Name object or None @param want_plus_prefix: if True, add a '+' to the beginning of the returned number. @rtype: str is$non-digit labels in ENUM domain namett+N( tNonet relativizetlabelsRtlenRt exceptiont SyntaxErrorRR(RRtwant_plus_prefixR tdlabelsR((s./usr/lib64/python2.7/site-packages/dns/e164.pytto_e164*s :  cCs¬|dkrtjjƒ}nx{|D]s}t|ttfƒrUtjj|ƒ}ntj j ||ƒ}y|j |dƒSWq%tjj k r—q%Xq%Wtjj ‚dS(s‘Look for NAPTR RRs for the specified number in the specified domains. e.g. lookup('16505551212', ['e164.dnspython.org.', 'e164.arpa.']) tNAPTRN( RRtresolvertget_default_resolvert isinstancetstrtunicodeRRte164R tquerytNXDOMAIN(tnumbertdomainsRtdomaintqname((s./usr/lib64/python2.7/site-packages/dns/e164.pyR@s  ( t__doc__t dns.exceptionRtdns.namet dns.resolverRRtpublic_enum_domainR tTrueRRR(((s./usr/lib64/python2.7/site-packages/dns/e164.pyts