home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2012 January / maximum-cd-2012-01.iso / DiscContents / digsby_setup.exe / lib / ZSI / TCapache.pyo (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2011-10-05  |  2.5 KB  |  83 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.6)
  3.  
  4. from ZSI import _copyright, _child_elements, _get_idstr
  5. from ZSI.TC import TypeCode, Struct as _Struct, Any as _Any
  6.  
  7. class Apache:
  8.     NS = 'http://xml.apache.org/xml-soap'
  9.  
  10.  
  11. class _Map(TypeCode):
  12.     parselist = [
  13.         (Apache.NS, 'Map')]
  14.     
  15.     def __init__(self, pname = None, aslist = 0, **kw):
  16.         TypeCode.__init__(self, pname, **kw)
  17.         self.aslist = aslist
  18.         self.tc = _Struct(None, [
  19.             _Any('key'),
  20.             _Any('value')], inline = 1)
  21.  
  22.     
  23.     def parse(self, elt, ps):
  24.         self.checkname(elt, ps)
  25.         if self.nilled(elt, ps):
  26.             return None
  27.         p = self.tc.parse
  28.         if self.aslist:
  29.             v = []
  30.             for c in _child_elements(elt):
  31.                 d = p(c, ps)
  32.                 v.append((d['key'], d['value']))
  33.             
  34.         else:
  35.             v = { }
  36.             for c in _child_elements(elt):
  37.                 d = p(c, ps)
  38.                 v[d['key']] = d['value']
  39.             
  40.         return v
  41.  
  42.     
  43.     def serialize(self, elt, sw, pyobj, name = None, **kw):
  44.         objid = _get_idstr(pyobj)
  45.         if not name and self.pname:
  46.             pass
  47.         n = 'E' + objid
  48.         el = elt.createAppendElement(self.nspname, n)
  49.         if self.nillable is True and pyobj is None:
  50.             self.serialize_as_nil(el)
  51.             return None
  52.         self.set_attributes(el, pyobj)
  53.         if not self.unique:
  54.             pass
  55.         unique = kw.get('unique', False)
  56.         if unique is False:
  57.             if not orig:
  58.                 pass
  59.             if sw.Known(pyobj):
  60.                 self.set_attribute_href(el, objid)
  61.                 return None
  62.         if self.unique is False:
  63.             self.set_attribute_id(el, objid)
  64.         
  65.         if self.aslist:
  66.             for k, v in pyobj:
  67.                 self.tc.serialize(el, sw, {
  68.                     'key': k,
  69.                     'value': v }, name = 'item')
  70.             
  71.         else:
  72.             for k, v in pyobj.items():
  73.                 self.tc.serialize(el, sw, {
  74.                     'key': k,
  75.                     'value': v }, name = 'item')
  76.             
  77.  
  78.  
  79. Apache.Map = _Map
  80. if __name__ == '__main__':
  81.     print _copyright
  82.  
  83.