protected void addReferencedDataTypeDefinitions(EndpointInterface ei) { LinkedList<Element> contextStack = new LinkedList<Element>(); contextStack.push(ei); try { for (WebMethod webMethod : ei.getWebMethods()) { addReferencedTypeDefinitions(webMethod, contextStack); } } finally { contextStack.pop(); } }
protected void addReferencedTypeDefinitions(WebFault webFault, LinkedList<Element> contextStack) { contextStack.push(webFault); try { if (webFault.isImplicitSchemaElement()) { for (ImplicitChildElement childElement : webFault.getChildElements()) { WebFault.FaultBeanChildElement fbce = (WebFault.FaultBeanChildElement) childElement; this.jaxbModule .getJaxbContext() .addReferencedTypeDefinitions( fbce.isAdapted() ? fbce.getAdapterType() : fbce.getType(), contextStack); } } else { DeclaredType faultBeanType = webFault.getExplicitFaultBeanType(); if (faultBeanType != null) { this.jaxbModule .getJaxbContext() .addReferencedTypeDefinitions(faultBeanType, contextStack); } } } finally { contextStack.pop(); } }
protected void addReferencedTypeDefinitions( WebMethod webMethod, LinkedList<Element> contextStack) { contextStack.push(webMethod); try { WebResult result = webMethod.getWebResult(); this.jaxbModule .getJaxbContext() .addReferencedTypeDefinitions( result.isAdapted() ? result.getAdapterType() : result.getType(), contextStack); for (WebParam webParam : webMethod.getWebParameters()) { this.jaxbModule .getJaxbContext() .addReferencedTypeDefinitions( webParam.isAdapted() ? webParam.getAdapterType() : webParam.getType(), contextStack); } for (WebFault webFault : webMethod.getWebFaults()) { addReferencedTypeDefinitions(webFault, contextStack); } } finally { contextStack.pop(); } }