xmlclass/xmlclass.py
changeset 1739 ec153828ded2
parent 1736 7e61baa047f0
child 1743 c3c3d1318130
equal deleted inserted replaced
1738:d2e979738700 1739:ec153828ded2
    82     def SetOffset(self, offset):
    82     def SetOffset(self, offset):
    83         if offset == "Z":
    83         if offset == "Z":
    84             self.__offset = timedelta(minutes = 0)
    84             self.__offset = timedelta(minutes = 0)
    85             self.__name = "UTC"
    85             self.__name = "UTC"
    86         else:
    86         else:
    87             sign = {"-" : -1, "+" : 1}[offset[0]]
    87             sign = {"-": -1, "+": 1}[offset[0]]
    88             hours, minutes = [int(val) for val in offset[1:].split(":")]
    88             hours, minutes = [int(val) for val in offset[1:].split(":")]
    89             self.__offset = timedelta(minutes=sign * (hours * 60 + minutes))
    89             self.__offset = timedelta(minutes=sign * (hours * 60 + minutes))
    90             self.__name = ""
    90             self.__name = ""
    91 
    91 
    92     def utcoffset(self, dt):
    92     def utcoffset(self, dt):
  1397 
  1397 
  1398 def gettypeinfos(name, facets):
  1398 def gettypeinfos(name, facets):
  1399     if facets.has_key("enumeration") and facets["enumeration"][0] is not None:
  1399     if facets.has_key("enumeration") and facets["enumeration"][0] is not None:
  1400         return facets["enumeration"][0]
  1400         return facets["enumeration"][0]
  1401     elif facets.has_key("maxInclusive"):
  1401     elif facets.has_key("maxInclusive"):
  1402         limits = {"max" : None, "min" : None}
  1402         limits = {"max": None, "min": None}
  1403         if facets["maxInclusive"][0] is not None:
  1403         if facets["maxInclusive"][0] is not None:
  1404             limits["max"] = facets["maxInclusive"][0]
  1404             limits["max"] = facets["maxInclusive"][0]
  1405         elif facets["maxExclusive"][0] is not None:
  1405         elif facets["maxExclusive"][0] is not None:
  1406             limits["max"] = facets["maxExclusive"][0] - 1
  1406             limits["max"] = facets["maxExclusive"][0] - 1
  1407         if facets["minInclusive"][0] is not None:
  1407         if facets["minInclusive"][0] is not None:
  1418         attr_list = []
  1418         attr_list = []
  1419         if classinfos.has_key("base"):
  1419         if classinfos.has_key("base"):
  1420             attr_list.extend(classinfos["base"].getElementAttributes(self))
  1420             attr_list.extend(classinfos["base"].getElementAttributes(self))
  1421         for attr in classinfos["attributes"]:
  1421         for attr in classinfos["attributes"]:
  1422             if attr["use"] != "prohibited":
  1422             if attr["use"] != "prohibited":
  1423                 attr_params = {"name" : attr["name"], "use" : attr["use"],
  1423                 attr_params = {"name": attr["name"], "use": attr["use"],
  1424                     "type" : gettypeinfos(attr["attr_type"]["basename"], attr["attr_type"]["facets"]),
  1424                     "type": gettypeinfos(attr["attr_type"]["basename"], attr["attr_type"]["facets"]),
  1425                     "value" : getattr(self, attr["name"], "")}
  1425                     "value": getattr(self, attr["name"], "")}
  1426                 attr_list.append(attr_params)
  1426                 attr_list.append(attr_params)
  1427         return attr_list
  1427         return attr_list
  1428     return getElementAttributes
  1428     return getElementAttributes
  1429 
  1429 
  1430 
  1430