incubator-yoko-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From eno...@apache.org
Subject svn commit: r530387 - in /incubator/yoko/trunk/tools/src: main/java/org/apache/yoko/tools/processors/idl/ test/java/org/apache/yoko/tools/processors/ test/resources/idl/
Date Thu, 19 Apr 2007 11:38:12 GMT
Author: enolan
Date: Thu Apr 19 04:38:11 2007
New Revision: 530387

URL: http://svn.apache.org/viewvc?view=rev&rev=530387
Log:
Yoko-348 - Support forward interface declarations in a typedef.

Added:
    incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefDeferredAction.java
  (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/ForwardInterfaceTypedef.idl
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_ForwardInterfaceTypedef.wsdl
  (with props)
Modified:
    incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java
    incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ScopedNameVisitor.java
    incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java
    incubator/yoko/trunk/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java

Modified: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java?view=diff&rev=530387&r1=530386&r2=530387
==============================================================================
--- incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java
(original)
+++ incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java
Thu Apr 19 04:38:11 2007
@@ -98,12 +98,7 @@
         XmlSchemaType stype = null;
         CorbaTypeImpl ctype = null;
         if (identifierNode != null) {
-            Scope scopedName = getScope();
-            /*stype = generateSchemaArray(scopedName.toString(), size, 
-                                        result.getSchemaType().getQName(), result.getFullyQualifiedName());
-            ctype = generateCorbaArray(scopedName, size, 
-                                       result.getCorbaType().getQName(),
-                                       getFullyQualifiedName());*/
+            Scope scopedName = getScope();            
             if (result.getSchemaType() != null) {
                 stype = generateSchemaArray(scopedName.toString(), size, 
                                             result.getSchemaType(), 

Modified: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ScopedNameVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ScopedNameVisitor.java?view=diff&rev=530387&r1=530386&r2=530387
==============================================================================
--- incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ScopedNameVisitor.java
(original)
+++ incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/ScopedNameVisitor.java
Thu Apr 19 04:38:11 2007
@@ -76,8 +76,7 @@
         CorbaTypeImpl ctype = null;        
         
         if (PrimitiveTypesVisitor.accept(node)) {
-            // primitive type
-            
+            // primitive type            
             PrimitiveTypesVisitor primitiveVisitor = new PrimitiveTypesVisitor(null, schemas);
             primitiveVisitor.visit(node);
             
@@ -85,7 +84,6 @@
             ctype = primitiveVisitor.getCorbaType();            
         } else if (isforwardDeclared(getScope(), schema, node, scopedNames, wsdlVisitor))
{
             // forward declaration
-
             Scope scope = forwardDeclared(getScope(), schema, node, scopedNames, wsdlVisitor);
             setFullyQualifiedName(scope);
             // how will we create the corbatype ????

Added: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefDeferredAction.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefDeferredAction.java?view=auto&rev=530387
==============================================================================
--- incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefDeferredAction.java
(added)
+++ incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefDeferredAction.java
Thu Apr 19 04:38:11 2007
@@ -0,0 +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.yoko.tools.processors.idl;
+
+import org.apache.schemas.yoko.bindings.corba.Alias;
+import org.apache.schemas.yoko.bindings.corba.ParamType;
+import org.apache.ws.commons.schema.XmlSchemaSimpleTypeRestriction;
+import org.apache.ws.commons.schema.XmlSchemaType;
+import org.apache.yoko.wsdl.CorbaTypeImpl;
+
+public class TypedefDeferredAction extends DeferredActionBase {
+
+    protected XmlSchemaSimpleTypeRestriction restriction;
+    protected ParamType param;
+    protected Alias alias;    
+    
+    public TypedefDeferredAction(XmlSchemaSimpleTypeRestriction restrict, 
+                                   Alias aliasType, Scope scope) {                      
    
+        super(scope);
+        restriction = restrict;          
+        alias = aliasType;        
+    }
+    
+    public TypedefDeferredAction(XmlSchemaSimpleTypeRestriction restrict, 
+                                 Scope scope) {                           
+        super(scope);
+        restriction = restrict;      
+    }        
+    
+    public TypedefDeferredAction(Alias aliasType, Scope scope) {                        
  
+        super(scope);
+        alias = aliasType;                
+    }                   
+    
+    public void doDeferredAction(XmlSchemaType stype, CorbaTypeImpl ctype) {
+        if (restriction != null) {
+            restriction.setBaseTypeName(stype.getQName());
+        }        
+        if (alias != null) {
+            alias.setBasetype(ctype.getQName());            
+            alias.setType(stype.getQName());
+        }        
+    }
+       
+}
+
+
+

Propchange: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefDeferredAction.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefDeferredAction.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java?view=diff&rev=530387&r1=530386&r2=530387
==============================================================================
--- incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java
(original)
+++ incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java
Thu Apr 19 04:38:11 2007
@@ -131,7 +131,8 @@
             if (!ArrayVisitor.accept(identifierNode)) {
                 generateAlias(identifierNode,
                               schemaType,
-                              corbaType);
+                              corbaType,
+                              fullyQualifiedName);
 
                 schemaType = getSchemaType();
                 corbaType = getCorbaType();
@@ -154,13 +155,19 @@
     
     private void generateAlias(AST identifierNode,
                                XmlSchemaType schemaType,
-                               CorbaTypeImpl corbaType) {
+                               CorbaTypeImpl corbaType,
+                               Scope fqName) {
         // xmlschema:simpleType
         XmlSchemaSimpleType simpleType = new XmlSchemaSimpleType(schema);
         Scope scopedName = new Scope(getScope(), identifierNode);
         simpleType.setName(scopedName.toString());
         XmlSchemaSimpleTypeRestriction restriction = new XmlSchemaSimpleTypeRestriction();
-        restriction.setBaseTypeName(schemaType.getQName());
+        if (schemaType != null) {
+            restriction.setBaseTypeName(schemaType.getQName());
+        } else {
+            wsdlVisitor.getDeferredActions().
+                add(new TypedefDeferredAction(restriction, fqName)); 
+        }
         simpleType.setContent(restriction);
         
         // add xmlschema:simpleType
@@ -170,8 +177,13 @@
         // corba:alias
         Alias alias = new Alias();
         alias.setQName(new QName(typeMap.getTargetNamespace(), scopedName.toString()));
-        alias.setBasetype(corbaType.getQName());
-        alias.setType(schemaType.getQName());
+        if (corbaType != null || schemaType != null) {
+            alias.setBasetype(corbaType.getQName());
+            alias.setType(schemaType.getQName());
+        } else {
+            wsdlVisitor.getDeferredActions().
+                add(new TypedefDeferredAction(alias, fqName));            
+        }
         alias.setRepositoryID(scopedName.toIDLRepositoryID());
         
         // add corba:alias

Modified: incubator/yoko/trunk/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java?view=diff&rev=530387&r1=530386&r2=530387
==============================================================================
--- incubator/yoko/trunk/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java
(original)
+++ incubator/yoko/trunk/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java
Thu Apr 19 04:38:11 2007
@@ -204,9 +204,14 @@
                            "/idl/expected_ForwardInterfaceAttributes.wsdl");
     }
     
-    public void testForwardInterfaceexceptions() throws Exception {
+    public void testForwardInterfaceExceptions() throws Exception {
         testWSDLGeneration("/idl/ForwardInterfaceException.idl", 
                            "/idl/expected_ForwardInterfaceException.wsdl");
+    }
+    
+    public void testForwardInterfaceTypedef() throws Exception {
+        testWSDLGeneration("/idl/ForwardInterfaceTypedef.idl", 
+                           "/idl/expected_ForwardInterfaceTypedef.wsdl");
     }
     
     public void testIncludeGeneration() throws Exception {

Added: incubator/yoko/trunk/tools/src/test/resources/idl/ForwardInterfaceTypedef.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/ForwardInterfaceTypedef.idl?view=auto&rev=530387
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/ForwardInterfaceTypedef.idl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/ForwardInterfaceTypedef.idl Thu Apr
19 04:38:11 2007
@@ -0,0 +1,78 @@
+/* 
+ * 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.
+*/
+
+module TypedefIf {
+
+    interface IpCall;
+
+    interface typedefCall {
+	    typedef IpCall             myIpCall;
+	    typedef sequence<IpCall>   mySeqIpCall;
+	
+	    typedef struct aStruct {
+	        myIpCall aStructMyLong;
+	    } myStruct;
+	
+	
+	    typedef union aUnion switch (long) {
+	      case 1:
+	        myIpCall    aUnionMyLong;
+	      default:
+	         boolean aUnionMyBoolean;
+	    } myUnion;
+	
+	
+	    struct anotherStruct {
+	        IpCall myOtherLong;
+	        long   anotherLong;
+	    };
+	    typedef anotherStruct myOtherStruct;
+	
+	
+	    void opIn(
+	                in myIpCall            inMyIpCall,
+	                in mySeqIpCall         inMySeqIpCall,
+	                in myStruct            inMyStruct,
+	                in myUnion             inMyUnion,
+	                in myOtherStruct       inMyOtherStruct
+	    );
+	
+	    void opOut(
+	                out myIpCall           outMyIpCall,
+	                out mySeqIpCall        outMySeqIpCall,
+	                out myStruct           outMyStruct,
+	                out myUnion            outMyUnion,
+	                out myOtherStruct      outMyOtherStruct
+	    );
+	
+	    void opInOut(
+	                inout myIpCall         inoutMyIpCall,
+	                inout mySeqIpCall      inoutMySeqIpCall,	
+	                inout myStruct         inoutMyStruct,
+	                inout myUnion          inoutMyUnion,
+	                inout myOtherStruct    inoutMyOtherStruct
+	    );
+
+    };
+
+    interface IpCall {
+        void method();
+    };
+
+};

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_ForwardInterfaceTypedef.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_ForwardInterfaceTypedef.wsdl?view=auto&rev=530387
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_ForwardInterfaceTypedef.wsdl
(added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_ForwardInterfaceTypedef.wsdl
Thu Apr 19 04:38:11 2007
@@ -0,0 +1,312 @@
+<?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://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns:tns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef" xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:corba="http://schemas.apache.org/yoko/bindings/corba" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <corba:typeMapping targetNamespace="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap">
+    <corba:alias xmlns:ns4="http://www.w3.org/2005/08/addressing" xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
basetype="TypedefIf.IpCall" repositoryID="IDL:TypedefIf/typedefCall/myIpCall:1.0" name="TypedefIf.typedefCall.myIpCall"
type="ns4:EndpointReferenceType" />
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap" elemtype="TypedefIf.IpCall"
bound="0" repositoryID="IDL:TypedefIf/typedefCall/mySeqIpCall:1.0" name="TypedefIf.typedefCall.mySeqIpCall"
type="ns4:TypedefIf.typedefCall.mySeqIpCall" />
+    <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap" repositoryID="IDL:TypedefIf/typedefCall/aStruct:1.0"
name="TypedefIf.typedefCall.aStruct" type="ns4:TypedefIf.typedefCall.aStruct">
+      <corba:member name="aStructMyLong" idltype="TypedefIf.typedefCall.myIpCall" />
+    </corba:struct>
+    <corba:alias xmlns:ns4="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap" basetype="TypedefIf.typedefCall.aStruct"
repositoryID="IDL:TypedefIf/typedefCall/myStruct:1.0" name="TypedefIf.typedefCall.myStruct"
type="ns4:TypedefIf.typedefCall.aStruct" />
+    <corba:union xmlns:ns4="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap" discriminator="corba:long"
repositoryID="IDL:TypedefIf/typedefCall/aUnion:1.0" name="TypedefIf.typedefCall.aUnion" type="ns4:TypedefIf.typedefCall.aUnion">
+      <corba:unionbranch name="aUnionMyLong" idltype="TypedefIf.typedefCall.myIpCall">
+        <corba:case label="1" />
+      </corba:unionbranch>
+      <corba:unionbranch name="aUnionMyBoolean" idltype="corba:boolean" default="true"
/>
+    </corba:union>
+    <corba:alias xmlns:ns4="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap" basetype="TypedefIf.typedefCall.aUnion"
repositoryID="IDL:TypedefIf/typedefCall/myUnion:1.0" name="TypedefIf.typedefCall.myUnion"
type="ns4:TypedefIf.typedefCall.aUnion" />
+    <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap" repositoryID="IDL:TypedefIf/typedefCall/anotherStruct:1.0"
name="TypedefIf.typedefCall.anotherStruct" type="ns4:TypedefIf.typedefCall.anotherStruct">
+      <corba:member name="myOtherLong" idltype="TypedefIf.IpCall" />
+      <corba:member name="anotherLong" idltype="corba:long" />
+    </corba:struct>
+    <corba:alias xmlns:ns4="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap" basetype="TypedefIf.typedefCall.anotherStruct"
repositoryID="IDL:TypedefIf/typedefCall/myOtherStruct:1.0" name="TypedefIf.typedefCall.myOtherStruct"
type="ns4:TypedefIf.typedefCall.anotherStruct" />
+    <corba:object xmlns:ns5="http://www.w3.org/2005/08/addressing" xmlns:ns4="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef" binding="TypedefIf.IpCallCORBABinding"
repositoryID="IDL:TypedefIf/IpCall:1.0" name="ns4:TypedefIf.IpCall" type="ns5:EndpointReferenceType"
/>
+  </corba:typeMapping>
+  <wsdl:types>
+    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef"
xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef" xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
+      <xs:import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="http://www.w3.org/2005/08/addressing/ws-addr.xsd">
+      </xs:import>
+      <xs:simpleType name="TypedefIf.typedefCall.myIpCall">
+        <xs:restriction base="wsa:EndpointReferenceType">
+        </xs:restriction>
+      </xs:simpleType>
+      <xs:complexType name="TypedefIf.typedefCall.mySeqIpCall">
+        <xs:sequence>
+          <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="wsa:EndpointReferenceType">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:complexType name="TypedefIf.typedefCall.aStruct">
+        <xs:sequence>
+          <xs:element name="aStructMyLong" type="TypedefIf.typedefCall.myIpCall">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:simpleType name="TypedefIf.typedefCall.myStruct">
+        <xs:restriction base="TypedefIf.typedefCall.aStruct">
+        </xs:restriction>
+      </xs:simpleType>
+      <xs:complexType name="TypedefIf.typedefCall.aUnion">
+        <xs:sequence>
+          <xs:element name="discriminator" type="xs:int">
+          </xs:element>
+          <xs:choice>
+            <xs:element name="aUnionMyLong" type="TypedefIf.typedefCall.myIpCall">
+            </xs:element>
+            <xs:element name="aUnionMyBoolean" type="xs:boolean">
+            </xs:element>
+          </xs:choice>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:simpleType name="TypedefIf.typedefCall.myUnion">
+        <xs:restriction base="TypedefIf.typedefCall.aUnion">
+        </xs:restriction>
+      </xs:simpleType>
+      <xs:complexType name="TypedefIf.typedefCall.anotherStruct">
+        <xs:sequence>
+          <xs:element name="myOtherLong" type="wsa:EndpointReferenceType">
+          </xs:element>
+          <xs:element name="anotherLong" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:simpleType name="TypedefIf.typedefCall.myOtherStruct">
+        <xs:restriction base="TypedefIf.typedefCall.anotherStruct">
+        </xs:restriction>
+      </xs:simpleType>
+      <xs:element name="opIn">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inMyIpCall" type="TypedefIf.typedefCall.myIpCall">
+            </xs:element>
+            <xs:element name="inMySeqIpCall" type="TypedefIf.typedefCall.mySeqIpCall">
+            </xs:element>
+            <xs:element name="inMyStruct" type="TypedefIf.typedefCall.myStruct">
+            </xs:element>
+            <xs:element name="inMyUnion" type="TypedefIf.typedefCall.myUnion">
+            </xs:element>
+            <xs:element name="inMyOtherStruct" type="TypedefIf.typedefCall.myOtherStruct">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="opInResponse">
+        <xs:complexType>
+          <xs:sequence>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="opOut">
+        <xs:complexType>
+          <xs:sequence>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="opOutResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="outMyIpCall" type="TypedefIf.typedefCall.myIpCall">
+            </xs:element>
+            <xs:element name="outMySeqIpCall" type="TypedefIf.typedefCall.mySeqIpCall">
+            </xs:element>
+            <xs:element name="outMyStruct" type="TypedefIf.typedefCall.myStruct">
+            </xs:element>
+            <xs:element name="outMyUnion" type="TypedefIf.typedefCall.myUnion">
+            </xs:element>
+            <xs:element name="outMyOtherStruct" type="TypedefIf.typedefCall.myOtherStruct">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="opInOut">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inoutMyIpCall" type="TypedefIf.typedefCall.myIpCall">
+            </xs:element>
+            <xs:element name="inoutMySeqIpCall" type="TypedefIf.typedefCall.mySeqIpCall">
+            </xs:element>
+            <xs:element name="inoutMyStruct" type="TypedefIf.typedefCall.myStruct">
+            </xs:element>
+            <xs:element name="inoutMyUnion" type="TypedefIf.typedefCall.myUnion">
+            </xs:element>
+            <xs:element name="inoutMyOtherStruct" type="TypedefIf.typedefCall.myOtherStruct">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="opInOutResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inoutMyIpCall" type="TypedefIf.typedefCall.myIpCall">
+            </xs:element>
+            <xs:element name="inoutMySeqIpCall" type="TypedefIf.typedefCall.mySeqIpCall">
+            </xs:element>
+            <xs:element name="inoutMyStruct" type="TypedefIf.typedefCall.myStruct">
+            </xs:element>
+            <xs:element name="inoutMyUnion" type="TypedefIf.typedefCall.myUnion">
+            </xs:element>
+            <xs:element name="inoutMyOtherStruct" type="TypedefIf.typedefCall.myOtherStruct">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="method">
+        <xs:complexType>
+          <xs:sequence>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="methodResponse">
+        <xs:complexType>
+          <xs:sequence>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="TypedefIf.IpCallRef" type="wsa:EndpointReferenceType">
+        <xs:annotation>
+          <xs:appinfo>
+          </xs:appinfo>
+        </xs:annotation>
+      </xs:element>
+    </xs:schema>
+  </wsdl:types>
+  <wsdl:message name="opOutResponse">
+    <wsdl:part name="outparameter" element="tns:opOutResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="opInOut">
+    <wsdl:part name="inparameter" element="tns:opInOut">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="opInOutResponse">
+    <wsdl:part name="outparameter" element="tns:opInOutResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="opIn">
+    <wsdl:part name="inparameter" element="tns:opIn">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="opOut">
+    <wsdl:part name="inparameter" element="tns:opOut">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="method">
+    <wsdl:part name="inparameter" element="tns:method">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="methodResponse">
+    <wsdl:part name="outparameter" element="tns:methodResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="opInResponse">
+    <wsdl:part name="outparameter" element="tns:opInResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:portType name="TypedefIf.IpCall">
+    <wsdl:operation name="method">
+      <wsdl:input name="methodRequest" message="tns:method">
+    </wsdl:input>
+      <wsdl:output name="methodResponse" message="tns:methodResponse">
+    </wsdl:output>
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:portType name="TypedefIf.typedefCall">
+    <wsdl:operation name="opIn">
+      <wsdl:input name="opInRequest" message="tns:opIn">
+    </wsdl:input>
+      <wsdl:output name="opInResponse" message="tns:opInResponse">
+    </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="opOut">
+      <wsdl:input name="opOutRequest" message="tns:opOut">
+    </wsdl:input>
+      <wsdl:output name="opOutResponse" message="tns:opOutResponse">
+    </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="opInOut">
+      <wsdl:input name="opInOutRequest" message="tns:opInOut">
+    </wsdl:input>
+      <wsdl:output name="opInOutResponse" message="tns:opInOutResponse">
+    </wsdl:output>
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:binding name="TypedefIf.typedefCallCORBABinding" type="tns:TypedefIf.typedefCall">
+    <corba:binding repositoryID="IDL:TypedefIf/typedefCall:1.0" />
+    <wsdl:operation name="opIn">
+      <corba:operation name="opIn">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="in" name="inMyIpCall" idltype="TypedefIf.typedefCall.myIpCall" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="in" name="inMySeqIpCall" idltype="TypedefIf.typedefCall.mySeqIpCall" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="in" name="inMyStruct" idltype="TypedefIf.typedefCall.myStruct" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="in" name="inMyUnion" idltype="TypedefIf.typedefCall.myUnion" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="in" name="inMyOtherStruct" idltype="TypedefIf.typedefCall.myOtherStruct" />
+      </corba:operation>
+      <wsdl:input name="opInRequest">
+      </wsdl:input>
+      <wsdl:output name="opInResponse">
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="opOut">
+      <corba:operation name="opOut">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="out" name="outMyIpCall" idltype="TypedefIf.typedefCall.myIpCall" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="out" name="outMySeqIpCall" idltype="TypedefIf.typedefCall.mySeqIpCall" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="out" name="outMyStruct" idltype="TypedefIf.typedefCall.myStruct" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="out" name="outMyUnion" idltype="TypedefIf.typedefCall.myUnion" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="out" name="outMyOtherStruct" idltype="TypedefIf.typedefCall.myOtherStruct" />
+      </corba:operation>
+      <wsdl:input name="opOutRequest">
+      </wsdl:input>
+      <wsdl:output name="opOutResponse">
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="opInOut">
+      <corba:operation name="opInOut">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="inout" name="inoutMyIpCall" idltype="TypedefIf.typedefCall.myIpCall" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="inout" name="inoutMySeqIpCall" idltype="TypedefIf.typedefCall.mySeqIpCall" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="inout" name="inoutMyStruct" idltype="TypedefIf.typedefCall.myStruct" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="inout" name="inoutMyUnion" idltype="TypedefIf.typedefCall.myUnion" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/ForwardInterfaceTypedef/typemap"
mode="inout" name="inoutMyOtherStruct" idltype="TypedefIf.typedefCall.myOtherStruct" />
+      </corba:operation>
+      <wsdl:input name="opInOutRequest">
+      </wsdl:input>
+      <wsdl:output name="opInOutResponse">
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="TypedefIf.IpCallCORBABinding" type="tns:TypedefIf.IpCall">
+    <corba:binding repositoryID="IDL:TypedefIf/IpCall:1.0" />
+    <wsdl:operation name="method">
+      <corba:operation name="method" />
+      <wsdl:input name="methodRequest">
+      </wsdl:input>
+      <wsdl:output name="methodResponse">
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="TypedefIf.typedefCallCORBAService">
+    <wsdl:port name="TypedefIf.typedefCallCORBAPort" binding="tns:TypedefIf.typedefCallCORBABinding">
+      <corba:address location="IOR:" />
+    </wsdl:port>
+  </wsdl:service>
+  <wsdl:service name="TypedefIf.IpCallCORBAService">
+    <wsdl:port name="TypedefIf.IpCallCORBAPort" binding="tns:TypedefIf.IpCallCORBABinding">
+      <corba:address location="IOR:" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>

Propchange: incubator/yoko/trunk/tools/src/test/resources/idl/expected_ForwardInterfaceTypedef.wsdl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/yoko/trunk/tools/src/test/resources/idl/expected_ForwardInterfaceTypedef.wsdl
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/yoko/trunk/tools/src/test/resources/idl/expected_ForwardInterfaceTypedef.wsdl
------------------------------------------------------------------------------
    svn:mime-type = text/xml



Mime
View raw message