home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
- import dns.exception as dns
- import dns.rdata as dns
- import dns.tokenizer as dns
-
- class ISDN(dns.rdata.Rdata):
- __slots__ = [
- 'address',
- 'subaddress']
-
- def __init__(self, rdclass, rdtype, address, subaddress):
- super(ISDN, self).__init__(rdclass, rdtype)
- self.address = address
- self.subaddress = subaddress
-
-
- def to_text(self, origin = None, relativize = True, **kw):
- if self.subaddress:
- return '"%s" "%s"' % (dns.rdata._escapify(self.address), dns.rdata._escapify(self.subaddress))
- return '"%s"' % dns.rdata._escapify(self.address)
-
-
- def from_text(cls, rdclass, rdtype, tok, origin = None, relativize = True):
- address = tok.get_string()
- t = tok.get()
- if t[0] != dns.tokenizer.EOL and t[0] != dns.tokenizer.EOF:
- tok.unget(t)
- subaddress = tok.get_string()
- else:
- tok.unget(t)
- subaddress = ''
- tok.get_eol()
- return cls(rdclass, rdtype, address, subaddress)
-
- from_text = classmethod(from_text)
-
- def to_wire(self, file, compress = None, origin = None):
- l = len(self.address)
- byte = chr(l)
- file.write(byte)
- file.write(self.address)
- l = len(self.subaddress)
- if l > 0:
- byte = chr(l)
- file.write(byte)
- file.write(self.subaddress)
-
-
-
- def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin = None):
- l = ord(wire[current])
- current += 1
- rdlen -= 1
- if l > rdlen:
- raise dns.exception.FormError
- l > rdlen
- address = wire[current:current + l]
- current += l
- rdlen -= l
- if rdlen > 0:
- l = ord(wire[current])
- current += 1
- rdlen -= 1
- if l != rdlen:
- raise dns.exception.FormError
- l != rdlen
- subaddress = wire[current:current + l]
- else:
- subaddress = ''
- return cls(rdclass, rdtype, address, subaddress)
-
- from_wire = classmethod(from_wire)
-
- def _cmp(self, other):
- v = cmp(self.address, other.address)
- if v == 0:
- v = cmp(self.subaddress, other.subaddress)
-
- return v
-
-
-