Definitions definitions,
Element e) {
context.push();
context.registerNamespaces(e);
Port port = new Port(definitions, forest.locatorTable.getStartLocation(e), errReceiver);
String name = Util.getRequiredAttribute(e, Constants.ATTR_NAME);
port.setName(name);
String bindingAttr =
Util.getRequiredAttribute(e, Constants.ATTR_BINDING);
port.setBinding(context.translateQualifiedName(context.getLocation(e), bindingAttr));
boolean gotDocumentation = false;
for (Iterator iter = XmlUtil.getAllChildren(e); iter.hasNext();) {
Element e2 = Util.nextElement(iter);
if (e2 == null)
break;
if (XmlUtil.matchesTagNS(e2, WSDLConstants.QNAME_DOCUMENTATION)) {
if (gotDocumentation) {
errReceiver.error(forest.locatorTable.getStartLocation(e), WsdlMessages.PARSING_ONLY_ONE_DOCUMENTATION_ALLOWED(e.getLocalName()));
}
gotDocumentation = true;
if(port.getDocumentation() == null)
port.setDocumentation(getDocumentationFor(e2));
} else {
// possible extensibility element -- must live outside the WSDL namespace
checkNotWsdlElement(e2);
if (!handleExtension(context, port, e2)) {
checkNotWsdlRequired(e2);