diff options
author | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2009-07-21 07:03:47 +0000 |
---|---|---|
committer | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2009-07-21 07:03:47 +0000 |
commit | ab6904bc2f622129bc548391745b08eb0c219e57 (patch) | |
tree | 5c7599119182bfa8e65c0d6605e933396aedffd2 /java/sca/modules/interface-wsdl | |
parent | 8d70ef6d556ad29b93d5d40e91c4c9304638c9e9 (diff) |
Fix svn:eol-style and svn:keywords properties for java/xml files
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@796166 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
33 files changed, 2480 insertions, 2480 deletions
diff --git a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/BPELPartnerLinkTypeExt.java b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/BPELPartnerLinkTypeExt.java index 0d6f23e732..26404958e8 100644 --- a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/BPELPartnerLinkTypeExt.java +++ b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/BPELPartnerLinkTypeExt.java @@ -1,79 +1,79 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.tuscany.sca.interfacedef.wsdl;
-
-import javax.wsdl.extensions.ExtensibilityElement;
-import javax.xml.namespace.QName;
-
-/**
- * A class to serve as the extensibility element for BPEL partnerLinkType elements
- *
- * @version $Rev$ $Date$
- */
-public class BPELPartnerLinkTypeExt implements ExtensibilityElement {
-
- private QName elementType = null;
- private String linkTypeName = null;
- private String[] roleNames = new String[2];
- private QName[] rolePortTypes = new QName[2];
-
- // -- methods required by the Extensibility Element interface
- public QName getElementType() {
- return elementType;
- }
-
- public Boolean getRequired() {
- return true;
- }
-
- public void setElementType(QName theName ) {
- elementType = theName;
- }
-
- public void setRequired(Boolean required) {
- // intentionally left blank
- }
-
- // -- other methods
-
- public void setName( String theName ) {
- linkTypeName = theName;
- }
-
- public String getName() {
- return linkTypeName;
- }
-
- public void setRole( int i, String name, QName portType ) {
- if( i > 1 ) return;
- roleNames[i] = name;
- rolePortTypes[i] = portType;
- }
-
- public String getRoleName( int i ) {
- if( i > 1 ) return null;
- return roleNames[i];
- }
-
- public QName getRolePortType( int i ) {
- if( i > 1 ) return null;
- return rolePortTypes[i];
- }
-
-} // end BPELPartnerLinkTypeExt
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.tuscany.sca.interfacedef.wsdl; + +import javax.wsdl.extensions.ExtensibilityElement; +import javax.xml.namespace.QName; + +/** + * A class to serve as the extensibility element for BPEL partnerLinkType elements + * + * @version $Rev$ $Date$ + */ +public class BPELPartnerLinkTypeExt implements ExtensibilityElement { + + private QName elementType = null; + private String linkTypeName = null; + private String[] roleNames = new String[2]; + private QName[] rolePortTypes = new QName[2]; + + // -- methods required by the Extensibility Element interface + public QName getElementType() { + return elementType; + } + + public Boolean getRequired() { + return true; + } + + public void setElementType(QName theName ) { + elementType = theName; + } + + public void setRequired(Boolean required) { + // intentionally left blank + } + + // -- other methods + + public void setName( String theName ) { + linkTypeName = theName; + } + + public String getName() { + return linkTypeName; + } + + public void setRole( int i, String name, QName portType ) { + if( i > 1 ) return; + roleNames[i] = name; + rolePortTypes[i] = portType; + } + + public String getRoleName( int i ) { + if( i > 1 ) return null; + return roleNames[i]; + } + + public QName getRolePortType( int i ) { + if( i > 1 ) return null; + return rolePortTypes[i]; + } + +} // end BPELPartnerLinkTypeExt diff --git a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/BPELExtensionHandler.java b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/BPELExtensionHandler.java index 0983c604b7..6007989321 100644 --- a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/BPELExtensionHandler.java +++ b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/BPELExtensionHandler.java @@ -1,142 +1,142 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import java.io.PrintWriter;
-
-import javax.wsdl.Definition;
-import javax.wsdl.WSDLException;
-import javax.wsdl.extensions.ExtensibilityElement;
-import javax.wsdl.extensions.ExtensionDeserializer;
-import javax.wsdl.extensions.ExtensionRegistry;
-import javax.wsdl.extensions.ExtensionSerializer;
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.wsdl.BPELPartnerLinkTypeExt;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-/**
- * A WSDL extension processor for extension elements introduced by BPEL - in particular
- * the <partnerLinkType.../> elements
- *
- * Handles both BPEL 1.1 and BPEL 2.0 version of the <partnerLinkType/>
- * @version $Rev$ $Date$
- */
-public class BPELExtensionHandler implements ExtensionSerializer, ExtensionDeserializer {
-
- private final String localName = "partnerLinkType";
- private final String roleName = "role";
-
- /**
- * Marshals the BPEL partner link type extension element to XML
- * See (@link javax.wsdl.extensions.ExtensionSerializer)
- */
- @SuppressWarnings("unchecked")
- public void marshall(Class parentType, QName elementType, ExtensibilityElement theElement,
- PrintWriter writer, Definition def, ExtensionRegistry extReg)
- throws WSDLException {
- // The format of the Partner Link Type in XML is as follows:
- // <foo:partnerLinkType name="bar">
- // <foo:role name="somename" portType="xyz:portTypeName"/>
- // <foo:role name="othername" portType="xyz:portTypeName2"/>
- // <foo:partnerLinkType>
- BPELPartnerLinkTypeExt thePLinkType = (BPELPartnerLinkTypeExt) theElement;
- QName theType = thePLinkType.getElementType();
-
- writer.println("<" + theType.toString() +
- " name=\"" + thePLinkType.getName() + "\">");
- for( int i = 0; i < 2; i++ ) {
- if( thePLinkType.getRoleName( i ) != null ) {
- writer.println( "<" + theType.getPrefix() + ":role"
- + " name=\"" + thePLinkType.getRoleName(i) + "\" portType=\""
- + thePLinkType.getRolePortType(i) + "\">");
- } // end if
- } // end for
- writer.println("</" + theType.toString() + ">");
- } // end marshall
-
- /**
- * Unmarshals the BPEL partner link type element from XML
- * See (@link javax.wsdl.extensions.ExtensionDeserializer)
- * The format of the Partner Link Type in XML is as follows:
- * <foo:partnerLinkType name="bar">
- * <foo:role name="somename" portType="xyz:portTypeName"/>
- * <foo:role name="othername" portType="xyz:portTypeName2"/>
- * <foo:partnerLinkType>
- *
- * One role is mandatory, the second is optional.
- */
- @SuppressWarnings("unchecked")
- public ExtensibilityElement unmarshall(Class theClass, QName elementType,
- Element theElement, Definition def, ExtensionRegistry extReg)
- throws WSDLException {
-
- // Check that this elementType really is a partnerLinkType element
- if( !elementType.getLocalPart().equals(localName) ) return null;
- BPELPartnerLinkTypeExt theExtension = new BPELPartnerLinkTypeExt();
- theExtension.setElementType(elementType);
- theExtension.setName( theElement.getAttribute("name") );
-
- // Fetch the child "role" elements
- NodeList theRoles = theElement.getElementsByTagNameNS("*", roleName);
- for ( int i=0; i < theRoles.getLength(); i++ ) {
- if( i > 1 ) break;
- Element roleNode = (Element)theRoles.item(i);
- String roleName = roleNode.getAttribute("name");
- String portType = roleNode.getAttribute("portType");
- if (portType == null || portType.length() == 0) {
- // Fetch the child "portType" element
- NodeList portTypesNodes = roleNode.getElementsByTagNameNS("*", "portType");
- for (int p = 0; p < portTypesNodes.getLength(); p++) {
- Element portTypeNode = (Element)portTypesNodes.item(p);
- portType = portTypeNode.getAttribute("name");
- break;
- }
- }
- // The PortType attribute is a QName in prefix:localName format - convert to a QName
- QName rolePortType = getQNameValue( def, portType );
- theExtension.setRole( i, roleName, rolePortType );
- } // end for
- return theExtension;
- } // end unmarshall
-
-
- /**
- * Returns a QName from a string.
- * @param definition - a WSDL Definition
- * @param value - the String from which to form the QName in the form "pref:localName"
- * @return
- */
- protected QName getQNameValue(Definition definition, String value) {
- if (value != null && definition != null) {
- int index = value.indexOf(':');
- String prefix = index == -1 ? "" : value.substring(0, index);
- String localName = index == -1 ? value : value.substring(index + 1);
- String ns = definition.getNamespace(prefix);
- if (ns == null) {
- ns = "";
- }
- return new QName(ns, localName, prefix);
- } else {
- return null;
- }
- } // end getQNameValue
-
-} // end BPELExtensionHandler
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import java.io.PrintWriter; + +import javax.wsdl.Definition; +import javax.wsdl.WSDLException; +import javax.wsdl.extensions.ExtensibilityElement; +import javax.wsdl.extensions.ExtensionDeserializer; +import javax.wsdl.extensions.ExtensionRegistry; +import javax.wsdl.extensions.ExtensionSerializer; +import javax.xml.namespace.QName; + +import org.apache.tuscany.sca.interfacedef.wsdl.BPELPartnerLinkTypeExt; +import org.w3c.dom.Element; +import org.w3c.dom.NodeList; + +/** + * A WSDL extension processor for extension elements introduced by BPEL - in particular + * the <partnerLinkType.../> elements + * + * Handles both BPEL 1.1 and BPEL 2.0 version of the <partnerLinkType/> + * @version $Rev$ $Date$ + */ +public class BPELExtensionHandler implements ExtensionSerializer, ExtensionDeserializer { + + private final String localName = "partnerLinkType"; + private final String roleName = "role"; + + /** + * Marshals the BPEL partner link type extension element to XML + * See (@link javax.wsdl.extensions.ExtensionSerializer) + */ + @SuppressWarnings("unchecked") + public void marshall(Class parentType, QName elementType, ExtensibilityElement theElement, + PrintWriter writer, Definition def, ExtensionRegistry extReg) + throws WSDLException { + // The format of the Partner Link Type in XML is as follows: + // <foo:partnerLinkType name="bar"> + // <foo:role name="somename" portType="xyz:portTypeName"/> + // <foo:role name="othername" portType="xyz:portTypeName2"/> + // <foo:partnerLinkType> + BPELPartnerLinkTypeExt thePLinkType = (BPELPartnerLinkTypeExt) theElement; + QName theType = thePLinkType.getElementType(); + + writer.println("<" + theType.toString() + + " name=\"" + thePLinkType.getName() + "\">"); + for( int i = 0; i < 2; i++ ) { + if( thePLinkType.getRoleName( i ) != null ) { + writer.println( "<" + theType.getPrefix() + ":role" + + " name=\"" + thePLinkType.getRoleName(i) + "\" portType=\"" + + thePLinkType.getRolePortType(i) + "\">"); + } // end if + } // end for + writer.println("</" + theType.toString() + ">"); + } // end marshall + + /** + * Unmarshals the BPEL partner link type element from XML + * See (@link javax.wsdl.extensions.ExtensionDeserializer) + * The format of the Partner Link Type in XML is as follows: + * <foo:partnerLinkType name="bar"> + * <foo:role name="somename" portType="xyz:portTypeName"/> + * <foo:role name="othername" portType="xyz:portTypeName2"/> + * <foo:partnerLinkType> + * + * One role is mandatory, the second is optional. + */ + @SuppressWarnings("unchecked") + public ExtensibilityElement unmarshall(Class theClass, QName elementType, + Element theElement, Definition def, ExtensionRegistry extReg) + throws WSDLException { + + // Check that this elementType really is a partnerLinkType element + if( !elementType.getLocalPart().equals(localName) ) return null; + BPELPartnerLinkTypeExt theExtension = new BPELPartnerLinkTypeExt(); + theExtension.setElementType(elementType); + theExtension.setName( theElement.getAttribute("name") ); + + // Fetch the child "role" elements + NodeList theRoles = theElement.getElementsByTagNameNS("*", roleName); + for ( int i=0; i < theRoles.getLength(); i++ ) { + if( i > 1 ) break; + Element roleNode = (Element)theRoles.item(i); + String roleName = roleNode.getAttribute("name"); + String portType = roleNode.getAttribute("portType"); + if (portType == null || portType.length() == 0) { + // Fetch the child "portType" element + NodeList portTypesNodes = roleNode.getElementsByTagNameNS("*", "portType"); + for (int p = 0; p < portTypesNodes.getLength(); p++) { + Element portTypeNode = (Element)portTypesNodes.item(p); + portType = portTypeNode.getAttribute("name"); + break; + } + } + // The PortType attribute is a QName in prefix:localName format - convert to a QName + QName rolePortType = getQNameValue( def, portType ); + theExtension.setRole( i, roleName, rolePortType ); + } // end for + return theExtension; + } // end unmarshall + + + /** + * Returns a QName from a string. + * @param definition - a WSDL Definition + * @param value - the String from which to form the QName in the form "pref:localName" + * @return + */ + protected QName getQNameValue(Definition definition, String value) { + if (value != null && definition != null) { + int index = value.indexOf(':'); + String prefix = index == -1 ? "" : value.substring(0, index); + String localName = index == -1 ? value : value.substring(index + 1); + String ns = definition.getNamespace(prefix); + if (ns == null) { + ns = ""; + } + return new QName(ns, localName, prefix); + } else { + return null; + } + } // end getQNameValue + +} // end BPELExtensionHandler diff --git a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLConstants.java b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLConstants.java index 7d48dc62bd..b1c431c19d 100644 --- a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLConstants.java +++ b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLConstants.java @@ -1,38 +1,38 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import javax.xml.namespace.QName;
-
-/**
- * Constants for WSDL.
- *
- * @version $Rev: 750765 $ $Date: 2009-03-06 04:36:04 +0000 (Fri, 06 Mar 2009) $
- */
-public interface WSDLConstants {
- String SCA11_NS = "http://docs.oasis-open.org/ns/opencsa/sca/200903";
- String INTERFACE_WSDL = "interface.wsdl";
- QName INTERFACE_WSDL_QNAME = new QName(SCA11_NS, "interface.wsdl");
- String INTERFACE = "interface";
- String CALLBACK_INTERFACE = "callbackInterface";
- String WSDL_LOCATION = "wsdlLocation";
- String WSDLI_NS = "http://www.w3.org/2004/08/wsdl-instance";
- QName WSDL_LOCATION_QNAME = new QName(WSDLI_NS, WSDL_LOCATION);
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import javax.xml.namespace.QName; + +/** + * Constants for WSDL. + * + * @version $Rev$ $Date$ + */ +public interface WSDLConstants { + String SCA11_NS = "http://docs.oasis-open.org/ns/opencsa/sca/200903"; + String INTERFACE_WSDL = "interface.wsdl"; + QName INTERFACE_WSDL_QNAME = new QName(SCA11_NS, "interface.wsdl"); + String INTERFACE = "interface"; + String CALLBACK_INTERFACE = "callbackInterface"; + String WSDL_LOCATION = "wsdlLocation"; + String WSDLI_NS = "http://www.w3.org/2004/08/wsdl-instance"; + QName WSDL_LOCATION_QNAME = new QName(WSDLI_NS, WSDL_LOCATION); + +} diff --git a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessor.java b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessor.java index c169214e44..11e8472166 100644 --- a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessor.java +++ b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessor.java @@ -1,233 +1,233 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URI;
-import java.net.URL;
-import java.util.List;
-
-import javax.wsdl.Definition;
-import javax.wsdl.Import;
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamConstants;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
-import org.apache.tuscany.sca.contribution.processor.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLFactory;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.Problem;
-import org.apache.tuscany.sca.monitor.Problem.Severity;
-import org.apache.tuscany.sca.xsd.XSDFactory;
-import org.apache.tuscany.sca.xsd.XSDefinition;
-
-/**
- * An ArtifactProcessor for WSDL documents.
- *
- * @version $Rev: 709339 $ $Date: 2008-10-31 04:01:44 +0000 (Fri, 31 Oct 2008) $
- */
-public class WSDLDocumentProcessor implements URLArtifactProcessor<WSDLDefinition> {
-
- public static final QName WSDL11 = new QName("http://schemas.xmlsoap.org/wsdl/", "definitions");
- public static final QName WSDL11_IMPORT = new QName("http://schemas.xmlsoap.org/wsdl/", "import");
- public static final QName XSD = new QName("http://www.w3.org/2001/XMLSchema", "schema");
-
- private XMLInputFactory inputFactory;
-
- private WSDLFactory factory;
- private XSDFactory xsdFactory;
- private Monitor monitor;
-
- public WSDLDocumentProcessor(FactoryExtensionPoint modelFactories, Monitor monitor) {
- this.factory = modelFactories.getFactory(WSDLFactory.class);
- this.xsdFactory = modelFactories.getFactory(XSDFactory.class);
- this.inputFactory = modelFactories.getFactory(XMLInputFactory.class);
- this.monitor = monitor;
- }
-
- /**
- * Report a exception.
- *
- * @param problems
- * @param message
- * @param model
- */
- private void error(String message, Object model, Exception ex) {
- if (monitor != null) {
- Problem problem = monitor.createProblem(this.getClass().getName(), "interface-wsdlxml-validation-messages", Severity.ERROR, model, message, ex);
- monitor.problem(problem);
- }
- }
-
- public WSDLDefinition read(URL contributionURL, URI artifactURI, URL artifactURL) throws ContributionReadException {
- try {
- WSDLDefinition definition = indexRead(artifactURL);
- definition.setURI(artifactURI);
- return definition;
- } catch (Exception e) {
- ContributionReadException ce = new ContributionReadException(e);
- error("ContributionReadException", artifactURL, ce);
- //throw ce;
- return null;
- }
- }
-
- public void resolve(WSDLDefinition model, ModelResolver resolver) throws ContributionResolveException {
- if (model == null) return;
-
- Definition definition = model.getDefinition();
- if (definition != null) {
- for (Object imports : definition.getImports().values()) {
- List importList = (List)imports;
- for (Object i : importList) {
- Import imp = (Import)i;
- if (imp.getDefinition() != null) {
- continue;
- }
- if (imp.getLocationURI() == null) {
- // FIXME: [rfeng] By the WSDL 1.1 Specification, the location attribute is required
- // We need to resolve it by QName
- WSDLDefinition proxy = factory.createWSDLDefinition();
- proxy.setUnresolved(true);
- proxy.setNamespace(imp.getNamespaceURI());
- WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, proxy);
- if (resolved != null && !resolved.isUnresolved()) {
- imp.setDefinition(resolved.getDefinition());
- if (!model.getImportedDefinitions().contains(resolved)) {
- model.getImportedDefinitions().add(resolved);
- }
- }
- } else {
- String location = imp.getLocationURI();
- if (location.indexOf(' ') != -1) {
- location = location.replace(" ", "%20");
- }
- URI uri = URI.create(location);
- if (uri.isAbsolute()) {
- WSDLDefinition resolved;
- try {
- resolved = read(null, uri, uri.toURL());
- imp.setDefinition(resolved.getDefinition());
- if (!model.getImportedDefinitions().contains(resolved)) {
- model.getImportedDefinitions().add(resolved);
- }
- } catch (Exception e) {
- ContributionResolveException ce = new ContributionResolveException(e);
- error("ContributionResolveException", resolver, ce);
- //throw ce;
- }
- } else {
- if (location.startsWith("/")) {
- // This is a relative URI against a contribution
- location = location.substring(1);
- // TODO: Need to resolve it against the contribution
- } else {
- // This is a relative URI against the WSDL document
- URI baseURI = URI.create(model.getDefinition().getDocumentBaseURI());
- URI locationURI = baseURI.resolve(location);
- WSDLDefinition resolved;
- try {
- resolved = read(null, locationURI, locationURI.toURL());
- imp.setDefinition(resolved.getDefinition());
- if (!model.getImportedDefinitions().contains(resolved)) {
- model.getImportedDefinitions().add(resolved);
- }
- } catch (Exception e) {
- ContributionResolveException ce = new ContributionResolveException(e);
- error("ContributionResolveException", resolver, ce);
- //throw ce;
- }
- }
- }
- }
- }
- }
- }
- }
-
- public String getArtifactType() {
- return ".wsdl";
- }
-
- public Class<WSDLDefinition> getModelType() {
- return WSDLDefinition.class;
- }
-
- /**
- * Read the namespace for the WSDL definition and inline schemas
- *
- * @param doc
- * @return
- * @throws IOException
- * @throws XMLStreamException
- */
- protected WSDLDefinition indexRead(URL doc) throws Exception {
- WSDLDefinition wsdlDefinition = factory.createWSDLDefinition();
- wsdlDefinition.setUnresolved(true);
- wsdlDefinition.setLocation(doc.toURI());
-
- InputStream is = doc.openStream();
- try {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
- int eventType = reader.getEventType();
- int index = 0;
- while (true) {
- if (eventType == XMLStreamConstants.START_ELEMENT) {
- if (WSDL11.equals(reader.getName())) {
- String tns = reader.getAttributeValue(null, "targetNamespace");
- wsdlDefinition.setNamespace(tns);
- // The definition is marked as resolved but not loaded
- wsdlDefinition.setUnresolved(false);
- wsdlDefinition.setDefinition(null);
- }
- if (XSD.equals(reader.getName())) {
- String tns = reader.getAttributeValue(null, "targetNamespace");
- XSDefinition xsd = xsdFactory.createXSDefinition();
- xsd.setUnresolved(true);
- xsd.setNamespace(tns);
- xsd.setLocation(URI.create(doc.toURI() + "#" + index));
- index++;
- // The definition is marked as resolved but not loaded
- xsd.setUnresolved(false);
- xsd.setSchema(null);
- wsdlDefinition.getXmlSchemas().add(xsd);
- }
- }
- if (reader.hasNext()) {
- eventType = reader.next();
- } else {
- break;
- }
- }
- return wsdlDefinition;
- } finally {
- is.close();
- }
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import java.io.IOException; +import java.io.InputStream; +import java.net.URI; +import java.net.URL; +import java.util.List; + +import javax.wsdl.Definition; +import javax.wsdl.Import; +import javax.xml.namespace.QName; +import javax.xml.stream.XMLInputFactory; +import javax.xml.stream.XMLStreamConstants; +import javax.xml.stream.XMLStreamException; +import javax.xml.stream.XMLStreamReader; + +import org.apache.tuscany.sca.contribution.processor.ContributionReadException; +import org.apache.tuscany.sca.contribution.processor.ContributionResolveException; +import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor; +import org.apache.tuscany.sca.contribution.resolver.ModelResolver; +import org.apache.tuscany.sca.core.FactoryExtensionPoint; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLFactory; +import org.apache.tuscany.sca.monitor.Monitor; +import org.apache.tuscany.sca.monitor.Problem; +import org.apache.tuscany.sca.monitor.Problem.Severity; +import org.apache.tuscany.sca.xsd.XSDFactory; +import org.apache.tuscany.sca.xsd.XSDefinition; + +/** + * An ArtifactProcessor for WSDL documents. + * + * @version $Rev$ $Date$ + */ +public class WSDLDocumentProcessor implements URLArtifactProcessor<WSDLDefinition> { + + public static final QName WSDL11 = new QName("http://schemas.xmlsoap.org/wsdl/", "definitions"); + public static final QName WSDL11_IMPORT = new QName("http://schemas.xmlsoap.org/wsdl/", "import"); + public static final QName XSD = new QName("http://www.w3.org/2001/XMLSchema", "schema"); + + private XMLInputFactory inputFactory; + + private WSDLFactory factory; + private XSDFactory xsdFactory; + private Monitor monitor; + + public WSDLDocumentProcessor(FactoryExtensionPoint modelFactories, Monitor monitor) { + this.factory = modelFactories.getFactory(WSDLFactory.class); + this.xsdFactory = modelFactories.getFactory(XSDFactory.class); + this.inputFactory = modelFactories.getFactory(XMLInputFactory.class); + this.monitor = monitor; + } + + /** + * Report a exception. + * + * @param problems + * @param message + * @param model + */ + private void error(String message, Object model, Exception ex) { + if (monitor != null) { + Problem problem = monitor.createProblem(this.getClass().getName(), "interface-wsdlxml-validation-messages", Severity.ERROR, model, message, ex); + monitor.problem(problem); + } + } + + public WSDLDefinition read(URL contributionURL, URI artifactURI, URL artifactURL) throws ContributionReadException { + try { + WSDLDefinition definition = indexRead(artifactURL); + definition.setURI(artifactURI); + return definition; + } catch (Exception e) { + ContributionReadException ce = new ContributionReadException(e); + error("ContributionReadException", artifactURL, ce); + //throw ce; + return null; + } + } + + public void resolve(WSDLDefinition model, ModelResolver resolver) throws ContributionResolveException { + if (model == null) return; + + Definition definition = model.getDefinition(); + if (definition != null) { + for (Object imports : definition.getImports().values()) { + List importList = (List)imports; + for (Object i : importList) { + Import imp = (Import)i; + if (imp.getDefinition() != null) { + continue; + } + if (imp.getLocationURI() == null) { + // FIXME: [rfeng] By the WSDL 1.1 Specification, the location attribute is required + // We need to resolve it by QName + WSDLDefinition proxy = factory.createWSDLDefinition(); + proxy.setUnresolved(true); + proxy.setNamespace(imp.getNamespaceURI()); + WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, proxy); + if (resolved != null && !resolved.isUnresolved()) { + imp.setDefinition(resolved.getDefinition()); + if (!model.getImportedDefinitions().contains(resolved)) { + model.getImportedDefinitions().add(resolved); + } + } + } else { + String location = imp.getLocationURI(); + if (location.indexOf(' ') != -1) { + location = location.replace(" ", "%20"); + } + URI uri = URI.create(location); + if (uri.isAbsolute()) { + WSDLDefinition resolved; + try { + resolved = read(null, uri, uri.toURL()); + imp.setDefinition(resolved.getDefinition()); + if (!model.getImportedDefinitions().contains(resolved)) { + model.getImportedDefinitions().add(resolved); + } + } catch (Exception e) { + ContributionResolveException ce = new ContributionResolveException(e); + error("ContributionResolveException", resolver, ce); + //throw ce; + } + } else { + if (location.startsWith("/")) { + // This is a relative URI against a contribution + location = location.substring(1); + // TODO: Need to resolve it against the contribution + } else { + // This is a relative URI against the WSDL document + URI baseURI = URI.create(model.getDefinition().getDocumentBaseURI()); + URI locationURI = baseURI.resolve(location); + WSDLDefinition resolved; + try { + resolved = read(null, locationURI, locationURI.toURL()); + imp.setDefinition(resolved.getDefinition()); + if (!model.getImportedDefinitions().contains(resolved)) { + model.getImportedDefinitions().add(resolved); + } + } catch (Exception e) { + ContributionResolveException ce = new ContributionResolveException(e); + error("ContributionResolveException", resolver, ce); + //throw ce; + } + } + } + } + } + } + } + } + + public String getArtifactType() { + return ".wsdl"; + } + + public Class<WSDLDefinition> getModelType() { + return WSDLDefinition.class; + } + + /** + * Read the namespace for the WSDL definition and inline schemas + * + * @param doc + * @return + * @throws IOException + * @throws XMLStreamException + */ + protected WSDLDefinition indexRead(URL doc) throws Exception { + WSDLDefinition wsdlDefinition = factory.createWSDLDefinition(); + wsdlDefinition.setUnresolved(true); + wsdlDefinition.setLocation(doc.toURI()); + + InputStream is = doc.openStream(); + try { + XMLStreamReader reader = inputFactory.createXMLStreamReader(is); + int eventType = reader.getEventType(); + int index = 0; + while (true) { + if (eventType == XMLStreamConstants.START_ELEMENT) { + if (WSDL11.equals(reader.getName())) { + String tns = reader.getAttributeValue(null, "targetNamespace"); + wsdlDefinition.setNamespace(tns); + // The definition is marked as resolved but not loaded + wsdlDefinition.setUnresolved(false); + wsdlDefinition.setDefinition(null); + } + if (XSD.equals(reader.getName())) { + String tns = reader.getAttributeValue(null, "targetNamespace"); + XSDefinition xsd = xsdFactory.createXSDefinition(); + xsd.setUnresolved(true); + xsd.setNamespace(tns); + xsd.setLocation(URI.create(doc.toURI() + "#" + index)); + index++; + // The definition is marked as resolved but not loaded + xsd.setUnresolved(false); + xsd.setSchema(null); + wsdlDefinition.getXmlSchemas().add(xsd); + } + } + if (reader.hasNext()) { + eventType = reader.next(); + } else { + break; + } + } + return wsdlDefinition; + } finally { + is.close(); + } + } + +} diff --git a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLInterfaceProcessor.java b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLInterfaceProcessor.java index cfba9f3519..d33f52b1dc 100644 --- a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLInterfaceProcessor.java +++ b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLInterfaceProcessor.java @@ -1,284 +1,284 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-
-import javax.wsdl.PortType;
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
-import org.apache.tuscany.sca.contribution.processor.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.processor.ContributionWriteException;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLFactory;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterfaceContract;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLObject;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.Problem;
-import org.apache.tuscany.sca.monitor.Problem.Severity;
-
-/**
- *
- * @version $Rev: 750323 $ $Date: 2009-03-05 05:52:01 +0000 (Thu, 05 Mar 2009) $
- */
-public class WSDLInterfaceProcessor implements StAXArtifactProcessor<WSDLInterfaceContract>, WSDLConstants {
-
- private WSDLFactory wsdlFactory;
- private Monitor monitor;
-
- public WSDLInterfaceProcessor(FactoryExtensionPoint modelFactories, Monitor monitor) {
- this.wsdlFactory = modelFactories.getFactory(WSDLFactory.class);
- this.monitor = monitor;
- }
-
- /**
- * Report a warning.
- *
- * @param problems
- * @param message
- * @param model
- */
- private void warning(String message, Object model, Object... messageParameters) {
- if (monitor != null) {
- Problem problem = monitor.createProblem(this.getClass().getName(), "interface-wsdlxml-validation-messages", Severity.WARNING, model, message, (Object[])messageParameters);
- monitor.problem(problem);
- }
- }
-
- /**
- * Report a error.
- *
- * @param problems
- * @param message
- * @param model
- */
- private void error(String message, Object model, Object... messageParameters) {
- if (monitor != null) {
- Problem problem = monitor.createProblem(this.getClass().getName(), "interface-wsdlxml-validation-messages", Severity.ERROR, model, message, (Object[])messageParameters);
- monitor.problem(problem);
- }
- }
-
- /**
- * Report a exception.
- *
- * @param problems
- * @param message
- * @param model
- */
- private void error(String message, Object model, Exception ex) {
- if (monitor != null) {
- Problem problem = monitor.createProblem(this.getClass().getName(), "interface-wsdlxml-validation-messages", Severity.ERROR, model, message, ex);
- monitor.problem(problem);
- }
- }
-
- /**
- * Create a WSDL interface from a URI.
- * @param uri - the URI in the form nameSpace#wsdl.interface(porttypeName) or nameSpace#wsdl.porttype(porttypeName)
- * @return a WSDLInterface object
- * @throws ContributionReadException
- */
- private static String FRAGMENT_INTERFACE = "wsdl.interface";
- private static String FRAGMENT_PORTTYPE = "wsdl.porttype";
- private WSDLInterface createWSDLInterface(String uri) throws ContributionReadException {
-
- WSDLInterface wsdlInterface = null;
-
- // Read a QName in the form:
- // namespace#wsdl.interface(name)
- int index = uri.indexOf('#');
- if (index == -1) {
- error("InvalidWSDLInterfaceAttr", wsdlFactory, uri);
- //throw new ContributionReadException("Invalid WSDL interface attribute: " + uri);
- } else {
- // Read the URI and extract namespace and fragment
- String namespace = uri.substring(0, index);
- String name = uri.substring(index + 1);
- String porttype = null;
- if( name.contains(FRAGMENT_INTERFACE)) {
- // Deal with the case where #wsdl.interface is used
- porttype = name.substring("wsdl.interface(".length(), name.length() - 1);
- } // end if
- if( name.contains(FRAGMENT_PORTTYPE)) {
- // Deal with the case where #wsdl.porttype is used
- porttype = name.substring("wsdl.porttype(".length(), name.length() - 1);
- } // end if
- if( porttype == null ) {
- error("InvalidWSDLInterfaceAttr", wsdlFactory, uri);
- return null;
- } // end if
- wsdlInterface = wsdlFactory.createWSDLInterface();
- wsdlInterface.setUnresolved(true);
- wsdlInterface.setName(new QName(namespace, porttype));
- } // end if
-
- return wsdlInterface;
- } // end method createWSDLInterface
-
- /**
- * Creates a WSDLInterfaceContract from a <interface.wsdl/> element in a SCDL file
- *
- * The form of the <interface.wsdl/> element is as follows:
- *
- * <interface.wsdl interface="http://sampleNamespace#wsdl.interface(porttypeName)"
- * callbackInterface="http://sampleNamespace#wsdl.porttype(callbackPorttypeName)"/>
- * where interface = URI pointing to the WSDL document containing a WSDL interface or porttype for the forward call interface
- * callbackInterface = URI pointing to the WSDL document containing a WSDL interface or porttype for the callback interface
- *
- * @param reader - XMLStreamReader holding the <interface.wsdl/> element
- * @return - the WSDLInterfaceContract
- */
- public WSDLInterfaceContract read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- // Read an <interface.wsdl>
- WSDLInterfaceContract wsdlInterfaceContract = wsdlFactory.createWSDLInterfaceContract();
-
- // Read wsdlLocation
- String location = reader.getAttributeValue(WSDLI_NS, WSDL_LOCATION);
- wsdlInterfaceContract.setLocation(location);
-
- String uri = reader.getAttributeValue(null, INTERFACE);
- if (uri != null) {
- WSDLInterface wsdlInterface = createWSDLInterface(uri);
- if (wsdlInterface != null)
- wsdlInterfaceContract.setInterface(wsdlInterface);
- }
-
- uri = reader.getAttributeValue(null, CALLBACK_INTERFACE);
- if (uri != null) {
- WSDLInterface wsdlCallbackInterface = createWSDLInterface(uri);
- if (wsdlCallbackInterface != null)
- wsdlInterfaceContract.setCallbackInterface(wsdlCallbackInterface);
- }
-
- // Skip to end element
- while (reader.hasNext()) {
- if (reader.next() == END_ELEMENT && INTERFACE_WSDL_QNAME.equals(reader.getName())) {
- break;
- }
- }
- return wsdlInterfaceContract;
- }
-
- public void write(WSDLInterfaceContract wsdlInterfaceContract, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException {
- // Write an <interface.wsdl>
- writer.writeStartElement(WSDLConstants.SCA11_NS, INTERFACE_WSDL);
-
- // Write interface name
- WSDLInterface wsdlInterface = (WSDLInterface)wsdlInterfaceContract.getInterface();
- if (wsdlInterface != null) {
- QName qname = wsdlInterface.getName();
- String uri = qname.getNamespaceURI() + "#wsdl.interface(" + qname.getLocalPart() + ")";
- writer.writeAttribute(INTERFACE, uri);
- }
-
- WSDLInterface wsdlCallbackInterface = (WSDLInterface)wsdlInterfaceContract.getCallbackInterface();
- if (wsdlCallbackInterface != null) {
- QName qname = wsdlCallbackInterface.getName();
- String uri = qname.getNamespaceURI() + "#wsdl.interface(" + qname.getLocalPart() + ")";
- writer.writeAttribute(CALLBACK_INTERFACE, uri);
- }
-
- // Write location
- if (wsdlInterfaceContract.getLocation() != null) {
- writer.writeAttribute(WSDLI_NS, WSDL_LOCATION, wsdlInterfaceContract.getLocation());
- }
-
- writer.writeEndElement();
- }
-
- private WSDLInterface resolveWSDLInterface(WSDLInterface wsdlInterface, ModelResolver resolver) throws ContributionResolveException {
-
- if (wsdlInterface != null && wsdlInterface.isUnresolved()) {
-
- // Resolve the WSDL interface
- wsdlInterface = resolver.resolveModel(WSDLInterface.class, wsdlInterface);
- if (wsdlInterface.isUnresolved()) {
-
- // If the WSDL interface has never been resolved yet, do it now
- // First, resolve the WSDL definition for the given namespace
- WSDLDefinition wsdlDefinition = wsdlFactory.createWSDLDefinition();
- wsdlDefinition.setUnresolved(true);
- wsdlDefinition.setNamespace(wsdlInterface.getName().getNamespaceURI());
- WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, wsdlDefinition);
- if (!resolved.isUnresolved()) {
- wsdlDefinition.setDefinition(resolved.getDefinition());
- wsdlDefinition.setLocation(resolved.getLocation());
- wsdlDefinition.setURI(resolved.getURI());
- wsdlDefinition.getImportedDefinitions().addAll(resolved.getImportedDefinitions());
- wsdlDefinition.getXmlSchemas().addAll(resolved.getXmlSchemas());
- wsdlDefinition.setUnresolved(false);
- WSDLObject<PortType> portType = wsdlDefinition.getWSDLObject(PortType.class, wsdlInterface.getName());
- if (portType != null) {
- // Introspect the WSDL portType and add the resulting
- // WSDLInterface to the resolver
- try {
- wsdlDefinition.setDefinition(portType.getDefinition());
- wsdlInterface = wsdlFactory.createWSDLInterface(portType.getElement(), wsdlDefinition, resolver);
- wsdlInterface.setWsdlDefinition(wsdlDefinition);
- resolver.addModel(wsdlInterface);
- } catch (InvalidInterfaceException e) {
- ContributionResolveException ce = new ContributionResolveException("Invalid interface when resolving " +
- portType.toString(), e);
- error("ContributionResolveException", wsdlFactory, ce);
- //throw ce;
- }
- }
- else {
- warning("WsdlInterfaceDoesNotMatch", wsdlDefinition, wsdlInterface.getName());
- } // end if
- } else {
- // If we get here, the WSDLDefinition is unresolved...
- ContributionResolveException ce = new ContributionResolveException("WSDLDefinition unresolved " +
- wsdlInterface.getName().getNamespaceURI() );
- error("ContributionResolveException", wsdlFactory, ce);
- }// end if
- } // end if
- } // end if
- return wsdlInterface;
- }
-
- public void resolve(WSDLInterfaceContract wsdlInterfaceContract, ModelResolver resolver) throws ContributionResolveException {
-
- // Resolve the interface and callback interface
- WSDLInterface wsdlInterface = resolveWSDLInterface((WSDLInterface)wsdlInterfaceContract.getInterface(), resolver);
- wsdlInterfaceContract.setInterface(wsdlInterface);
-
- WSDLInterface wsdlCallbackInterface = resolveWSDLInterface((WSDLInterface)wsdlInterfaceContract.getCallbackInterface(), resolver);
- wsdlInterfaceContract.setCallbackInterface(wsdlCallbackInterface);
- }
-
- public QName getArtifactType() {
- return WSDLConstants.INTERFACE_WSDL_QNAME;
- }
-
- public Class<WSDLInterfaceContract> getModelType() {
- return WSDLInterfaceContract.class;
- }
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import static javax.xml.stream.XMLStreamConstants.END_ELEMENT; + +import javax.wsdl.PortType; +import javax.xml.namespace.QName; +import javax.xml.stream.XMLStreamException; +import javax.xml.stream.XMLStreamReader; +import javax.xml.stream.XMLStreamWriter; + +import org.apache.tuscany.sca.contribution.processor.ContributionReadException; +import org.apache.tuscany.sca.contribution.processor.ContributionResolveException; +import org.apache.tuscany.sca.contribution.processor.ContributionWriteException; +import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor; +import org.apache.tuscany.sca.contribution.resolver.ModelResolver; +import org.apache.tuscany.sca.core.FactoryExtensionPoint; +import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLFactory; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterfaceContract; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLObject; +import org.apache.tuscany.sca.monitor.Monitor; +import org.apache.tuscany.sca.monitor.Problem; +import org.apache.tuscany.sca.monitor.Problem.Severity; + +/** + * + * @version $Rev$ $Date$ + */ +public class WSDLInterfaceProcessor implements StAXArtifactProcessor<WSDLInterfaceContract>, WSDLConstants { + + private WSDLFactory wsdlFactory; + private Monitor monitor; + + public WSDLInterfaceProcessor(FactoryExtensionPoint modelFactories, Monitor monitor) { + this.wsdlFactory = modelFactories.getFactory(WSDLFactory.class); + this.monitor = monitor; + } + + /** + * Report a warning. + * + * @param problems + * @param message + * @param model + */ + private void warning(String message, Object model, Object... messageParameters) { + if (monitor != null) { + Problem problem = monitor.createProblem(this.getClass().getName(), "interface-wsdlxml-validation-messages", Severity.WARNING, model, message, (Object[])messageParameters); + monitor.problem(problem); + } + } + + /** + * Report a error. + * + * @param problems + * @param message + * @param model + */ + private void error(String message, Object model, Object... messageParameters) { + if (monitor != null) { + Problem problem = monitor.createProblem(this.getClass().getName(), "interface-wsdlxml-validation-messages", Severity.ERROR, model, message, (Object[])messageParameters); + monitor.problem(problem); + } + } + + /** + * Report a exception. + * + * @param problems + * @param message + * @param model + */ + private void error(String message, Object model, Exception ex) { + if (monitor != null) { + Problem problem = monitor.createProblem(this.getClass().getName(), "interface-wsdlxml-validation-messages", Severity.ERROR, model, message, ex); + monitor.problem(problem); + } + } + + /** + * Create a WSDL interface from a URI. + * @param uri - the URI in the form nameSpace#wsdl.interface(porttypeName) or nameSpace#wsdl.porttype(porttypeName) + * @return a WSDLInterface object + * @throws ContributionReadException + */ + private static String FRAGMENT_INTERFACE = "wsdl.interface"; + private static String FRAGMENT_PORTTYPE = "wsdl.porttype"; + private WSDLInterface createWSDLInterface(String uri) throws ContributionReadException { + + WSDLInterface wsdlInterface = null; + + // Read a QName in the form: + // namespace#wsdl.interface(name) + int index = uri.indexOf('#'); + if (index == -1) { + error("InvalidWSDLInterfaceAttr", wsdlFactory, uri); + //throw new ContributionReadException("Invalid WSDL interface attribute: " + uri); + } else { + // Read the URI and extract namespace and fragment + String namespace = uri.substring(0, index); + String name = uri.substring(index + 1); + String porttype = null; + if( name.contains(FRAGMENT_INTERFACE)) { + // Deal with the case where #wsdl.interface is used + porttype = name.substring("wsdl.interface(".length(), name.length() - 1); + } // end if + if( name.contains(FRAGMENT_PORTTYPE)) { + // Deal with the case where #wsdl.porttype is used + porttype = name.substring("wsdl.porttype(".length(), name.length() - 1); + } // end if + if( porttype == null ) { + error("InvalidWSDLInterfaceAttr", wsdlFactory, uri); + return null; + } // end if + wsdlInterface = wsdlFactory.createWSDLInterface(); + wsdlInterface.setUnresolved(true); + wsdlInterface.setName(new QName(namespace, porttype)); + } // end if + + return wsdlInterface; + } // end method createWSDLInterface + + /** + * Creates a WSDLInterfaceContract from a <interface.wsdl/> element in a SCDL file + * + * The form of the <interface.wsdl/> element is as follows: + * + * <interface.wsdl interface="http://sampleNamespace#wsdl.interface(porttypeName)" + * callbackInterface="http://sampleNamespace#wsdl.porttype(callbackPorttypeName)"/> + * where interface = URI pointing to the WSDL document containing a WSDL interface or porttype for the forward call interface + * callbackInterface = URI pointing to the WSDL document containing a WSDL interface or porttype for the callback interface + * + * @param reader - XMLStreamReader holding the <interface.wsdl/> element + * @return - the WSDLInterfaceContract + */ + public WSDLInterfaceContract read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException { + // Read an <interface.wsdl> + WSDLInterfaceContract wsdlInterfaceContract = wsdlFactory.createWSDLInterfaceContract(); + + // Read wsdlLocation + String location = reader.getAttributeValue(WSDLI_NS, WSDL_LOCATION); + wsdlInterfaceContract.setLocation(location); + + String uri = reader.getAttributeValue(null, INTERFACE); + if (uri != null) { + WSDLInterface wsdlInterface = createWSDLInterface(uri); + if (wsdlInterface != null) + wsdlInterfaceContract.setInterface(wsdlInterface); + } + + uri = reader.getAttributeValue(null, CALLBACK_INTERFACE); + if (uri != null) { + WSDLInterface wsdlCallbackInterface = createWSDLInterface(uri); + if (wsdlCallbackInterface != null) + wsdlInterfaceContract.setCallbackInterface(wsdlCallbackInterface); + } + + // Skip to end element + while (reader.hasNext()) { + if (reader.next() == END_ELEMENT && INTERFACE_WSDL_QNAME.equals(reader.getName())) { + break; + } + } + return wsdlInterfaceContract; + } + + public void write(WSDLInterfaceContract wsdlInterfaceContract, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException { + // Write an <interface.wsdl> + writer.writeStartElement(WSDLConstants.SCA11_NS, INTERFACE_WSDL); + + // Write interface name + WSDLInterface wsdlInterface = (WSDLInterface)wsdlInterfaceContract.getInterface(); + if (wsdlInterface != null) { + QName qname = wsdlInterface.getName(); + String uri = qname.getNamespaceURI() + "#wsdl.interface(" + qname.getLocalPart() + ")"; + writer.writeAttribute(INTERFACE, uri); + } + + WSDLInterface wsdlCallbackInterface = (WSDLInterface)wsdlInterfaceContract.getCallbackInterface(); + if (wsdlCallbackInterface != null) { + QName qname = wsdlCallbackInterface.getName(); + String uri = qname.getNamespaceURI() + "#wsdl.interface(" + qname.getLocalPart() + ")"; + writer.writeAttribute(CALLBACK_INTERFACE, uri); + } + + // Write location + if (wsdlInterfaceContract.getLocation() != null) { + writer.writeAttribute(WSDLI_NS, WSDL_LOCATION, wsdlInterfaceContract.getLocation()); + } + + writer.writeEndElement(); + } + + private WSDLInterface resolveWSDLInterface(WSDLInterface wsdlInterface, ModelResolver resolver) throws ContributionResolveException { + + if (wsdlInterface != null && wsdlInterface.isUnresolved()) { + + // Resolve the WSDL interface + wsdlInterface = resolver.resolveModel(WSDLInterface.class, wsdlInterface); + if (wsdlInterface.isUnresolved()) { + + // If the WSDL interface has never been resolved yet, do it now + // First, resolve the WSDL definition for the given namespace + WSDLDefinition wsdlDefinition = wsdlFactory.createWSDLDefinition(); + wsdlDefinition.setUnresolved(true); + wsdlDefinition.setNamespace(wsdlInterface.getName().getNamespaceURI()); + WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, wsdlDefinition); + if (!resolved.isUnresolved()) { + wsdlDefinition.setDefinition(resolved.getDefinition()); + wsdlDefinition.setLocation(resolved.getLocation()); + wsdlDefinition.setURI(resolved.getURI()); + wsdlDefinition.getImportedDefinitions().addAll(resolved.getImportedDefinitions()); + wsdlDefinition.getXmlSchemas().addAll(resolved.getXmlSchemas()); + wsdlDefinition.setUnresolved(false); + WSDLObject<PortType> portType = wsdlDefinition.getWSDLObject(PortType.class, wsdlInterface.getName()); + if (portType != null) { + // Introspect the WSDL portType and add the resulting + // WSDLInterface to the resolver + try { + wsdlDefinition.setDefinition(portType.getDefinition()); + wsdlInterface = wsdlFactory.createWSDLInterface(portType.getElement(), wsdlDefinition, resolver); + wsdlInterface.setWsdlDefinition(wsdlDefinition); + resolver.addModel(wsdlInterface); + } catch (InvalidInterfaceException e) { + ContributionResolveException ce = new ContributionResolveException("Invalid interface when resolving " + + portType.toString(), e); + error("ContributionResolveException", wsdlFactory, ce); + //throw ce; + } + } + else { + warning("WsdlInterfaceDoesNotMatch", wsdlDefinition, wsdlInterface.getName()); + } // end if + } else { + // If we get here, the WSDLDefinition is unresolved... + ContributionResolveException ce = new ContributionResolveException("WSDLDefinition unresolved " + + wsdlInterface.getName().getNamespaceURI() ); + error("ContributionResolveException", wsdlFactory, ce); + }// end if + } // end if + } // end if + return wsdlInterface; + } + + public void resolve(WSDLInterfaceContract wsdlInterfaceContract, ModelResolver resolver) throws ContributionResolveException { + + // Resolve the interface and callback interface + WSDLInterface wsdlInterface = resolveWSDLInterface((WSDLInterface)wsdlInterfaceContract.getInterface(), resolver); + wsdlInterfaceContract.setInterface(wsdlInterface); + + WSDLInterface wsdlCallbackInterface = resolveWSDLInterface((WSDLInterface)wsdlInterfaceContract.getCallbackInterface(), resolver); + wsdlInterfaceContract.setCallbackInterface(wsdlCallbackInterface); + } + + public QName getArtifactType() { + return WSDLConstants.INTERFACE_WSDL_QNAME; + } + + public Class<WSDLInterfaceContract> getModelType() { + return WSDLInterfaceContract.class; + } +} diff --git a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLModelResolver.java b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLModelResolver.java index 35b4c4f240..2e14c4885c 100644 --- a/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLModelResolver.java +++ b/java/sca/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLModelResolver.java @@ -73,7 +73,7 @@ import org.xml.sax.InputSource; /** * A Model Resolver for WSDL models. * - * @version $Rev: 557916 $ $Date: 2007-07-20 01:04:40 -0700 (Fri, 20 Jul 2007) $ + * @version $Rev$ $Date$ */ public class WSDLModelResolver implements ModelResolver { //Schema element names diff --git a/java/sca/modules/interface-wsdl/src/main/resources/interface-wsdlxml-validation-messages.properties b/java/sca/modules/interface-wsdl/src/main/resources/interface-wsdlxml-validation-messages.properties index 5af757be4b..2f8c3e0500 100644 --- a/java/sca/modules/interface-wsdl/src/main/resources/interface-wsdlxml-validation-messages.properties +++ b/java/sca/modules/interface-wsdl/src/main/resources/interface-wsdlxml-validation-messages.properties @@ -1,24 +1,24 @@ -#
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-#
-ContributionReadException = ContributionReadException occured due to :
-ContributionResolveException = ContributionResolveException occured due to :
-InvalidWSDLInterfaceAttr = Invalid WSDL interface attribute: {0}
+# +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +# +ContributionReadException = ContributionReadException occured due to : +ContributionResolveException = ContributionResolveException occured due to : +InvalidWSDLInterfaceAttr = Invalid WSDL interface attribute: {0} WsdlInterfaceDoesNotMatch = The #wsdl.interface({0}) specified does not match with WSDL Definitions
\ No newline at end of file diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLInterfaceIntrospectorTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLInterfaceIntrospectorTestCase.java index bd8f1c5e56..1fff109389 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLInterfaceIntrospectorTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLInterfaceIntrospectorTestCase.java @@ -1,83 +1,83 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.introspect;
-
-import java.net.URI;
-import java.net.URL;
-import java.util.List;
-
-import javax.wsdl.PortType;
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.util.XMLType;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface;
-import org.apache.tuscany.sca.interfacedef.wsdl.xml.AbstractWSDLTestCase;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * Test case for InterfaceWSDLIntrospectorImpl.
- *
- * @version $Rev: 656600 $ $Date: 2008-05-15 12:57:26 +0100 (Thu, 15 May 2008) $
- */
-public class WSDLInterfaceIntrospectorTestCase extends AbstractWSDLTestCase {
- private static final QName PORTTYPE_NAME = new QName("http://example.com/stockquote.wsdl", "StockQuotePortType");
-
- private PortType portType;
- private WSDLDefinition definition;
-
- @Override
- @Before
- public void setUp() throws Exception {
- super.setUp();
-
- URL url = getClass().getResource("../xml/stockquote.wsdl");
- definition = (WSDLDefinition)documentProcessor.read(null, new URI("stockquote.wsdl"), url);
- resolver.addModel(definition);
- definition = resolver.resolveModel(WSDLDefinition.class, definition);
- portType = definition.getDefinition().getPortType(PORTTYPE_NAME);
- }
-
- @Test
- @SuppressWarnings("unchecked")
- public final void testIntrospectPortType() throws InvalidInterfaceException {
- WSDLInterface contract = wsdlFactory.createWSDLInterface(portType, definition, resolver);
- Assert.assertEquals(contract.getName().getLocalPart(), "StockQuotePortType");
- List<Operation> operations = contract.getOperations();
- Assert.assertEquals(1, operations.size());
- Operation operation = operations.get(0);
- Assert.assertEquals("getLastTradePrice", operation.getName());
- DataType<List<DataType>> inputType = operation.getInputType();
- Assert.assertEquals(1, inputType.getLogical().size());
- DataType<XMLType> returnType = operation.getOutputType();
- Assert.assertNotNull(returnType);
- Assert.assertEquals(0, operation.getFaultTypes().size());
- // Assert.assertEquals(1,
- // operation.getWrapper().getInputChildElements().size());
- // Assert.assertEquals(1,
- // operation.getWrapper().getOutputChildElements().size());
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.introspect; + +import java.net.URI; +import java.net.URL; +import java.util.List; + +import javax.wsdl.PortType; +import javax.xml.namespace.QName; + +import org.apache.tuscany.sca.interfacedef.DataType; +import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException; +import org.apache.tuscany.sca.interfacedef.Operation; +import org.apache.tuscany.sca.interfacedef.util.XMLType; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface; +import org.apache.tuscany.sca.interfacedef.wsdl.xml.AbstractWSDLTestCase; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +/** + * Test case for InterfaceWSDLIntrospectorImpl. + * + * @version $Rev$ $Date$ + */ +public class WSDLInterfaceIntrospectorTestCase extends AbstractWSDLTestCase { + private static final QName PORTTYPE_NAME = new QName("http://example.com/stockquote.wsdl", "StockQuotePortType"); + + private PortType portType; + private WSDLDefinition definition; + + @Override + @Before + public void setUp() throws Exception { + super.setUp(); + + URL url = getClass().getResource("../xml/stockquote.wsdl"); + definition = (WSDLDefinition)documentProcessor.read(null, new URI("stockquote.wsdl"), url); + resolver.addModel(definition); + definition = resolver.resolveModel(WSDLDefinition.class, definition); + portType = definition.getDefinition().getPortType(PORTTYPE_NAME); + } + + @Test + @SuppressWarnings("unchecked") + public final void testIntrospectPortType() throws InvalidInterfaceException { + WSDLInterface contract = wsdlFactory.createWSDLInterface(portType, definition, resolver); + Assert.assertEquals(contract.getName().getLocalPart(), "StockQuotePortType"); + List<Operation> operations = contract.getOperations(); + Assert.assertEquals(1, operations.size()); + Operation operation = operations.get(0); + Assert.assertEquals("getLastTradePrice", operation.getName()); + DataType<List<DataType>> inputType = operation.getInputType(); + Assert.assertEquals(1, inputType.getLogical().size()); + DataType<XMLType> returnType = operation.getOutputType(); + Assert.assertNotNull(returnType); + Assert.assertEquals(0, operation.getFaultTypes().size()); + // Assert.assertEquals(1, + // operation.getWrapper().getInputChildElements().size()); + // Assert.assertEquals(1, + // operation.getWrapper().getOutputChildElements().size()); + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLOperationIntrospectorTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLOperationIntrospectorTestCase.java index 666763fe71..338d24cbfd 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLOperationIntrospectorTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLOperationIntrospectorTestCase.java @@ -1,121 +1,121 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.introspect;
-
-import static org.junit.Assert.fail;
-
-import java.net.URI;
-import java.net.URL;
-import java.util.List;
-
-import javax.wsdl.PortType;
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException;
-import org.apache.tuscany.sca.interfacedef.util.XMLType;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLOperation;
-import org.apache.tuscany.sca.interfacedef.wsdl.xml.AbstractWSDLTestCase;
-import org.junit.Assert;
-import org.junit.Test;
-
-/**
- * Test case for WSDLOperation.
- *
- * @version $Rev: 660340 $ $Date: 2008-05-27 01:08:32 +0100 (Tue, 27 May 2008) $
- */
-public class WSDLOperationIntrospectorTestCase extends AbstractWSDLTestCase {
- private static final QName PORTTYPE_NAME =
- new QName("http://example.com/stockquote.wsdl", "StockQuotePortType");
-
-
- @SuppressWarnings("unchecked")
- @Test
- public final void testWrappedOperation() throws Exception {
- URL url = getClass().getResource("../xml/stockquote.wsdl");
- WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("stockquote.wsdl"), url);
- resolver.addModel(definition);
- definition = resolver.resolveModel(WSDLDefinition.class, definition);
- PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME);
-
- WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver);
- WSDLOperation op = (WSDLOperation) wi.getOperations().get(0);
-
- DataType<List<DataType>> inputType = op.getInputType();
- Assert.assertEquals(1, inputType.getLogical().size());
- DataType<XMLType> type = inputType.getLogical().get(0);
- Assert.assertEquals(new QName("http://example.com/stockquote.xsd", "getLastTradePrice"), type.getLogical().getElementName());
-
- DataType<XMLType> outputType = op.getOutputType();
- Assert.assertEquals(new QName("http://example.com/stockquote.xsd", "getLastTradePriceResponse"),
- outputType.getLogical().getElementName());
- Assert.assertTrue(op.isWrapperStyle());
-
- DataType<List<DataType>> unwrappedInputType = op.getWrapper().getUnwrappedInputType();
- List<DataType> childTypes = unwrappedInputType.getLogical();
- Assert.assertEquals(1, childTypes.size());
- DataType<XMLType> childType = childTypes.get(0);
- Assert.assertEquals(new QName(null, "tickerSymbol"), childType.getLogical().getElementName());
-
- childType = op.getWrapper().getUnwrappedOutputType();
- Assert.assertEquals(new QName(null, "price"), childType.getLogical().getElementName());
- }
-
- @Test
- public final void testUnwrappedOperation() throws Exception {
- URL url = getClass().getResource("../xml/unwrapped-stockquote.wsdl");
- WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("unwrapped-stockquote.wsdl"), url);
- resolver.addModel(definition);
- definition = resolver.resolveModel(WSDLDefinition.class, definition);
- PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME);
-
- WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver);
- WSDLOperation op = (WSDLOperation) wi.getOperations().get(1);
- Assert.assertFalse(op.isWrapperStyle());
- Assert.assertEquals(1, op.getInputType().getLogical().size());
-
- op = (WSDLOperation) wi.getOperations().get(2);
- Assert.assertFalse(op.isWrapperStyle());
- Assert.assertEquals(2, op.getInputType().getLogical().size());
- }
-
- @Test
- public final void testInvalidWSDL() throws Exception {
- URL url = getClass().getResource("../xml/invalid-stockquote.wsdl");
- WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("invalid-stockquote.wsdl"), url);
- resolver.addModel(definition);
- definition = resolver.resolveModel(WSDLDefinition.class, definition);
- PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME);
-
- try {
- WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver);
- WSDLOperation op = (WSDLOperation) wi.getOperations().get(0);
-
- op.isWrapperStyle();
- fail("InvalidWSDLException should have been thrown");
- } catch (InvalidInterfaceException e) {
- // Expected
- }
-
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.introspect; + +import static org.junit.Assert.fail; + +import java.net.URI; +import java.net.URL; +import java.util.List; + +import javax.wsdl.PortType; +import javax.xml.namespace.QName; + +import org.apache.tuscany.sca.interfacedef.DataType; +import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException; +import org.apache.tuscany.sca.interfacedef.util.XMLType; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLOperation; +import org.apache.tuscany.sca.interfacedef.wsdl.xml.AbstractWSDLTestCase; +import org.junit.Assert; +import org.junit.Test; + +/** + * Test case for WSDLOperation. + * + * @version $Rev$ $Date$ + */ +public class WSDLOperationIntrospectorTestCase extends AbstractWSDLTestCase { + private static final QName PORTTYPE_NAME = + new QName("http://example.com/stockquote.wsdl", "StockQuotePortType"); + + + @SuppressWarnings("unchecked") + @Test + public final void testWrappedOperation() throws Exception { + URL url = getClass().getResource("../xml/stockquote.wsdl"); + WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("stockquote.wsdl"), url); + resolver.addModel(definition); + definition = resolver.resolveModel(WSDLDefinition.class, definition); + PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME); + + WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver); + WSDLOperation op = (WSDLOperation) wi.getOperations().get(0); + + DataType<List<DataType>> inputType = op.getInputType(); + Assert.assertEquals(1, inputType.getLogical().size()); + DataType<XMLType> type = inputType.getLogical().get(0); + Assert.assertEquals(new QName("http://example.com/stockquote.xsd", "getLastTradePrice"), type.getLogical().getElementName()); + + DataType<XMLType> outputType = op.getOutputType(); + Assert.assertEquals(new QName("http://example.com/stockquote.xsd", "getLastTradePriceResponse"), + outputType.getLogical().getElementName()); + Assert.assertTrue(op.isWrapperStyle()); + + DataType<List<DataType>> unwrappedInputType = op.getWrapper().getUnwrappedInputType(); + List<DataType> childTypes = unwrappedInputType.getLogical(); + Assert.assertEquals(1, childTypes.size()); + DataType<XMLType> childType = childTypes.get(0); + Assert.assertEquals(new QName(null, "tickerSymbol"), childType.getLogical().getElementName()); + + childType = op.getWrapper().getUnwrappedOutputType(); + Assert.assertEquals(new QName(null, "price"), childType.getLogical().getElementName()); + } + + @Test + public final void testUnwrappedOperation() throws Exception { + URL url = getClass().getResource("../xml/unwrapped-stockquote.wsdl"); + WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("unwrapped-stockquote.wsdl"), url); + resolver.addModel(definition); + definition = resolver.resolveModel(WSDLDefinition.class, definition); + PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME); + + WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver); + WSDLOperation op = (WSDLOperation) wi.getOperations().get(1); + Assert.assertFalse(op.isWrapperStyle()); + Assert.assertEquals(1, op.getInputType().getLogical().size()); + + op = (WSDLOperation) wi.getOperations().get(2); + Assert.assertFalse(op.isWrapperStyle()); + Assert.assertEquals(2, op.getInputType().getLogical().size()); + } + + @Test + public final void testInvalidWSDL() throws Exception { + URL url = getClass().getResource("../xml/invalid-stockquote.wsdl"); + WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("invalid-stockquote.wsdl"), url); + resolver.addModel(definition); + definition = resolver.resolveModel(WSDLDefinition.class, definition); + PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME); + + try { + WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver); + WSDLOperation op = (WSDLOperation) wi.getOperations().get(0); + + op.isWrapperStyle(); + fail("InvalidWSDLException should have been thrown"); + } catch (InvalidInterfaceException e) { + // Expected + } + + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLPolicyAnnotatedInterfaceIntrospectorTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLPolicyAnnotatedInterfaceIntrospectorTestCase.java index 877ca60c13..282144c635 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLPolicyAnnotatedInterfaceIntrospectorTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WSDLPolicyAnnotatedInterfaceIntrospectorTestCase.java @@ -1,86 +1,86 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.introspect;
-
-import java.net.URI;
-import java.net.URL;
-
-import javax.wsdl.PortType;
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.ConversationSequence;
-import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface;
-import org.apache.tuscany.sca.interfacedef.wsdl.xml.AbstractWSDLTestCase;
-import org.apache.tuscany.sca.policy.Intent;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * Test case for InterfaceWSDLIntrospectorImpl.
- *
- * @version $Rev: 665985 $ $Date: 2008-06-10 06:35:33 +0100 (Tue, 10 Jun 2008) $
- */
-public class WSDLPolicyAnnotatedInterfaceIntrospectorTestCase extends AbstractWSDLTestCase {
- private static final QName PORTTYPE_NAME = new QName("http://example.com/stockquote.wsdl", "StockQuotePortType");
- private static final QName INTENT = new QName("http://example.com/stockquote.wsdl", "PolicyIntent");
-
- private PortType portType;
- private WSDLDefinition definition;
-
- @Before
- @Override
- public void setUp() throws Exception {
- super.setUp();
-
- URL url = getClass().getResource("/policy/stockquote_policy.wsdl");
- definition = (WSDLDefinition)documentProcessor.read(null, new URI("stockquote.wsdl"), url);
- resolver.addModel(definition);
- definition = resolver.resolveModel(WSDLDefinition.class, definition);
- portType = definition.getDefinition().getPortType(PORTTYPE_NAME);
- }
-
- @Test
- public final void testIntrospectPortType() throws InvalidInterfaceException {
- WSDLInterface contract = wsdlFactory.createWSDLInterface(portType, definition, resolver);
- Assert.assertEquals(contract.getName().getLocalPart(), "StockQuotePortType");
- Assert.assertTrue(contract.isConversational());
-
- boolean foundIntent = false;
-
- for(Intent intent : contract.getRequiredIntents()) {
- if(INTENT.equals(intent.getName())) {
- foundIntent = true;
- }
- }
-
- Assert.assertTrue(foundIntent);
-
- for(Operation operation : contract.getOperations()) {
- if(operation.getName().equals("cancel")) {
- Assert.assertEquals(operation.getConversationSequence(), ConversationSequence.CONVERSATION_END);
- }
- }
-
- }
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.introspect; + +import java.net.URI; +import java.net.URL; + +import javax.wsdl.PortType; +import javax.xml.namespace.QName; + +import org.apache.tuscany.sca.interfacedef.ConversationSequence; +import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException; +import org.apache.tuscany.sca.interfacedef.Operation; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface; +import org.apache.tuscany.sca.interfacedef.wsdl.xml.AbstractWSDLTestCase; +import org.apache.tuscany.sca.policy.Intent; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +/** + * Test case for InterfaceWSDLIntrospectorImpl. + * + * @version $Rev$ $Date$ + */ +public class WSDLPolicyAnnotatedInterfaceIntrospectorTestCase extends AbstractWSDLTestCase { + private static final QName PORTTYPE_NAME = new QName("http://example.com/stockquote.wsdl", "StockQuotePortType"); + private static final QName INTENT = new QName("http://example.com/stockquote.wsdl", "PolicyIntent"); + + private PortType portType; + private WSDLDefinition definition; + + @Before + @Override + public void setUp() throws Exception { + super.setUp(); + + URL url = getClass().getResource("/policy/stockquote_policy.wsdl"); + definition = (WSDLDefinition)documentProcessor.read(null, new URI("stockquote.wsdl"), url); + resolver.addModel(definition); + definition = resolver.resolveModel(WSDLDefinition.class, definition); + portType = definition.getDefinition().getPortType(PORTTYPE_NAME); + } + + @Test + public final void testIntrospectPortType() throws InvalidInterfaceException { + WSDLInterface contract = wsdlFactory.createWSDLInterface(portType, definition, resolver); + Assert.assertEquals(contract.getName().getLocalPart(), "StockQuotePortType"); + Assert.assertTrue(contract.isConversational()); + + boolean foundIntent = false; + + for(Intent intent : contract.getRequiredIntents()) { + if(INTENT.equals(intent.getName())) { + foundIntent = true; + } + } + + Assert.assertTrue(foundIntent); + + for(Operation operation : contract.getOperations()) { + if(operation.getName().equals("cancel")) { + Assert.assertEquals(operation.getConversationSequence(), ConversationSequence.CONVERSATION_END); + } + } + + } +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WrapperStyleOperationTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WrapperStyleOperationTestCase.java index f03d7d6628..a974bdb89c 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WrapperStyleOperationTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/introspect/WrapperStyleOperationTestCase.java @@ -1,71 +1,71 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.introspect;
-
-import java.net.URI;
-import java.net.URL;
-
-import javax.wsdl.PortType;
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLOperation;
-import org.apache.tuscany.sca.interfacedef.wsdl.xml.AbstractWSDLTestCase;
-import org.junit.Assert;
-import org.junit.Test;
-
-/**
- * Test case for WSDLOperation.
- *
- * @version $Rev: 660340 $ $Date: 2008-05-27 01:08:32 +0100 (Tue, 27 May 2008) $
- */
-public class WrapperStyleOperationTestCase extends AbstractWSDLTestCase {
- private static final QName PORTTYPE_NAME = new QName("http://example.com/stockquote.wsdl", "StockQuotePortType");
-
- @Test
- public final void testWrappedOperation() throws Exception {
- URL url = getClass().getResource("../xml/stockquote.wsdl");
- WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("stockquote.wsdl"), url);
- resolver.addModel(definition);
- definition = resolver.resolveModel(WSDLDefinition.class, definition);
- PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME);
- WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver);
- WSDLOperation op = (WSDLOperation) wi.getOperations().get(0);
- Assert.assertTrue(op.isWrapperStyle());
- Assert.assertEquals(1, op.getWrapper().getInputChildElements().size());
- Assert.assertEquals(1, op.getWrapper().getOutputChildElements().size());
- }
-
- @Test
- public final void testUnwrappedOperation() throws Exception {
- URL url = getClass().getResource("../xml/unwrapped-stockquote.wsdl");
- WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("unwrapped-stockquote.wsdl"), url);
- resolver.addModel(definition);
- definition = resolver.resolveModel(WSDLDefinition.class, definition);
- PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME);
- WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver);
- WSDLOperation op = (WSDLOperation) wi.getOperations().get(1);
- Assert.assertFalse(op.isWrapperStyle());
- op = (WSDLOperation) wi.getOperations().get(2);
- Assert.assertFalse(op.isWrapperStyle());
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.introspect; + +import java.net.URI; +import java.net.URL; + +import javax.wsdl.PortType; +import javax.xml.namespace.QName; + +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterface; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLOperation; +import org.apache.tuscany.sca.interfacedef.wsdl.xml.AbstractWSDLTestCase; +import org.junit.Assert; +import org.junit.Test; + +/** + * Test case for WSDLOperation. + * + * @version $Rev$ $Date$ + */ +public class WrapperStyleOperationTestCase extends AbstractWSDLTestCase { + private static final QName PORTTYPE_NAME = new QName("http://example.com/stockquote.wsdl", "StockQuotePortType"); + + @Test + public final void testWrappedOperation() throws Exception { + URL url = getClass().getResource("../xml/stockquote.wsdl"); + WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("stockquote.wsdl"), url); + resolver.addModel(definition); + definition = resolver.resolveModel(WSDLDefinition.class, definition); + PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME); + WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver); + WSDLOperation op = (WSDLOperation) wi.getOperations().get(0); + Assert.assertTrue(op.isWrapperStyle()); + Assert.assertEquals(1, op.getWrapper().getInputChildElements().size()); + Assert.assertEquals(1, op.getWrapper().getOutputChildElements().size()); + } + + @Test + public final void testUnwrappedOperation() throws Exception { + URL url = getClass().getResource("../xml/unwrapped-stockquote.wsdl"); + WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, new URI("unwrapped-stockquote.wsdl"), url); + resolver.addModel(definition); + definition = resolver.resolveModel(WSDLDefinition.class, definition); + PortType portType = definition.getDefinition().getPortType(PORTTYPE_NAME); + WSDLInterface wi = wsdlFactory.createWSDLInterface(portType, definition, resolver); + WSDLOperation op = (WSDLOperation) wi.getOperations().get(1); + Assert.assertFalse(op.isWrapperStyle()); + op = (WSDLOperation) wi.getOperations().get(2); + Assert.assertFalse(op.isWrapperStyle()); + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/AbstractWSDLTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/AbstractWSDLTestCase.java index a50af074cc..d91e206183 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/AbstractWSDLTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/AbstractWSDLTestCase.java @@ -1,65 +1,65 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import org.apache.tuscany.sca.contribution.Contribution;
-import org.apache.tuscany.sca.contribution.ContributionFactory;
-import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.contribution.resolver.ExtensibleModelResolver;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolverExtensionPoint;
-import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLFactory;
-import org.apache.tuscany.sca.xsd.XSDFactory;
-import org.junit.Before;
-
-/**
- * Test case for WSDLOperation.
- *
- * @version $Rev: 723274 $ $Date: 2008-12-04 10:14:09 +0000 (Thu, 04 Dec 2008) $
- */
-public abstract class AbstractWSDLTestCase {
- protected URLArtifactProcessor<Object> documentProcessor;
- protected ModelResolver resolver;
- protected WSDLFactory wsdlFactory;
- protected XSDFactory xsdFactory;
-
- @Before
- public void setUp() throws Exception {
- ExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
- FactoryExtensionPoint modelFactories = extensionPoints.getExtensionPoint(FactoryExtensionPoint.class);
- wsdlFactory = modelFactories.getFactory(WSDLFactory.class);
- xsdFactory = modelFactories.getFactory(XSDFactory.class);
-
- ContributionFactory contributionFactory = modelFactories.getFactory(ContributionFactory.class);
- Contribution contribution = contributionFactory.createContribution();
- ModelResolverExtensionPoint modelResolvers = extensionPoints.getExtensionPoint(ModelResolverExtensionPoint.class);
- resolver = new ExtensibleModelResolver(contribution, modelResolvers, modelFactories);
- contribution.setModelResolver(resolver);
-
- URLArtifactProcessorExtensionPoint documentProcessors = extensionPoints.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
- documentProcessor = new ExtensibleURLArtifactProcessor(documentProcessors, null);
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import org.apache.tuscany.sca.contribution.Contribution; +import org.apache.tuscany.sca.contribution.ContributionFactory; +import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor; +import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor; +import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint; +import org.apache.tuscany.sca.contribution.resolver.ExtensibleModelResolver; +import org.apache.tuscany.sca.contribution.resolver.ModelResolver; +import org.apache.tuscany.sca.contribution.resolver.ModelResolverExtensionPoint; +import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry; +import org.apache.tuscany.sca.core.ExtensionPointRegistry; +import org.apache.tuscany.sca.core.FactoryExtensionPoint; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLFactory; +import org.apache.tuscany.sca.xsd.XSDFactory; +import org.junit.Before; + +/** + * Test case for WSDLOperation. + * + * @version $Rev$ $Date$ + */ +public abstract class AbstractWSDLTestCase { + protected URLArtifactProcessor<Object> documentProcessor; + protected ModelResolver resolver; + protected WSDLFactory wsdlFactory; + protected XSDFactory xsdFactory; + + @Before + public void setUp() throws Exception { + ExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry(); + FactoryExtensionPoint modelFactories = extensionPoints.getExtensionPoint(FactoryExtensionPoint.class); + wsdlFactory = modelFactories.getFactory(WSDLFactory.class); + xsdFactory = modelFactories.getFactory(XSDFactory.class); + + ContributionFactory contributionFactory = modelFactories.getFactory(ContributionFactory.class); + Contribution contribution = contributionFactory.createContribution(); + ModelResolverExtensionPoint modelResolvers = extensionPoints.getExtensionPoint(ModelResolverExtensionPoint.class); + resolver = new ExtensibleModelResolver(contribution, modelResolvers, modelFactories); + contribution.setModelResolver(resolver); + + URLArtifactProcessorExtensionPoint documentProcessors = extensionPoints.getExtensionPoint(URLArtifactProcessorExtensionPoint.class); + documentProcessor = new ExtensibleURLArtifactProcessor(documentProcessors, null); + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/ReadTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/ReadTestCase.java index 7cebc84af3..d2a019f47d 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/ReadTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/ReadTestCase.java @@ -1,91 +1,91 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import static org.junit.Assert.assertNotNull;
-
-import java.io.InputStream;
-
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.tuscany.sca.assembly.ComponentType;
-import org.apache.tuscany.sca.assembly.Composite;
-import org.apache.tuscany.sca.assembly.ConstrainingType;
-import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
-import org.apache.tuscany.sca.assembly.builder.CompositeBuilderExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
-import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * Test reading WSDL interfaces.
- *
- * @version $Rev: 723270 $ $Date: 2008-12-04 09:48:12 +0000 (Thu, 04 Dec 2008) $
- */
-public class ReadTestCase {
-
- private XMLInputFactory inputFactory;
- private StAXArtifactProcessor<Object> staxProcessor;
- private CompositeBuilder compositeBuilder;
-
- @Before
- public void setUp() throws Exception {
- DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
- inputFactory = XMLInputFactory.newInstance();
- StAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints);
- staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, null);
-
- FactoryExtensionPoint modelFactories = extensionPoints.getExtensionPoint(FactoryExtensionPoint.class);
- compositeBuilder = extensionPoints.getExtensionPoint(CompositeBuilderExtensionPoint.class).getCompositeBuilder("org.apache.tuscany.sca.assembly.builder.CompositeBuilder");
- }
-
- @Test
- public void testReadComponentType() throws Exception {
- InputStream is = getClass().getResourceAsStream("CalculatorImpl.componentType");
- XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
- ComponentType componentType = (ComponentType)staxProcessor.read(reader);
- assertNotNull(componentType);
- }
-
- @Test
- public void testReadConstrainingType() throws Exception {
- InputStream is = getClass().getResourceAsStream("CalculatorComponent.constrainingType");
- XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
- ConstrainingType constrainingType = (ConstrainingType)staxProcessor.read(reader);
- assertNotNull(constrainingType);
- }
-
- @Test
- public void testReadComposite() throws Exception {
- InputStream is = getClass().getResourceAsStream("Calculator.composite");
- XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
- Composite composite = (Composite)staxProcessor.read(reader);
- assertNotNull(composite);
-
- compositeBuilder.build(composite, null, null);
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import static org.junit.Assert.assertNotNull; + +import java.io.InputStream; + +import javax.xml.stream.XMLInputFactory; +import javax.xml.stream.XMLStreamReader; + +import org.apache.tuscany.sca.assembly.ComponentType; +import org.apache.tuscany.sca.assembly.Composite; +import org.apache.tuscany.sca.assembly.ConstrainingType; +import org.apache.tuscany.sca.assembly.builder.CompositeBuilder; +import org.apache.tuscany.sca.assembly.builder.CompositeBuilderExtensionPoint; +import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint; +import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor; +import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor; +import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint; +import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry; +import org.apache.tuscany.sca.core.FactoryExtensionPoint; +import org.junit.Before; +import org.junit.Test; + +/** + * Test reading WSDL interfaces. + * + * @version $Rev$ $Date$ + */ +public class ReadTestCase { + + private XMLInputFactory inputFactory; + private StAXArtifactProcessor<Object> staxProcessor; + private CompositeBuilder compositeBuilder; + + @Before + public void setUp() throws Exception { + DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry(); + inputFactory = XMLInputFactory.newInstance(); + StAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints); + staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, null); + + FactoryExtensionPoint modelFactories = extensionPoints.getExtensionPoint(FactoryExtensionPoint.class); + compositeBuilder = extensionPoints.getExtensionPoint(CompositeBuilderExtensionPoint.class).getCompositeBuilder("org.apache.tuscany.sca.assembly.builder.CompositeBuilder"); + } + + @Test + public void testReadComponentType() throws Exception { + InputStream is = getClass().getResourceAsStream("CalculatorImpl.componentType"); + XMLStreamReader reader = inputFactory.createXMLStreamReader(is); + ComponentType componentType = (ComponentType)staxProcessor.read(reader); + assertNotNull(componentType); + } + + @Test + public void testReadConstrainingType() throws Exception { + InputStream is = getClass().getResourceAsStream("CalculatorComponent.constrainingType"); + XMLStreamReader reader = inputFactory.createXMLStreamReader(is); + ConstrainingType constrainingType = (ConstrainingType)staxProcessor.read(reader); + assertNotNull(constrainingType); + } + + @Test + public void testReadComposite() throws Exception { + InputStream is = getClass().getResourceAsStream("Calculator.composite"); + XMLStreamReader reader = inputFactory.createXMLStreamReader(is); + Composite composite = (Composite)staxProcessor.read(reader); + assertNotNull(composite); + + compositeBuilder.build(composite, null, null); + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessorTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessorTestCase.java index 9b72e0d740..4f85bb8f1c 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessorTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessorTestCase.java @@ -1,67 +1,67 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import static org.junit.Assert.assertNotNull;
-
-import java.net.URI;
-import java.net.URL;
-import java.util.List;
-
-import javax.wsdl.Import;
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
-import org.junit.Assert;
-import org.junit.Test;
-
-/**
- * @version $Rev: 723274 $ $Date: 2008-12-04 10:14:09 +0000 (Thu, 04 Dec 2008) $
- */
-public class WSDLDocumentProcessorTestCase extends AbstractWSDLTestCase {
-
- @Test
- public void testWSDL() throws Exception {
-
- URL url = getClass().getResource("/wsdl/helloworld-service.wsdl");
- WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, URI.create("wsdl/helloworld-service.wsdl"), url);
-
- Assert.assertNull(definition.getDefinition());
- Assert.assertEquals("http://helloworld", definition.getNamespace());
- URL url1 = getClass().getResource("/wsdl/helloworld-interface.wsdl");
- WSDLDefinition definition1 = (WSDLDefinition)documentProcessor.read(null, URI.create("wsdl/helloworld-interface.wsdl"), url1);
- Assert.assertNull(definition1.getDefinition());
- Assert.assertEquals("http://helloworld", definition1.getNamespace());
-
- resolver.addModel(definition);
- resolver.addModel(definition1);
- resolver.resolveModel(WSDLDefinition.class, definition);
- resolver.resolveModel(WSDLDefinition.class, definition1);
- WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, definition);
- List imports = (List)definition.getDefinition().getImports().get("http://helloworld");
- Assert.assertNotNull(imports);
- Assert.assertNotNull(((Import)imports.get(0)).getDefinition());
- Assert.assertNotNull(resolved.getDefinition().getPortType(new QName("http://helloworld", "HelloWorld")));
- Assert.assertNotNull(resolved.getDefinition().getService(new QName("http://helloworld", "HelloWorldService")));
-
- assertNotNull(resolved.getXmlSchemaType(new QName("http://greeting", "Name")));
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import static org.junit.Assert.assertNotNull; + +import java.net.URI; +import java.net.URL; +import java.util.List; + +import javax.wsdl.Import; +import javax.xml.namespace.QName; + +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition; +import org.junit.Assert; +import org.junit.Test; + +/** + * @version $Rev$ $Date$ + */ +public class WSDLDocumentProcessorTestCase extends AbstractWSDLTestCase { + + @Test + public void testWSDL() throws Exception { + + URL url = getClass().getResource("/wsdl/helloworld-service.wsdl"); + WSDLDefinition definition = (WSDLDefinition)documentProcessor.read(null, URI.create("wsdl/helloworld-service.wsdl"), url); + + Assert.assertNull(definition.getDefinition()); + Assert.assertEquals("http://helloworld", definition.getNamespace()); + URL url1 = getClass().getResource("/wsdl/helloworld-interface.wsdl"); + WSDLDefinition definition1 = (WSDLDefinition)documentProcessor.read(null, URI.create("wsdl/helloworld-interface.wsdl"), url1); + Assert.assertNull(definition1.getDefinition()); + Assert.assertEquals("http://helloworld", definition1.getNamespace()); + + resolver.addModel(definition); + resolver.addModel(definition1); + resolver.resolveModel(WSDLDefinition.class, definition); + resolver.resolveModel(WSDLDefinition.class, definition1); + WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, definition); + List imports = (List)definition.getDefinition().getImports().get("http://helloworld"); + Assert.assertNotNull(imports); + Assert.assertNotNull(((Import)imports.get(0)).getDefinition()); + Assert.assertNotNull(resolved.getDefinition().getPortType(new QName("http://helloworld", "HelloWorld"))); + Assert.assertNotNull(resolved.getDefinition().getService(new QName("http://helloworld", "HelloWorldService"))); + + assertNotNull(resolved.getXmlSchemaType(new QName("http://greeting", "Name"))); + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLTestCase.java index 502d0a8a2d..de98befd9b 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLTestCase.java @@ -1,123 +1,123 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-
-import java.net.URI;
-import java.net.URL;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.contribution.Contribution;
-import org.apache.tuscany.sca.contribution.ContributionFactory;
-import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.contribution.resolver.ExtensibleModelResolver;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolverExtensionPoint;
-import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * Test reading WSDL interfaces.
- *
- * @version $Rev: 723270 $ $Date: 2008-12-04 09:48:12 +0000 (Thu, 04 Dec 2008) $
- */
-public class WSDLTestCase {
-
- private ExtensibleURLArtifactProcessor documentProcessor;
- private ContributionFactory contributionFactory;
- private WSDLModelResolver wsdlResolver;
- private ModelResolver resolver;
-
- @Before
- public void setUp() throws Exception {
- ExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
- URLArtifactProcessorExtensionPoint documentProcessors = extensionPoints.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
- documentProcessor = new ExtensibleURLArtifactProcessor(documentProcessors, null);
-
- FactoryExtensionPoint modelFactories = extensionPoints.getExtensionPoint(FactoryExtensionPoint.class);
- contributionFactory = modelFactories.getFactory(ContributionFactory.class);
- Contribution contribution = contributionFactory.createContribution();
- ModelResolverExtensionPoint modelResolvers = extensionPoints.getExtensionPoint(ModelResolverExtensionPoint.class);
- resolver = new ExtensibleModelResolver(contribution, modelResolvers, modelFactories);
- contribution.setModelResolver(resolver);
- wsdlResolver = new WSDLModelResolver(contribution, modelFactories);
- }
-
- @Test
- public void testReadWSDLDocument() throws Exception {
- URL url = getClass().getResource("example.wsdl");
- WSDLDefinition definition = documentProcessor.read(null, new URI("example.wsdl"), url, WSDLDefinition.class);
- assertNotNull(definition);
- assertNull(definition.getDefinition());
- assertEquals(definition.getNamespace(), "http://www.example.org");
- }
-
- @Test
- public void testReadWSDLImports() throws Exception {
- QName aBinding = new QName("http://helloworld", "HelloWorldSoapBinding");
- QName aPortType = new QName("http://helloworld", "HelloWorld");
-
- URL url = getClass().getResource("test1.wsdl");
- WSDLDefinition test1Defn = documentProcessor.read(null, new URI("test1.wsdl"), url, WSDLDefinition.class);
- assertNotNull(test1Defn);
- wsdlResolver.addModel(test1Defn);
- test1Defn = wsdlResolver.resolveModel(WSDLDefinition.class, test1Defn);
- //binding is a part of test1.wsdl
- assertNotNull(test1Defn.getDefinition().getBinding(aBinding));
- //porttype is part of test2.wsdl
- assertNotNull(test1Defn.getDefinition().getPortType(aPortType));
- }
-
- @Test
- public void testReadSameNamespaceWSDLDocument() throws Exception {
- QName aBinding = new QName("http://helloworld", "HelloWorldSoapBinding");
- QName aPortType = new QName("http://helloworld", "HelloWorld");
-
- URL url = getClass().getResource("test2.wsdl");
- WSDLDefinition test2Defn = documentProcessor.read(null, new URI("test2.wsdl"), url, WSDLDefinition.class);
- assertNotNull(test2Defn);
- wsdlResolver.addModel(test2Defn);
- test2Defn = wsdlResolver.resolveModel(WSDLDefinition.class, test2Defn);
-
- //bindings are a part of test1.wsdl so should not be found
- assertNull(test2Defn.getDefinition().getBinding(aBinding));
- assertNotNull(test2Defn.getDefinition().getPortType(aPortType));
-
- url = getClass().getResource("test1.wsdl");
- WSDLDefinition test1Defn = documentProcessor.read(null, new URI("test1.wsdl"), url, WSDLDefinition.class);
- assertNotNull(test1Defn);
- wsdlResolver.addModel(test1Defn);
-
- test1Defn = wsdlResolver.resolveModel(WSDLDefinition.class, test1Defn);
-
- assertNotNull(test1Defn.getDefinition().getPortType(aPortType));
- assertNotNull(test1Defn.getDefinition().getBinding(aBinding));
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; + +import java.net.URI; +import java.net.URL; + +import javax.xml.namespace.QName; + +import org.apache.tuscany.sca.contribution.Contribution; +import org.apache.tuscany.sca.contribution.ContributionFactory; +import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor; +import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint; +import org.apache.tuscany.sca.contribution.resolver.ExtensibleModelResolver; +import org.apache.tuscany.sca.contribution.resolver.ModelResolver; +import org.apache.tuscany.sca.contribution.resolver.ModelResolverExtensionPoint; +import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry; +import org.apache.tuscany.sca.core.ExtensionPointRegistry; +import org.apache.tuscany.sca.core.FactoryExtensionPoint; +import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition; +import org.junit.Before; +import org.junit.Test; + +/** + * Test reading WSDL interfaces. + * + * @version $Rev$ $Date$ + */ +public class WSDLTestCase { + + private ExtensibleURLArtifactProcessor documentProcessor; + private ContributionFactory contributionFactory; + private WSDLModelResolver wsdlResolver; + private ModelResolver resolver; + + @Before + public void setUp() throws Exception { + ExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry(); + URLArtifactProcessorExtensionPoint documentProcessors = extensionPoints.getExtensionPoint(URLArtifactProcessorExtensionPoint.class); + documentProcessor = new ExtensibleURLArtifactProcessor(documentProcessors, null); + + FactoryExtensionPoint modelFactories = extensionPoints.getExtensionPoint(FactoryExtensionPoint.class); + contributionFactory = modelFactories.getFactory(ContributionFactory.class); + Contribution contribution = contributionFactory.createContribution(); + ModelResolverExtensionPoint modelResolvers = extensionPoints.getExtensionPoint(ModelResolverExtensionPoint.class); + resolver = new ExtensibleModelResolver(contribution, modelResolvers, modelFactories); + contribution.setModelResolver(resolver); + wsdlResolver = new WSDLModelResolver(contribution, modelFactories); + } + + @Test + public void testReadWSDLDocument() throws Exception { + URL url = getClass().getResource("example.wsdl"); + WSDLDefinition definition = documentProcessor.read(null, new URI("example.wsdl"), url, WSDLDefinition.class); + assertNotNull(definition); + assertNull(definition.getDefinition()); + assertEquals(definition.getNamespace(), "http://www.example.org"); + } + + @Test + public void testReadWSDLImports() throws Exception { + QName aBinding = new QName("http://helloworld", "HelloWorldSoapBinding"); + QName aPortType = new QName("http://helloworld", "HelloWorld"); + + URL url = getClass().getResource("test1.wsdl"); + WSDLDefinition test1Defn = documentProcessor.read(null, new URI("test1.wsdl"), url, WSDLDefinition.class); + assertNotNull(test1Defn); + wsdlResolver.addModel(test1Defn); + test1Defn = wsdlResolver.resolveModel(WSDLDefinition.class, test1Defn); + //binding is a part of test1.wsdl + assertNotNull(test1Defn.getDefinition().getBinding(aBinding)); + //porttype is part of test2.wsdl + assertNotNull(test1Defn.getDefinition().getPortType(aPortType)); + } + + @Test + public void testReadSameNamespaceWSDLDocument() throws Exception { + QName aBinding = new QName("http://helloworld", "HelloWorldSoapBinding"); + QName aPortType = new QName("http://helloworld", "HelloWorld"); + + URL url = getClass().getResource("test2.wsdl"); + WSDLDefinition test2Defn = documentProcessor.read(null, new URI("test2.wsdl"), url, WSDLDefinition.class); + assertNotNull(test2Defn); + wsdlResolver.addModel(test2Defn); + test2Defn = wsdlResolver.resolveModel(WSDLDefinition.class, test2Defn); + + //bindings are a part of test1.wsdl so should not be found + assertNull(test2Defn.getDefinition().getBinding(aBinding)); + assertNotNull(test2Defn.getDefinition().getPortType(aPortType)); + + url = getClass().getResource("test1.wsdl"); + WSDLDefinition test1Defn = documentProcessor.read(null, new URI("test1.wsdl"), url, WSDLDefinition.class); + assertNotNull(test1Defn); + wsdlResolver.addModel(test1Defn); + + test1Defn = wsdlResolver.resolveModel(WSDLDefinition.class, test1Defn); + + assertNotNull(test1Defn.getDefinition().getPortType(aPortType)); + assertNotNull(test1Defn.getDefinition().getBinding(aBinding)); + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WriteTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WriteTestCase.java index 4992013862..a11eb1017f 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WriteTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WriteTestCase.java @@ -1,88 +1,88 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import static org.junit.Assert.assertNotNull;
-
-import java.io.ByteArrayOutputStream;
-import java.io.InputStream;
-
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLOutputFactory;
-
-import org.apache.tuscany.sca.assembly.ComponentType;
-import org.apache.tuscany.sca.assembly.Composite;
-import org.apache.tuscany.sca.assembly.ConstrainingType;
-import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * Test reading/write WSDL interfaces.
- *
- * @version $Rev: 723270 $ $Date: 2008-12-04 09:48:12 +0000 (Thu, 04 Dec 2008) $
- */
-public class WriteTestCase {
-
- private XMLInputFactory inputFactory;
- private XMLOutputFactory outputFactory;
- private StAXArtifactProcessor<Object> staxProcessor;
-
- @Before
- public void setUp() throws Exception {
- DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
- inputFactory = XMLInputFactory.newInstance();
- outputFactory = XMLOutputFactory.newInstance();
- StAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints);
- staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, outputFactory, null);
- }
-
- @Test
- public void testReadWriteComponentType() throws Exception {
- InputStream is = getClass().getResourceAsStream("CalculatorImpl.componentType");
- ComponentType componentType = (ComponentType)staxProcessor.read(inputFactory.createXMLStreamReader(is));
- assertNotNull(componentType);
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(componentType, outputFactory.createXMLStreamWriter(bos));
- }
-
- @Test
- public void testReadWriteConstrainingType() throws Exception {
- InputStream is = getClass().getResourceAsStream("CalculatorComponent.constrainingType");
- ConstrainingType constrainingType = (ConstrainingType)staxProcessor.read(inputFactory.createXMLStreamReader(is));
- assertNotNull(constrainingType);
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(constrainingType, outputFactory.createXMLStreamWriter(bos));
- }
-
- @Test
- public void testReadWriteComposite() throws Exception {
- InputStream is = getClass().getResourceAsStream("Calculator.composite");
- Composite composite = (Composite)staxProcessor.read(inputFactory.createXMLStreamReader(is));
- assertNotNull(composite);
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import static org.junit.Assert.assertNotNull; + +import java.io.ByteArrayOutputStream; +import java.io.InputStream; + +import javax.xml.stream.XMLInputFactory; +import javax.xml.stream.XMLOutputFactory; + +import org.apache.tuscany.sca.assembly.ComponentType; +import org.apache.tuscany.sca.assembly.Composite; +import org.apache.tuscany.sca.assembly.ConstrainingType; +import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint; +import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor; +import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor; +import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint; +import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry; +import org.junit.Before; +import org.junit.Test; + +/** + * Test reading/write WSDL interfaces. + * + * @version $Rev$ $Date$ + */ +public class WriteTestCase { + + private XMLInputFactory inputFactory; + private XMLOutputFactory outputFactory; + private StAXArtifactProcessor<Object> staxProcessor; + + @Before + public void setUp() throws Exception { + DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry(); + inputFactory = XMLInputFactory.newInstance(); + outputFactory = XMLOutputFactory.newInstance(); + StAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints); + staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, outputFactory, null); + } + + @Test + public void testReadWriteComponentType() throws Exception { + InputStream is = getClass().getResourceAsStream("CalculatorImpl.componentType"); + ComponentType componentType = (ComponentType)staxProcessor.read(inputFactory.createXMLStreamReader(is)); + assertNotNull(componentType); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + staxProcessor.write(componentType, outputFactory.createXMLStreamWriter(bos)); + } + + @Test + public void testReadWriteConstrainingType() throws Exception { + InputStream is = getClass().getResourceAsStream("CalculatorComponent.constrainingType"); + ConstrainingType constrainingType = (ConstrainingType)staxProcessor.read(inputFactory.createXMLStreamReader(is)); + assertNotNull(constrainingType); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + staxProcessor.write(constrainingType, outputFactory.createXMLStreamWriter(bos)); + } + + @Test + public void testReadWriteComposite() throws Exception { + InputStream is = getClass().getResourceAsStream("Calculator.composite"); + Composite composite = (Composite)staxProcessor.read(inputFactory.createXMLStreamReader(is)); + assertNotNull(composite); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos)); + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/XMLDocumentHelperTestCase.java b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/XMLDocumentHelperTestCase.java index 1efeb6a514..4558bafdb8 100644 --- a/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/XMLDocumentHelperTestCase.java +++ b/java/sca/modules/interface-wsdl/src/test/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/XMLDocumentHelperTestCase.java @@ -1,52 +1,52 @@ -/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.tuscany.sca.interfacedef.wsdl.xml;
-
-import java.net.URL;
-
-import javax.xml.stream.XMLInputFactory;
-
-import org.apache.tuscany.sca.xsd.xml.XMLDocumentHelper;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-
-/**
- * @version $Rev: 723274 $ $Date: 2008-12-04 10:14:09 +0000 (Thu, 04 Dec 2008) $
- */
-public class XMLDocumentHelperTestCase {
- private URL wsdl;
- private URL xsd;
-
- /**
- * @throws java.lang.Exception
- */
- @Before
- public void setUp() throws Exception {
- wsdl = getClass().getResource("/wsdl/helloworld-interface.wsdl");
- }
-
- @Test
- public void testReadTNS() throws Exception {
- String tns = XMLDocumentHelper.readTargetNamespace(wsdl, XMLDocumentHelper.WSDL11, true, "targetNamespace", XMLInputFactory.newInstance());
- Assert.assertEquals("http://helloworld", tns);
- }
-
-}
+/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.tuscany.sca.interfacedef.wsdl.xml; + +import java.net.URL; + +import javax.xml.stream.XMLInputFactory; + +import org.apache.tuscany.sca.xsd.xml.XMLDocumentHelper; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + +/** + * @version $Rev$ $Date$ + */ +public class XMLDocumentHelperTestCase { + private URL wsdl; + private URL xsd; + + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() throws Exception { + wsdl = getClass().getResource("/wsdl/helloworld-interface.wsdl"); + } + + @Test + public void testReadTNS() throws Exception { + String tns = XMLDocumentHelper.readTargetNamespace(wsdl, XMLDocumentHelper.WSDL11, true, "targetNamespace", XMLInputFactory.newInstance()); + Assert.assertEquals("http://helloworld", tns); + } + +} diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/Calculator.composite b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/Calculator.composite index 98ffd37232..fcdf69594b 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/Calculator.composite +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/Calculator.composite @@ -1,55 +1,55 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200903"
- xmlns:calc="http://sample.calculator"
- targetNamespace="http://calc"
- xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance"
- name="Calculator">
-
- <service name="CalculatorService" promote="CalculatorServiceComponent">
- <interface.wsdl interface="http://sample/calculator#wsdl.interface(Calculator)"
- wsdli:wsdlLocation="http://tempuri.org"/>
- </service>
-
- <component name="CalculatorServiceComponent">
- <implementation.java class="calculator.CalculatorServiceImpl"/>
- <reference name="addService" target="AddServiceComponent"/>
- <reference name="subtractService" target="SubtractServiceComponent"/>
- <reference name="multiplyService" target="MultiplyServiceComponent"/>
- <reference name="divideService" target="DivideServiceComponent"/>
- </component>
-
- <component name="AddServiceComponent">
- <implementation.java class="calculator.AddServiceImpl"/>
- </component>
-
- <component name="SubtractServiceComponent">
- <implementation.java class="calculator.SubtractServiceImpl"/>
- </component>
-
- <component name="MultiplyServiceComponent">
- <implementation.java class="calculator.MultiplyServiceImpl"/>
- </component>
-
- <component name="DivideServiceComponent">
- <implementation.java class="calculator.DivideServiceImpl"/>
- </component>
-
-</composite>
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200903" + xmlns:calc="http://sample.calculator" + targetNamespace="http://calc" + xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance" + name="Calculator"> + + <service name="CalculatorService" promote="CalculatorServiceComponent"> + <interface.wsdl interface="http://sample/calculator#wsdl.interface(Calculator)" + wsdli:wsdlLocation="http://tempuri.org"/> + </service> + + <component name="CalculatorServiceComponent"> + <implementation.java class="calculator.CalculatorServiceImpl"/> + <reference name="addService" target="AddServiceComponent"/> + <reference name="subtractService" target="SubtractServiceComponent"/> + <reference name="multiplyService" target="MultiplyServiceComponent"/> + <reference name="divideService" target="DivideServiceComponent"/> + </component> + + <component name="AddServiceComponent"> + <implementation.java class="calculator.AddServiceImpl"/> + </component> + + <component name="SubtractServiceComponent"> + <implementation.java class="calculator.SubtractServiceImpl"/> + </component> + + <component name="MultiplyServiceComponent"> + <implementation.java class="calculator.MultiplyServiceImpl"/> + </component> + + <component name="DivideServiceComponent"> + <implementation.java class="calculator.DivideServiceImpl"/> + </component> + +</composite> diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/CalculatorImpl.componentType b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/CalculatorImpl.componentType index 2abafd96f8..35052dfd6d 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/CalculatorImpl.componentType +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/CalculatorImpl.componentType @@ -1,33 +1,33 @@ -<?xml version="1.0" encoding="ASCII"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<componentType xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200903"
- xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance">
-
- <service name="CalculatorService">
- <interface.wsdl interface="http://sample/calculator#wsdl.interface(Calculator)"
- wsdli:wsdlLocation="http://tempuri.org"/>
- </service>
-
- <reference name="divideService">
- <interface.wsdl interface="http://sample/calculator#wsdl.interface(Divide)"/>
- </reference>
-
-</componentType>
+<?xml version="1.0" encoding="ASCII"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<componentType xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200903" + xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance"> + + <service name="CalculatorService"> + <interface.wsdl interface="http://sample/calculator#wsdl.interface(Calculator)" + wsdli:wsdlLocation="http://tempuri.org"/> + </service> + + <reference name="divideService"> + <interface.wsdl interface="http://sample/calculator#wsdl.interface(Divide)"/> + </reference> + +</componentType>
\ No newline at end of file diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/example.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/example.wsdl index 747bb0b76d..5e8e5dad0d 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/example.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/example.wsdl @@ -1,26 +1,26 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<wsdl:definitions targetNamespace="http://www.example.org"
- xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
- name="example">
-
- <wsdl:portType name="HelloWorld">
- </wsdl:portType>
-</wsdl:definitions>
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<wsdl:definitions targetNamespace="http://www.example.org" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + name="example"> + + <wsdl:portType name="HelloWorld"> + </wsdl:portType> +</wsdl:definitions> diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/invalid-stockquote.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/invalid-stockquote.wsdl index a08a546424..ad81fc7867 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/invalid-stockquote.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/invalid-stockquote.wsdl @@ -1,58 +1,58 @@ -<?xml version="1.0"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<definitions name="StockQuote" targetNamespace="http://example.com/stockquote.wsdl"
- xmlns:tns="http://example.com/stockquote.wsdl" xmlns:xsd1="http://example.com/stockquote.xsd"
- xmlns="http://schemas.xmlsoap.org/wsdl/">
-
- <types>
- <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema">
- <element name="getLastTradePrice1">
- <complexType>
- <sequence>
- <element name="tickerSymbol" type="string" />
- </sequence>
- </complexType>
- </element>
- <element name="getLastTradePriceResponse">
- <complexType>
- <sequence>
- <element name="price" type="float" />
- </sequence>
- </complexType>
- </element>
- </schema>
- </types>
-
- <message name="GetLastTradePriceInput">
- <part name="body" element="xsd1:getLastTradePrice" />
- </message>
-
- <message name="GetLastTradePriceOutput">
- <part name="body" element="xsd1:getLastTradePriceResponse" />
- </message>
-
- <portType name="StockQuotePortType">
- <operation name="getLastTradePrice">
- <input message="tns:GetLastTradePriceInput" />
- <output message="tns:GetLastTradePriceOutput" />
- </operation>
- </portType>
-
+<?xml version="1.0"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<definitions name="StockQuote" targetNamespace="http://example.com/stockquote.wsdl" + xmlns:tns="http://example.com/stockquote.wsdl" xmlns:xsd1="http://example.com/stockquote.xsd" + xmlns="http://schemas.xmlsoap.org/wsdl/"> + + <types> + <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema"> + <element name="getLastTradePrice1"> + <complexType> + <sequence> + <element name="tickerSymbol" type="string" /> + </sequence> + </complexType> + </element> + <element name="getLastTradePriceResponse"> + <complexType> + <sequence> + <element name="price" type="float" /> + </sequence> + </complexType> + </element> + </schema> + </types> + + <message name="GetLastTradePriceInput"> + <part name="body" element="xsd1:getLastTradePrice" /> + </message> + + <message name="GetLastTradePriceOutput"> + <part name="body" element="xsd1:getLastTradePriceResponse" /> + </message> + + <portType name="StockQuotePortType"> + <operation name="getLastTradePrice"> + <input message="tns:GetLastTradePriceInput" /> + <output message="tns:GetLastTradePriceOutput" /> + </operation> + </portType> + </definitions>
\ No newline at end of file diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/ipo.xsd b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/ipo.xsd index db1b693448..241ec15d36 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/ipo.xsd +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/ipo.xsd @@ -1,136 +1,136 @@ -<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<schema targetNamespace="http://www.example.com/IPO"
- xmlns="http://www.w3.org/2001/XMLSchema"
- xmlns:ipo="http://www.example.com/IPO">
-
- <annotation>
- <documentation xml:lang="en">
- International Purchase order schema for Example.com
- Copyright 2000 Example.com. All rights reserved.
- </documentation>
- </annotation>
-
-
- <element name="purchaseOrder" type="ipo:PurchaseOrderType" />
-
- <element name="comment" type="string" />
-
- <complexType name="PurchaseOrderType">
- <sequence>
- <element name="shipTo" type="ipo:Address" />
- <element name="billTo" type="ipo:Address" />
- <element ref="ipo:comment" minOccurs="0" />
- <element name="items" type="ipo:Items" />
- </sequence>
- <attribute name="orderDate" type="date" />
- </complexType>
-
- <complexType name="Items">
- <sequence>
- <element name="item" minOccurs="0" maxOccurs="unbounded">
- <complexType>
- <sequence>
- <element name="productName" type="string" />
- <element name="quantity">
- <simpleType>
- <restriction base="positiveInteger">
- <maxExclusive value="100" />
- </restriction>
- </simpleType>
- </element>
- <element name="USPrice" type="decimal" />
- <element ref="ipo:comment" minOccurs="0" />
- <element name="shipDate" type="date"
- minOccurs="0" />
- </sequence>
- <attribute name="partNum" type="ipo:SKU"
- use="required" />
- </complexType>
- </element>
- </sequence>
- </complexType>
-
- <simpleType name="SKU">
- <restriction base="string">
- <pattern value="\d{3}-[A-Z]{2}" />
- </restriction>
- </simpleType>
-
- <complexType name="Address">
- <sequence>
- <element name="name" type="string" />
- <element name="street" type="string" />
- <element name="city" type="string" />
- </sequence>
- </complexType>
-
- <complexType name="USAddress">
- <complexContent>
- <extension base="ipo:Address">
- <sequence>
- <element name="state" type="ipo:USState" />
- <element name="zip" type="positiveInteger" />
- </sequence>
- </extension>
- </complexContent>
- </complexType>
-
- <complexType name="UKAddress">
- <complexContent>
- <extension base="ipo:Address">
- <sequence>
- <element name="postcode" type="ipo:UKPostcode" />
- </sequence>
- <attribute name="exportCode" type="positiveInteger"
- fixed="1" />
- </extension>
- </complexContent>
- </complexType>
-
- <!-- other Address derivations for more countries -->
-
- <simpleType name="USState">
- <restriction base="string">
- <enumeration value="AK" />
- <enumeration value="AL" />
- <enumeration value="AR" />
- <enumeration value="CA" />
- <enumeration value="PA" />
- <!-- and so on ... -->
- </restriction>
- </simpleType>
-
- <simpleType name="Postcode">
- <restriction base="string">
- <length value="7" fixed="true" />
- </restriction>
- </simpleType>
-
-
- <simpleType name="UKPostcode">
- <restriction base="ipo:Postcode">
- <pattern value="[A-Z]{2}\d\s\d[A-Z]{2}" />
- </restriction>
- </simpleType>
-
-
-
-</schema>
-
+<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<schema targetNamespace="http://www.example.com/IPO" + xmlns="http://www.w3.org/2001/XMLSchema" + xmlns:ipo="http://www.example.com/IPO"> + + <annotation> + <documentation xml:lang="en"> + International Purchase order schema for Example.com + Copyright 2000 Example.com. All rights reserved. + </documentation> + </annotation> + + + <element name="purchaseOrder" type="ipo:PurchaseOrderType" /> + + <element name="comment" type="string" /> + + <complexType name="PurchaseOrderType"> + <sequence> + <element name="shipTo" type="ipo:Address" /> + <element name="billTo" type="ipo:Address" /> + <element ref="ipo:comment" minOccurs="0" /> + <element name="items" type="ipo:Items" /> + </sequence> + <attribute name="orderDate" type="date" /> + </complexType> + + <complexType name="Items"> + <sequence> + <element name="item" minOccurs="0" maxOccurs="unbounded"> + <complexType> + <sequence> + <element name="productName" type="string" /> + <element name="quantity"> + <simpleType> + <restriction base="positiveInteger"> + <maxExclusive value="100" /> + </restriction> + </simpleType> + </element> + <element name="USPrice" type="decimal" /> + <element ref="ipo:comment" minOccurs="0" /> + <element name="shipDate" type="date" + minOccurs="0" /> + </sequence> + <attribute name="partNum" type="ipo:SKU" + use="required" /> + </complexType> + </element> + </sequence> + </complexType> + + <simpleType name="SKU"> + <restriction base="string"> + <pattern value="\d{3}-[A-Z]{2}" /> + </restriction> + </simpleType> + + <complexType name="Address"> + <sequence> + <element name="name" type="string" /> + <element name="street" type="string" /> + <element name="city" type="string" /> + </sequence> + </complexType> + + <complexType name="USAddress"> + <complexContent> + <extension base="ipo:Address"> + <sequence> + <element name="state" type="ipo:USState" /> + <element name="zip" type="positiveInteger" /> + </sequence> + </extension> + </complexContent> + </complexType> + + <complexType name="UKAddress"> + <complexContent> + <extension base="ipo:Address"> + <sequence> + <element name="postcode" type="ipo:UKPostcode" /> + </sequence> + <attribute name="exportCode" type="positiveInteger" + fixed="1" /> + </extension> + </complexContent> + </complexType> + + <!-- other Address derivations for more countries --> + + <simpleType name="USState"> + <restriction base="string"> + <enumeration value="AK" /> + <enumeration value="AL" /> + <enumeration value="AR" /> + <enumeration value="CA" /> + <enumeration value="PA" /> + <!-- and so on ... --> + </restriction> + </simpleType> + + <simpleType name="Postcode"> + <restriction base="string"> + <length value="7" fixed="true" /> + </restriction> + </simpleType> + + + <simpleType name="UKPostcode"> + <restriction base="ipo:Postcode"> + <pattern value="[A-Z]{2}\d\s\d[A-Z]{2}" /> + </restriction> + </simpleType> + + + +</schema> + diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/stockquote.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/stockquote.wsdl index 466ceb23da..39cd5547d9 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/stockquote.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/stockquote.wsdl @@ -1,58 +1,58 @@ -<?xml version="1.0"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<definitions name="StockQuote" targetNamespace="http://example.com/stockquote.wsdl"
- xmlns:tns="http://example.com/stockquote.wsdl" xmlns:xsd1="http://example.com/stockquote.xsd"
- xmlns="http://schemas.xmlsoap.org/wsdl/">
-
- <types>
- <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema">
- <element name="getLastTradePrice">
- <complexType>
- <sequence>
- <element name="tickerSymbol" type="string" />
- </sequence>
- </complexType>
- </element>
- <element name="getLastTradePriceResponse">
- <complexType>
- <sequence>
- <element name="price" type="float" />
- </sequence>
- </complexType>
- </element>
- </schema>
- </types>
-
- <message name="GetLastTradePriceInput">
- <part name="body" element="xsd1:getLastTradePrice" />
- </message>
-
- <message name="GetLastTradePriceOutput">
- <part name="body" element="xsd1:getLastTradePriceResponse" />
- </message>
-
- <portType name="StockQuotePortType">
- <operation name="getLastTradePrice">
- <input message="tns:GetLastTradePriceInput" />
- <output message="tns:GetLastTradePriceOutput" />
- </operation>
- </portType>
-
+<?xml version="1.0"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<definitions name="StockQuote" targetNamespace="http://example.com/stockquote.wsdl" + xmlns:tns="http://example.com/stockquote.wsdl" xmlns:xsd1="http://example.com/stockquote.xsd" + xmlns="http://schemas.xmlsoap.org/wsdl/"> + + <types> + <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema"> + <element name="getLastTradePrice"> + <complexType> + <sequence> + <element name="tickerSymbol" type="string" /> + </sequence> + </complexType> + </element> + <element name="getLastTradePriceResponse"> + <complexType> + <sequence> + <element name="price" type="float" /> + </sequence> + </complexType> + </element> + </schema> + </types> + + <message name="GetLastTradePriceInput"> + <part name="body" element="xsd1:getLastTradePrice" /> + </message> + + <message name="GetLastTradePriceOutput"> + <part name="body" element="xsd1:getLastTradePriceResponse" /> + </message> + + <portType name="StockQuotePortType"> + <operation name="getLastTradePrice"> + <input message="tns:GetLastTradePriceInput" /> + <output message="tns:GetLastTradePriceOutput" /> + </operation> + </portType> + </definitions>
\ No newline at end of file diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test1.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test1.wsdl index d39956af0a..8e26f7b4b5 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test1.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test1.wsdl @@ -1,45 +1,45 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld"
- xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld">
-
- <wsdl:import location="test2.wsdl" namespace="http://helloworld"></wsdl:import>
-
- <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld">
- <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="getGreetings">
- <wsdlsoap:operation soapAction="" />
- <wsdl:input name="getGreetingsRequest">
- <wsdlsoap:body use="literal" />
- </wsdl:input>
- <wsdl:output name="getGreetingsResponse">
- <wsdlsoap:body use="literal" />
- </wsdl:output>
- </wsdl:operation>
- </wsdl:binding>
-
- <wsdl:service name="HelloWorldService">
- <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort">
- <wsdlsoap:address location="http://localhost:8085/sample-helloworldws-1.0-SNAPSHOT/services/HelloWorldWebService" />
- </wsdl:port>
- </wsdl:service>
-
-</wsdl:definitions>
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld"> + + <wsdl:import location="test2.wsdl" namespace="http://helloworld"></wsdl:import> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction="" /> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal" /> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8085/sample-helloworldws-1.0-SNAPSHOT/services/HelloWorldWebService" /> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test1.xsd b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test1.xsd index f3dbda1051..c2210f4a94 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test1.xsd +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test1.xsd @@ -1,33 +1,33 @@ -<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<schema targetNamespace="http://www.example.com/Customer" xmlns="http://www.w3.org/2001/XMLSchema"
- xmlns:ipo="http://www.example.com/IPO" xmlns:tns="http://www.example.com/Customer">
- <import namespace="http://www.example.com/IPO" schemaLocation="ipo.xsd" />
-
- <complexType name="Customer">
- <sequence>
- <element name="customerID" type="string"></element>
- <element name="name" type="string"></element>
- <element name="order" type="ipo:PurchaseOrderType" />
- </sequence>
- </complexType>
- <element name="customer" type="tns:Customer"></element>
-
-</schema>
-
+<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<schema targetNamespace="http://www.example.com/Customer" xmlns="http://www.w3.org/2001/XMLSchema" + xmlns:ipo="http://www.example.com/IPO" xmlns:tns="http://www.example.com/Customer"> + <import namespace="http://www.example.com/IPO" schemaLocation="ipo.xsd" /> + + <complexType name="Customer"> + <sequence> + <element name="customerID" type="string"></element> + <element name="name" type="string"></element> + <element name="order" type="ipo:PurchaseOrderType" /> + </sequence> + </complexType> + <element name="customer" type="tns:Customer"></element> + +</schema> + diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test2.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test2.wsdl index 0cd6819841..529b395fd5 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test2.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/test2.wsdl @@ -1,63 +1,63 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld"
- xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld">
-
- <wsdl:types>
- <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema">
-
- <import namespace="http://www.example.com/IPO" schemaLocation="ipo.xsd" />
-
- <element name="getGreetings">
- <complexType>
- <sequence>
- <element name="name" type="xsd:string" />
- </sequence>
- </complexType>
- </element>
-
- <element name="getGreetingsResponse">
- <complexType>
- <sequence>
- <element name="getGreetingsReturn" type="xsd:string" />
- </sequence>
- </complexType>
- </element>
-
- </schema>
- </wsdl:types>
-
- <wsdl:message name="getGreetingsRequest">
- <wsdl:part element="tns:getGreetings" name="parameters" />
- </wsdl:message>
-
- <wsdl:message name="getGreetingsResponse">
- <wsdl:part element="tns:getGreetingsResponse" name="parameters" />
- </wsdl:message>
-
- <wsdl:portType name="HelloWorld">
- <wsdl:operation name="getGreetings">
- <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest" />
- <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse" />
- </wsdl:operation>
- </wsdl:portType>
-
-</wsdl:definitions>
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <import namespace="http://www.example.com/IPO" schemaLocation="ipo.xsd" /> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string" /> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string" /> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters" /> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters" /> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest" /> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse" /> + </wsdl:operation> + </wsdl:portType> + +</wsdl:definitions> diff --git a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/unwrapped-stockquote.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/unwrapped-stockquote.wsdl index b7beeed46d..666a7e4069 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/unwrapped-stockquote.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/org/apache/tuscany/sca/interfacedef/wsdl/xml/unwrapped-stockquote.wsdl @@ -1,76 +1,76 @@ -<?xml version="1.0"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<definitions name="StockQuote" targetNamespace="http://example.com/stockquote.wsdl"
- xmlns:tns="http://example.com/stockquote.wsdl" xmlns:xsd1="http://example.com/stockquote.xsd"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns="http://schemas.xmlsoap.org/wsdl/">
-
- <types>
- <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema">
- <element name="getLastTradePrice">
- <complexType>
- <sequence>
- <element name="tickerSymbol" type="string" />
- </sequence>
- </complexType>
- </element>
- <element name="getLastTradePriceResponse">
- <complexType>
- <sequence>
- <element name="price" type="float" />
- </sequence>
- </complexType>
- </element>
- </schema>
- </types>
-
- <message name="GetLastTradePriceInput1">
- <part name="body" element="xsd1:getLastTradePrice" />
- </message>
-
- <message name="GetLastTradePriceOutput1">
- <part name="body" element="xsd1:getLastTradePriceResponse" />
- </message>
-
- <message name="GetLastTradePriceInput2">
- <part name="body" element="xsd1:getLastTradePrice" />
- <part name="other" type="xsd:string"/>
- </message>
-
- <message name="GetLastTradePriceOutput2">
- <part name="body" element="xsd1:getLastTradePriceResponse" />
- </message>
-
- <portType name="StockQuotePortType">
- <operation name="getLastTradePrice">
- <input message="tns:GetLastTradePriceInput1" />
- <output message="tns:GetLastTradePriceOutput1" />
- </operation>
- <operation name="getLastTradePrice1">
- <input message="tns:GetLastTradePriceInput1" />
- <output message="tns:GetLastTradePriceOutput1" />
- </operation>
- <operation name="getLastTradePrice2">
- <input message="tns:GetLastTradePriceInput2" />
- <output message="tns:GetLastTradePriceOutput2" />
- </operation>
- </portType>
-
+<?xml version="1.0"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<definitions name="StockQuote" targetNamespace="http://example.com/stockquote.wsdl" + xmlns:tns="http://example.com/stockquote.wsdl" xmlns:xsd1="http://example.com/stockquote.xsd" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns="http://schemas.xmlsoap.org/wsdl/"> + + <types> + <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema"> + <element name="getLastTradePrice"> + <complexType> + <sequence> + <element name="tickerSymbol" type="string" /> + </sequence> + </complexType> + </element> + <element name="getLastTradePriceResponse"> + <complexType> + <sequence> + <element name="price" type="float" /> + </sequence> + </complexType> + </element> + </schema> + </types> + + <message name="GetLastTradePriceInput1"> + <part name="body" element="xsd1:getLastTradePrice" /> + </message> + + <message name="GetLastTradePriceOutput1"> + <part name="body" element="xsd1:getLastTradePriceResponse" /> + </message> + + <message name="GetLastTradePriceInput2"> + <part name="body" element="xsd1:getLastTradePrice" /> + <part name="other" type="xsd:string"/> + </message> + + <message name="GetLastTradePriceOutput2"> + <part name="body" element="xsd1:getLastTradePriceResponse" /> + </message> + + <portType name="StockQuotePortType"> + <operation name="getLastTradePrice"> + <input message="tns:GetLastTradePriceInput1" /> + <output message="tns:GetLastTradePriceOutput1" /> + </operation> + <operation name="getLastTradePrice1"> + <input message="tns:GetLastTradePriceInput1" /> + <output message="tns:GetLastTradePriceOutput1" /> + </operation> + <operation name="getLastTradePrice2"> + <input message="tns:GetLastTradePriceInput2" /> + <output message="tns:GetLastTradePriceOutput2" /> + </operation> + </portType> + </definitions>
\ No newline at end of file diff --git a/java/sca/modules/interface-wsdl/src/test/resources/policy/stockquote_policy.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/policy/stockquote_policy.wsdl index b265831509..813d9e8291 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/policy/stockquote_policy.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/policy/stockquote_policy.wsdl @@ -1,62 +1,62 @@ -<?xml version="1.0"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<definitions name="StockQuote"
- targetNamespace="http://example.com/stockquote.wsdl"
- xmlns:tns="http://example.com/stockquote.wsdl"
- xmlns:xsd="http://example.com/stockquote.xsd"
- xmlns:sca="http://docs.oasis-open.org/ns/opencsa/sca/200903"
- xmlns="http://schemas.xmlsoap.org/wsdl/">
-
- <types>
- <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema">
- <element name="getLastTradePrice">
- <complexType>
- <sequence>
- <element name="tickerSymbol" type="string" />
- </sequence>
- </complexType>
- </element>
- <element name="getLastTradePriceResponse">
- <complexType>
- <sequence>
- <element name="price" type="float" />
- </sequence>
- </complexType>
- </element>
- </schema>
- </types>
-
- <message name="GetLastTradePriceInput">
- <part name="body" element="xsd:getLastTradePrice" />
- </message>
-
- <message name="GetLastTradePriceOutput">
- <part name="body" element="xsd:getLastTradePriceResponse" />
- </message>
-
- <portType name="StockQuotePortType" sca:requires="sca:conversational tns:PolicyIntent">
- <operation name="getLastTradePrice">
- <input message="tns:GetLastTradePriceInput" />
- <output message="tns:GetLastTradePriceOutput" />
- </operation>
- <operation name="cancel" sca:endsConversation="true"/>
- </portType>
-
+<?xml version="1.0"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<definitions name="StockQuote" + targetNamespace="http://example.com/stockquote.wsdl" + xmlns:tns="http://example.com/stockquote.wsdl" + xmlns:xsd="http://example.com/stockquote.xsd" + xmlns:sca="http://docs.oasis-open.org/ns/opencsa/sca/200903" + xmlns="http://schemas.xmlsoap.org/wsdl/"> + + <types> + <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema"> + <element name="getLastTradePrice"> + <complexType> + <sequence> + <element name="tickerSymbol" type="string" /> + </sequence> + </complexType> + </element> + <element name="getLastTradePriceResponse"> + <complexType> + <sequence> + <element name="price" type="float" /> + </sequence> + </complexType> + </element> + </schema> + </types> + + <message name="GetLastTradePriceInput"> + <part name="body" element="xsd:getLastTradePrice" /> + </message> + + <message name="GetLastTradePriceOutput"> + <part name="body" element="xsd:getLastTradePriceResponse" /> + </message> + + <portType name="StockQuotePortType" sca:requires="sca:conversational tns:PolicyIntent"> + <operation name="getLastTradePrice"> + <input message="tns:GetLastTradePriceInput" /> + <output message="tns:GetLastTradePriceOutput" /> + </operation> + <operation name="cancel" sca:endsConversation="true"/> + </portType> + </definitions>
\ No newline at end of file diff --git a/java/sca/modules/interface-wsdl/src/test/resources/wsdl/helloworld-interface.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/wsdl/helloworld-interface.wsdl index b0b6644e7f..9d9376ad6c 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/wsdl/helloworld-interface.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/wsdl/helloworld-interface.wsdl @@ -1,67 +1,67 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld"
- xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld">
-
- <wsdl:types>
- <schema elementFormDefault="qualified" targetNamespace="http://helloworld"
- xmlns="http://www.w3.org/2001/XMLSchema" xmlns:g="http://greeting">
-
- <!--
- <import namespace="http://greeting" schemaLocation="../xsd/greeting.xsd" />
- -->
- <include schemaLocation="../xsd/helloworld.xsd" />
-
- <element name="getGreetings">
- <complexType>
- <sequence>
- <element name="name" type="g:Name" />
- </sequence>
- </complexType>
- </element>
-
- <element name="getGreetingsResponse">
- <complexType>
- <sequence>
- <element name="getGreetingsReturn" type="g:Greeting" />
- </sequence>
- </complexType>
- </element>
-
- </schema>
- </wsdl:types>
-
- <wsdl:message name="getGreetingsRequest">
- <wsdl:part element="tns:getGreetings" name="parameters" />
- </wsdl:message>
-
- <wsdl:message name="getGreetingsResponse">
- <wsdl:part element="tns:getGreetingsResponse" name="parameters" />
- </wsdl:message>
-
- <wsdl:portType name="HelloWorld">
- <wsdl:operation name="getGreetings">
- <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest" />
- <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse" />
- </wsdl:operation>
- </wsdl:portType>
-
-</wsdl:definitions>
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" + xmlns="http://www.w3.org/2001/XMLSchema" xmlns:g="http://greeting"> + + <!-- + <import namespace="http://greeting" schemaLocation="../xsd/greeting.xsd" /> + --> + <include schemaLocation="../xsd/helloworld.xsd" /> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="g:Name" /> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="g:Greeting" /> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters" /> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters" /> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest" /> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse" /> + </wsdl:operation> + </wsdl:portType> + +</wsdl:definitions> diff --git a/java/sca/modules/interface-wsdl/src/test/resources/wsdl/helloworld-service.wsdl b/java/sca/modules/interface-wsdl/src/test/resources/wsdl/helloworld-service.wsdl index 0a7979e308..3885357625 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/wsdl/helloworld-service.wsdl +++ b/java/sca/modules/interface-wsdl/src/test/resources/wsdl/helloworld-service.wsdl @@ -1,49 +1,49 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
--->
-<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld"
- xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld">
-
- <wsdl:import location="helloworld-interface.wsdl" namespace="http://helloworld"></wsdl:import>
- <!--
- <wsdl:import namespace="http://helloworld"></wsdl:import>
- -->
-
- <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld">
- <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="getGreetings">
- <wsdlsoap:operation soapAction="" />
- <wsdl:input name="getGreetingsRequest">
- <wsdlsoap:body use="literal" />
- </wsdl:input>
- <wsdl:output name="getGreetingsResponse">
- <wsdlsoap:body use="literal" />
- </wsdl:output>
- </wsdl:operation>
- </wsdl:binding>
-
- <wsdl:service name="HelloWorldService">
- <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort">
- <wsdlsoap:address
- location="http://localhost:8085/sample-helloworldws-1.0-SNAPSHOT/services/HelloWorldWebService" />
- </wsdl:port>
- </wsdl:service>
-
-</wsdl:definitions>
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld"> + + <wsdl:import location="helloworld-interface.wsdl" namespace="http://helloworld"></wsdl:import> + <!-- + <wsdl:import namespace="http://helloworld"></wsdl:import> + --> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction="" /> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal" /> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address + location="http://localhost:8085/sample-helloworldws-1.0-SNAPSHOT/services/HelloWorldWebService" /> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/java/sca/modules/interface-wsdl/src/test/resources/xsd/greeting.xsd b/java/sca/modules/interface-wsdl/src/test/resources/xsd/greeting.xsd index 160749bb18..635ca25bfc 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/xsd/greeting.xsd +++ b/java/sca/modules/interface-wsdl/src/test/resources/xsd/greeting.xsd @@ -1,29 +1,29 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<schema targetNamespace="http://greeting" xmlns="http://www.w3.org/2001/XMLSchema">
- <include schemaLocation="name.xsd" />
- <complexType name="Greeting">
- <sequence>
- <element name="message" type="string" />
- <element name="name" type="Name" />
- </sequence>
- </complexType>
-
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. +--> +<schema targetNamespace="http://greeting" xmlns="http://www.w3.org/2001/XMLSchema"> + <include schemaLocation="name.xsd" /> + <complexType name="Greeting"> + <sequence> + <element name="message" type="string" /> + <element name="name" type="Name" /> + </sequence> + </complexType> + </schema>
\ No newline at end of file diff --git a/java/sca/modules/interface-wsdl/src/test/resources/xsd/helloworld.xsd b/java/sca/modules/interface-wsdl/src/test/resources/xsd/helloworld.xsd index e1f00fe0d5..bb0c9bc7b7 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/xsd/helloworld.xsd +++ b/java/sca/modules/interface-wsdl/src/test/resources/xsd/helloworld.xsd @@ -1,22 +1,22 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<schema targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema">
- <import namespace="http://greeting" schemaLocation="greeting.xsd" />
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. +--> +<schema targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + <import namespace="http://greeting" schemaLocation="greeting.xsd" /> </schema>
\ No newline at end of file diff --git a/java/sca/modules/interface-wsdl/src/test/resources/xsd/name.xsd b/java/sca/modules/interface-wsdl/src/test/resources/xsd/name.xsd index aed784c2f5..300de931ec 100644 --- a/java/sca/modules/interface-wsdl/src/test/resources/xsd/name.xsd +++ b/java/sca/modules/interface-wsdl/src/test/resources/xsd/name.xsd @@ -1,29 +1,29 @@ -<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<schema targetNamespace="http://greeting" xmlns="http://www.w3.org/2001/XMLSchema">
-
- <complexType name="Name">
- <sequence>
- <element name="firstName" type="string" />
- <element name="lastName" type="string" />
- </sequence>
- </complexType>
-
+<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. +--> +<schema targetNamespace="http://greeting" xmlns="http://www.w3.org/2001/XMLSchema"> + + <complexType name="Name"> + <sequence> + <element name="firstName" type="string" /> + <element name="lastName" type="string" /> + </sequence> + </complexType> + </schema>
\ No newline at end of file |