/** * * @param xml * @param name */ public static void removeElements(XmlElement xml, String name) { Iterable<XmlElement> removeElements = xml.elements(null, name); LinkedList<XmlElement> removeList = new LinkedList<XmlElement>(); for (XmlElement xmlElement : removeElements) { removeList.add(xmlElement); } for (XmlElement xmlElement : removeList) { xml.removeChild(xmlElement); } Iterable children = xml.children(); for (Object object : children) { if (object instanceof XmlElement) { XmlElement element = (XmlElement) object; removeElements(element, name); } } }
/** * * @param xml * @param name */ public static void removeElements(XmlElement xml, String name) { Iterable<XmlElement> removeElements = xml.elements(null, name); LinkedList<XmlElement> removeList = new LinkedList<XmlElement>(); for (XmlElement xmlElement : removeElements) { removeList.add(xmlElement); } for (XmlElement xmlElement : removeList) { xml.removeChild(xmlElement); } Iterable children = xml.children(); for (Object object : children) { if (object instanceof XmlElement) { XmlElement element = (XmlElement) object; removeElements(element, name); } } }
public void process(WsdlDefinitions wsdl) { XmlElement types = wsdl.getTypes(); Iterable<XmlElement> schemas = types.elements(null, "schema"); LinkedList<XmlElement> removeList = new LinkedList<XmlElement>(); for (XmlElement schema : schemas) { String tns = schema.attributeValue("targetNamespace"); if (null != tns && -1 != tns.indexOf("http://www.extreme.indiana.edu/xbaya")) { } else { removeList.add(schema); } } for (XmlElement schema : removeList) { types.removeChild(schema); } types.addChild(XMLUtil.stringToXmlElement(GFacSimpleTypesXSD.XSD)); types.addChild(XMLUtil.stringToXmlElement(LeadCrosscutXSD.XSD)); types.addChild(XMLUtil.stringToXmlElement(LeadContextHeaderXSD.XSD)); XmlElement xml = wsdl.xml(); XMLUtil.removeElements(xml, "partnerLinkType"); XMLUtil.removeElements(xml, "default"); }