Beispiel #1
0
    def get_serializers(self):
        serializers = odict()
        def add_serializer(cls):
            serializers[cls.get_type_name()] = cls

        if self.__in_header__ != None:
            self.__in_header__.resolve_namespace(self.__in_header__, self.get_tns())
            add_serializer(self.__in_header__)

        if self.__out_header__ != None:
            self.__out_header__.resolve_namespace(self.__out_header__, self.get_tns())
            add_serializer(self.__out_header__)

        for method in self.public_methods:
            add_serializer(method.in_message)
            add_serializer(method.out_message)

            for s in method.in_message._type_info.values():
                add_serializer(s)

            for s in method.out_message._type_info.values():
                add_serializer(s)

            if method.in_header is None:
                method.in_header = self.__in_header__
            else:
                add_serializer(method.in_header)

            if method.out_header is None:
                method.out_header = self.__out_header__
            else:
                add_serializer(method.out_header)

        return serializers
Beispiel #2
0
def etree_to_dict(element, iterable=(list, list.append)):
    if (element.text is None) or element.text.isspace():
        retval = odict()
        for elt in element:
            if not (elt.tag in retval):
                retval[elt.tag] = iterable[0]()
            iterable[1](retval[elt.tag], etree_to_dict(elt, iterable))

    else:
        retval = element.text

    return retval
Beispiel #3
0
def etree_to_dict(element, iterable=(list,list.append)):
    if (element.text is None) or element.text.isspace():
        retval = odict()
        for elt in element:
            if not (elt.tag in retval):
                retval[elt.tag] = iterable[0]()
            iterable[1](retval[elt.tag], etree_to_dict(elt, iterable))

    else:
        retval = element.text

    return retval
Beispiel #4
0
 def __init__(self, tns):
     self.namespaces = odict()
     self.imports = {}
     self.tns = tns
Beispiel #5
0
 def __init__(self):
     self.elements = odict()
     self.types = odict()
Beispiel #6
0
 def __init__(self, tns, app):
     self.namespaces = odict()
     self.imports = {}
     self.tns = tns
     self.app = app