Skip to content

Commit

Permalink
Merge ea8dc3c into 4d3522f
Browse files Browse the repository at this point in the history
  • Loading branch information
MisterMX committed Jan 7, 2020
2 parents 4d3522f + ea8dc3c commit dd92c0a
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 52 deletions.
3 changes: 1 addition & 2 deletions src/parser/element.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
var g = require('../globalize');
var assert = require('assert');
var QName = require('./qname');
var typeRegistry = require('./typeRegistry');
var helper = require('./helper');
var xsd = require('./xsd');
var debug = require('debug')('strong-soap:wsdl:element');
Expand Down Expand Up @@ -77,7 +76,7 @@ class Element {
}
}

startElement(stack, nsName, attrs, options) {
startElement(stack, nsName, attrs, options, typeRegistry) {
if (!this.constructor.allowedChildren)
return;

Expand Down
97 changes: 48 additions & 49 deletions src/parser/typeRegistry.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,53 +42,53 @@
var helper = require('./helper');

var elementTypes = [
'./xsd/all',
'./xsd/annotation',
'./xsd/any',
'./xsd/anyAttribute',
'./xsd/attribute',
'./xsd/attributeGroup',
'./xsd/choice',
'./xsd/complexContent',
'./xsd/complexType',
'./xsd/documentation',
'./xsd/element',
'./xsd/unique',
'./xsd/key',
'./xsd/keyref',
'./xsd/extension',
'./xsd/group',
'./xsd/import',
'./xsd/include',
'./xsd/restriction',
'./xsd/sequence',
'./xsd/simpleContent',
'./xsd/simpleType',
'./xsd/list',
'./xsd/union',
'./xsd/schema',
'./wsdl/binding',
'./wsdl/definitions',
'./wsdl/fault',
'./wsdl/import',
'./wsdl/input',
'./wsdl/message',
'./wsdl/operation',
'./wsdl/output',
'./wsdl/part',
'./wsdl/port',
'./wsdl/portType',
'./wsdl/service',
'./wsdl/types',
'./wsdl/documentation',
'./soap/body',
'./soap/header',
'./soap/headerFault',
'./soap/fault',
'./soap12/body',
'./soap12/header',
'./soap12/headerFault',
'./soap12/fault'
require('./xsd/all'),
require('./xsd/annotation'),
require('./xsd/any'),
require('./xsd/anyAttribute'),
require('./xsd/attribute'),
require('./xsd/attributeGroup'),
require('./xsd/choice'),
require('./xsd/complexContent'),
require('./xsd/complexType'),
require('./xsd/documentation'),
require('./xsd/element'),
require('./xsd/unique'),
require('./xsd/key'),
require('./xsd/keyref'),
require('./xsd/extension'),
require('./xsd/group'),
require('./xsd/import'),
require('./xsd/include'),
require('./xsd/restriction'),
require('./xsd/sequence'),
require('./xsd/simpleContent'),
require('./xsd/simpleType'),
require('./xsd/list'),
require('./xsd/union'),
require('./xsd/schema'),
require('./wsdl/binding'),
require('./wsdl/definitions'),
require('./wsdl/fault'),
require('./wsdl/import'),
require('./wsdl/input'),
require('./wsdl/message'),
require('./wsdl/operation'),
require('./wsdl/output'),
require('./wsdl/part'),
require('./wsdl/port'),
require('./wsdl/portType'),
require('./wsdl/service'),
require('./wsdl/types'),
require('./wsdl/documentation'),
require('./soap/body'),
require('./soap/header'),
require('./soap/headerFault'),
require('./soap/fault'),
require('./soap12/body'),
require('./soap12/header'),
require('./soap12/headerFault'),
require('./soap12/fault')
];

var registry;
Expand All @@ -101,8 +101,7 @@ function getRegistry() {
elementTypes: {},
elementTypesByName: {}
};
elementTypes.forEach(function(t) {
var type = require(t);
elementTypes.forEach(function(type) {
registry.elementTypes['{' + type.targetNamespace + '}' + type.elementName] = type;
registry.elementTypesByName[type.elementName] = type;
});
Expand Down
3 changes: 2 additions & 1 deletion src/parser/wsdl.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ var debugInclude = require('debug')('strong-soap:wsdl:include');
var _ = require('lodash');
var selectn = require('selectn');
var utils = require('./helper');
var typeRegistry = require('./typeRegistry');
var EMPTY_PREFIX = utils.EMPTY_PREFIX;

var QName = require('./qname');
Expand Down Expand Up @@ -308,7 +309,7 @@ class WSDL {
var name;
if (top) {
try {
top.startElement(stack, nsName, attrs, options);
top.startElement(stack, nsName, attrs, options, typeRegistry);
} catch (e) {
debug("WSDL error: %s ", e.message);
if (self.options.strict) {
Expand Down

0 comments on commit dd92c0a

Please sign in to comment.