0001-utils-initialize-converter-when-creating-XMLSchema-3.patch
passerelle/utils/xml.py | ||
---|---|---|
94 | 94 |
self.transformer = kwargs.pop('transformer', None) |
95 | 95 |
super(TransformConverter, self).__init__(*args, **kwargs) |
96 | 96 | |
97 |
def copy(self, **kwargs): |
|
98 |
transformer = kwargs.pop('transformer', self.transformer) |
|
99 |
new = super(TransformConverter, self).copy(**kwargs) |
|
100 |
new.transformer = transformer |
|
101 |
return new |
|
102 | ||
97 | 103 |
def element_decode(self, data, xsd_element, level=0): |
98 | 104 |
if self.transformer: |
99 | 105 |
if xsd_element.type.name in getattr(self.transformer, 'type_map', {}): |
... | ... | |
126 | 132 | |
127 | 133 |
def __init__(self, xml_schema, root_element): |
128 | 134 |
if not isinstance(xml_schema, xmlschema.XMLSchema): |
129 |
xml_schema = xmlschema.XMLSchema(xml_schema) |
|
135 |
xml_schema = xmlschema.XMLSchema(xml_schema, converter=TransformConverter(transformer=self))
|
|
130 | 136 |
self.xml_schema = xml_schema |
131 | 137 |
self.root_element = root_element |
132 | 138 |
self.json_schema = { |
133 |
- |