You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yoko-commits@incubator.apache.org by mv...@apache.org on 2006/10/20 16:18:17 UTC

svn commit: r466168 - in /incubator/yoko/branches/idltowsdl_anon_refactor/tools/src: main/java/org/apache/yoko/tools/processors/idl/ test/java/org/apache/yoko/tools/processors/ test/resources/idl/

Author: mvescovi
Date: Fri Oct 20 09:18:13 2006
New Revision: 466168

URL: http://svn.apache.org/viewvc?view=rev&rev=466168
Log:
Initial idltowsdl refactor commit. Added Definition and Module visitors.

Added:
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/DefinitionVisitor.java   (with props)
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ModuleVisitor.java   (with props)
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.java
      - copied, changed from r465614, incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Sequence.idl
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Sequence.wsdl   (with props)
Removed:
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java
Modified:
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/AttributeVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ExceptionVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessagePartVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessageVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/OperationVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/PortTypeVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ReturnParameterVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java
    incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Fixed.wsdl

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/AttributeVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/AttributeVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/AttributeVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/AttributeVisitor.java Fri Oct 20 09:18:13 2006
@@ -64,7 +64,6 @@
     private static final String PARAM_NAME        = "_arg";
     private static final String RETURN_PARAM_NAME = "return";
     
-    private WSDLASTVisitor      wsdlASTVisitor;
     private XmlSchema           schema;
     private XmlSchemaCollection schemas;
     private TypeMappingType     typeMap;
@@ -73,17 +72,17 @@
     private PortType            portType;
     private Binding             binding;
     
-    public AttributeVisitor(WSDLASTVisitor visitor,
+    public AttributeVisitor(Definition wsdlDefinition,
+                            TypesVisitor typesVisitor,
                             PortType wsdlPortType,
                             Binding wsdlBinding) {
-        wsdlASTVisitor = visitor;
+        
         // REVISIT: there has to be a better way to access schema and schemas
-        TypesVisitor typesVisitor = wsdlASTVisitor.getTypesVisitor();
         schema = typesVisitor.getSchema();
         schemas = typesVisitor.getSchemas();
         typeMap = typesVisitor.getCorbaTypeMapping();
         //
-        definition = visitor.getDefinition();
+        definition = wsdlDefinition;
         extReg = definition.getExtensionRegistry();
         portType = wsdlPortType;
         binding = wsdlBinding;

Added: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/DefinitionVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/DefinitionVisitor.java?view=auto&rev=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/DefinitionVisitor.java (added)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/DefinitionVisitor.java Fri Oct 20 09:18:13 2006
@@ -0,0 +1,107 @@
+/**
+ * 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 javax.wsdl.Definition;
+
+import antlr.collections.AST;
+
+import org.apache.schemas.yoko.bindings.corba.TypeMappingType;
+
+import org.apache.ws.commons.schema.XmlSchema;
+import org.apache.ws.commons.schema.XmlSchemaCollection;
+
+public class DefinitionVisitor extends TypesVisitorBase {
+    
+    private Definition definition;
+    private XmlSchemaCollection schemas;
+    private XmlSchema schema;
+    private TypeMappingType typeMap;
+
+    private TypesVisitor typesVisitor;
+    private String scope;
+    
+    public DefinitionVisitor(Definition wsdlDefinition,
+                             TypesVisitor typeVisitor,
+                             XmlSchemaCollection xmlSchemas,
+                             XmlSchema xmlSchema,
+                             TypeMappingType corbaTypeMap) {
+        super(xmlSchemas, xmlSchema, corbaTypeMap);
+        schemas = xmlSchemas;
+        schema = xmlSchema;
+        typeMap = corbaTypeMap;
+        definition = wsdlDefinition;
+        typesVisitor = typeVisitor;
+    }
+
+    public void visit(AST node) {
+        // <definition> ::= <type_dcl> ";"
+        //                | <const_dcl> ";"
+        //                | <except_dcl> ";"
+        //                | <interface> ";"
+        //                | <module> ";"
+        //                | <value> ";"
+        
+        switch (node.getType()) {
+        case IDLTokenTypes.LITERAL_custom:
+        case IDLTokenTypes.LITERAL_valuetype: {
+            System.out.println("Valuetypes not supported");
+            System.exit(1);
+            break;
+        }
+        case IDLTokenTypes.LITERAL_module: {
+            ModuleVisitor moduleVisitor = new ModuleVisitor(definition,
+                                                            typesVisitor,
+                                                            schemas,
+                                                            schema,
+                                                            typeMap);
+            moduleVisitor.visit(node);
+            break;
+        }
+        case IDLTokenTypes.LITERAL_interface: {
+            PortTypeVisitor portTypeVisitor = new PortTypeVisitor(definition, typesVisitor);
+            portTypeVisitor.visit(node);
+            break;
+        }
+        case IDLTokenTypes.LITERAL_exception: {
+            ExceptionVisitor exceptionVisitor = new ExceptionVisitor(schemas, schema, typeMap);
+            exceptionVisitor.visit(node);
+            break;
+        }
+        case IDLTokenTypes.LITERAL_const: {
+            ConstVisitor constVisitor = new ConstVisitor(schemas, schema, typeMap);
+            constVisitor.visit(node);
+            break;
+        }
+        default: {
+            typesVisitor.visit(node);
+        }
+        
+        }
+    }
+    
+    public void setScope(String newScope) {
+        scope = newScope;
+    }
+    
+    public String getScope() {
+        return scope;
+    }
+}

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

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ExceptionVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ExceptionVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ExceptionVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ExceptionVisitor.java Fri Oct 20 09:18:13 2006
@@ -45,6 +45,23 @@
     }
 
     public void visit(AST node) {
+        // <exception_dcl> ::= "exception" <identifier> "{" <member>* "}"
+        // <member> ::= <type_spec> <declarators> ";"
+        // <type_spec> ::= <simple_type_spec>
+        //               | <const_type_spec>
+
+        // <type_spec> should be visited by TypesVisitor
+        
+        // Following should be visited by a separate visitor
+        // <declarators> ::= <declarator> { "," <declarator> }*
+        // <declarator> ::= <simple_declarator>
+        //                | <complex_declarator>
+        // <simple_declarator> ::= <identifier>
+        // <complex_declarator> ::= <array_declarator>
+        // <array_declarator> ::= <identifier> <fixed_array_size>+
+        // <fixed_array_size> ::= "[" <positive_int_const> "]"
+
+        
         AST structNode = node.getFirstChild();
         
         // xmlschema:exception

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java Fri Oct 20 09:18:13 2006
@@ -67,6 +67,8 @@
         parser.specification();
         AST idlTree = parser.getAST();
 
+        System.out.println(idlTree.toStringTree());
+        
         Object obj = env.get(ToolConstants.CFG_OUTPUTDIR);
         String outputDir = ".";
         if (obj != null) {

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessagePartVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessagePartVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessagePartVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessagePartVisitor.java Fri Oct 20 09:18:13 2006
@@ -55,11 +55,12 @@
 
     TypesVisitor typesVisitor;
 
-    public MessagePartVisitor(WSDLASTVisitor visitor,
+    public MessagePartVisitor(Definition wsdlDefinition,
+                              TypesVisitor typeVisitor,
                               XmlSchemaSequence inWrapSeq,
                               XmlSchemaSequence outWrapSeq) {
-        definition = visitor.getDefinition();   
-        typesVisitor = visitor.getTypesVisitor();
+        definition = wsdlDefinition;   
+        typesVisitor = typeVisitor;
         inWrappingSequence = inWrapSeq;
         outWrappingSequence = outWrapSeq;
     }

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessageVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessageVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessageVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/MessageVisitor.java Fri Oct 20 09:18:13 2006
@@ -63,13 +63,14 @@
     XmlSchemaSequence outWrappingSequence;
    
     
-    public MessageVisitor(WSDLASTVisitor visitor) {
-        definition = visitor.getDefinition();
+    public MessageVisitor(Definition wsdlDefinition, TypesVisitor typeVisitor) {
+        definition = wsdlDefinition;
+        typesVisitor = typeVisitor;
         outWrappingSequence = new XmlSchemaSequence();
         inWrappingSequence = new XmlSchemaSequence();
-        partVisitor = new MessagePartVisitor(visitor, inWrappingSequence, outWrappingSequence);
-        returnParameterVisitor = new ReturnParameterVisitor(visitor, outWrappingSequence);
-        typesVisitor = visitor.getTypesVisitor();
+        partVisitor = new MessagePartVisitor(definition, typesVisitor,
+                                             inWrappingSequence, outWrappingSequence);
+        returnParameterVisitor = new ReturnParameterVisitor(definition, typesVisitor, outWrappingSequence);
     }
 
     public void setOperation(Operation op) {

Added: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ModuleVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ModuleVisitor.java?view=auto&rev=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ModuleVisitor.java (added)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ModuleVisitor.java Fri Oct 20 09:18:13 2006
@@ -0,0 +1,72 @@
+/**
+ * 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 javax.wsdl.Definition;
+
+import antlr.ASTVisitor;
+import antlr.collections.AST;
+
+import org.apache.schemas.yoko.bindings.corba.TypeMappingType;
+
+import org.apache.ws.commons.schema.XmlSchema;
+import org.apache.ws.commons.schema.XmlSchemaCollection;
+
+public class ModuleVisitor implements ASTVisitor {
+
+    private Definition definition;
+    private TypesVisitor typesVisitor;
+    private XmlSchemaCollection schemas;
+    private XmlSchema schema;
+    private TypeMappingType typeMap;
+    
+    public ModuleVisitor(Definition wsdlDefinition,
+                         TypesVisitor typeVisitor,
+                         XmlSchemaCollection xmlSchemas,
+                         XmlSchema xmlSchema,
+                         TypeMappingType corbaTypeMap) {
+        definition = wsdlDefinition;
+        typesVisitor = typeVisitor;
+        schemas = xmlSchemas;
+        schema = xmlSchema;
+        typeMap = corbaTypeMap;
+    }
+    
+    public void visit(AST node) {
+        // <module> ::= "module" <identifier> "{" <definition>+ "}"
+        
+        AST identifierNode = node.getFirstChild();
+        AST definitionNode = identifierNode.getNextSibling();
+        
+        while (definitionNode != null) {
+            DefinitionVisitor definitionVisitor = new DefinitionVisitor(definition,
+                                                                        typesVisitor,
+                                                                        schemas,
+                                                                        schema,
+                                                                        typeMap);
+
+            definitionVisitor.setScope(identifierNode.toString());
+            definitionVisitor.visit(definitionNode);
+            
+            definitionNode = definitionNode.getNextSibling();
+        }
+        
+    }
+}

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

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/OperationVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/OperationVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/OperationVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/OperationVisitor.java Fri Oct 20 09:18:13 2006
@@ -36,24 +36,25 @@
 
 public class OperationVisitor implements ASTVisitor {
 
-    private WSDLASTVisitor wsdlASTVisitor;
     private Definition definition;
+    private TypesVisitor typesVisitor;
     private ExtensionRegistry extReg;
     private PortType portType;
     private Binding binding;
     
-    public OperationVisitor(WSDLASTVisitor visitor,
+    public OperationVisitor(Definition wsdlDefinition,
+                            TypesVisitor typeVisitor,
                             PortType wsdlPortType,
                             Binding wsdlBinding) {
-        wsdlASTVisitor = visitor;
-        definition = visitor.getDefinition();
+        definition = wsdlDefinition;
+        typesVisitor = typeVisitor;
         extReg = definition.getExtensionRegistry();
         portType = wsdlPortType;
         binding = wsdlBinding;
     }
     
     public void visit(AST node) {
-        MessageVisitor msgVisitor = new MessageVisitor(wsdlASTVisitor);
+        MessageVisitor msgVisitor = new MessageVisitor(definition, typesVisitor);
         Operation op = definition.createOperation();
         op.setName(node.toString());
         op.setUndefined(false);

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/PortTypeVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/PortTypeVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/PortTypeVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/PortTypeVisitor.java Fri Oct 20 09:18:13 2006
@@ -46,10 +46,9 @@
     TypesVisitor typesVisitor;
     String module;
 
-    public PortTypeVisitor(WSDLASTVisitor visitor) {
-        definition = visitor.getDefinition();
-        wsdlASTVisitor = visitor;
-        typesVisitor = wsdlASTVisitor.getTypesVisitor();
+    public PortTypeVisitor(Definition wsdlDefinition, TypesVisitor typeVisitor) {
+        definition = wsdlDefinition;
+        typesVisitor = typeVisitor;
         extReg = definition.getExtensionRegistry();
     }
 
@@ -84,13 +83,15 @@
                 typesVisitor.visit(node2);
                 break;
             case IDLTokenTypes.LITERAL_attribute:
-                AttributeVisitor attributeVisitor = new AttributeVisitor(wsdlASTVisitor,
+                AttributeVisitor attributeVisitor = new AttributeVisitor(definition,
+                                                                         typesVisitor,
                                                                          portType,
                                                                          binding);
                 attributeVisitor.visit(node2);
                 break;
             default:
-                OperationVisitor operationVisitor = new OperationVisitor(wsdlASTVisitor,
+                OperationVisitor operationVisitor = new OperationVisitor(definition,
+                                                                         typesVisitor,
                                                                          portType,
                                                                          binding);
                 operationVisitor.visit(node2);     

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ReturnParameterVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ReturnParameterVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ReturnParameterVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ReturnParameterVisitor.java Fri Oct 20 09:18:13 2006
@@ -46,10 +46,11 @@
     XmlSchemaSequence outWrappingSequence;
     XmlSchemaElement outWrappedElement;
 
-    public ReturnParameterVisitor(WSDLASTVisitor visitor,
+    public ReturnParameterVisitor(Definition wsdlDefinition,
+                                  TypesVisitor typeVisitor,
                                   XmlSchemaSequence outWrapSeq) {
-        definition = visitor.getDefinition();   
-        typesVisitor = visitor.getTypesVisitor();
+        definition = wsdlDefinition;   
+        typesVisitor = typeVisitor;
         outWrappingSequence = outWrapSeq;
     }
 

Copied: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.java (from r465614, incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java)
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.java?view=diff&rev=466168&p1=incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java&r1=465614&p2=incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.java&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/ArrayVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.java Fri Oct 20 09:18:13 2006
@@ -35,11 +35,11 @@
 
 import org.apache.yoko.wsdl.CorbaConstants;
 
-public class ArrayVisitor extends TypesVisitorBase {
+public class SequenceVisitor extends TypesVisitorBase {
 
-    public ArrayVisitor(XmlSchemaCollection xmlSchemas,
-                        XmlSchema xmlSchema,
-                        TypeMappingType typeMapRef) {
+    public SequenceVisitor(XmlSchemaCollection xmlSchemas,
+                           XmlSchema xmlSchema,
+                           TypeMappingType typeMapRef) {
         super(xmlSchemas, xmlSchema, typeMapRef);
     }
     

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypedefVisitor.java Fri Oct 20 09:18:13 2006
@@ -80,7 +80,7 @@
         int type = getType(typedefNode);
         switch (type) {
         case SEQUENCE: {
-            visitor = new ArrayVisitor(schemas, schema, typeMap);
+            visitor = new SequenceVisitor(schemas, schema, typeMap);
             visitor.visit(typedefNode);
             break;
         }

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesVisitor.java Fri Oct 20 09:18:13 2006
@@ -45,7 +45,6 @@
 import org.apache.ws.commons.schema.XmlSchemaSerializer;
 import org.apache.ws.commons.schema.XmlSchemaType;
 
-import org.apache.yoko.wsdl.CorbaConstants;
 import org.apache.yoko.wsdl.CorbaTypeImpl;
 
 public class TypesVisitor implements ASTVisitor {
@@ -57,8 +56,6 @@
 
     Definition definition;
     WSDLFactory wsdlFactory;
-
-    WSDLASTVisitor wsdlASTVisitor;
     
     XmlSchema schema;
     XmlSchemaCollection schemas;
@@ -68,13 +65,15 @@
 
     List<String> parts = new ArrayList<String>();
 
-    public TypesVisitor(WSDLASTVisitor visitor)
+    public TypesVisitor(Definition wsdlDefinition,
+                        XmlSchemaCollection xmlSchemas,
+                        XmlSchema xmlSchema,
+                        TypeMappingType corbaTypeMap)
         throws WSDLException {
-        wsdlASTVisitor = visitor;
-        definition = visitor.getDefinition();
-        schemas = new XmlSchemaCollection();
-        schema = new XmlSchema(definition.getTargetNamespace(), schemas);       
-        createCorbaTypeMap();
+        definition = wsdlDefinition;
+        schema = xmlSchema;
+        schemas = xmlSchemas;
+        typeMap = corbaTypeMap;
     }
 
     // REVISIT: remove this method
@@ -216,16 +215,6 @@
         return PRIMITIVE_TYPES.contains(nodeType);
     }
 
-    private void createCorbaTypeMap() throws WSDLException { 
-        typeMap = (TypeMappingType)
-            definition.getExtensionRegistry().createExtension(Definition.class,
-                                                              CorbaConstants.NE_CORBA_TYPEMAPPING);
-        typeMap.setTargetNamespace(definition.getTargetNamespace()
-                                  + "/"
-                                  + CorbaConstants.NS_CORBA_TYPEMAP);
-        definition.addExtensibilityElement(typeMap);
-    }
-
     static {
         PRIMITIVE_TYPES.add(new Integer(IDLTokenTypes.LITERAL_float));
         PRIMITIVE_TYPES.add(new Integer(IDLTokenTypes.LITERAL_double));
@@ -239,6 +228,7 @@
         PRIMITIVE_TYPES.add(new Integer(IDLTokenTypes.LITERAL_octet));
         PRIMITIVE_TYPES.add(new Integer(IDLTokenTypes.LITERAL_string));
         PRIMITIVE_TYPES.add(new Integer(IDLTokenTypes.LITERAL_wstring));
+        PRIMITIVE_TYPES.add(new Integer(IDLTokenTypes.LITERAL_any));
     }
 
 }

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java Fri Oct 20 09:18:13 2006
@@ -44,6 +44,8 @@
 import org.apache.schemas.yoko.bindings.corba.OperationType;
 import org.apache.schemas.yoko.bindings.corba.TypeMappingType;
 
+import org.apache.ws.commons.schema.XmlSchema;
+import org.apache.ws.commons.schema.XmlSchemaCollection;
 import org.apache.yoko.tools.common.WSDLUtils;
 import org.apache.yoko.wsdl.CorbaConstants;
 
@@ -54,41 +56,40 @@
     
     Definition definition;
     WSDLFactory wsdlFactory;
-    PortTypeVisitor portTypeVisitor;
     TypesVisitor typesVisitor;
 
+    XmlSchema schema;
+    XmlSchemaCollection schemas;
+    
+    TypeMappingType typeMap;
+
     public WSDLASTVisitor(String tns)
         throws WSDLException, JAXBException {
-        wsdlFactory = WSDLFactory.newInstance();
-        definition = wsdlFactory.newDefinition();
-        definition.setTargetNamespace(tns);
-        definition.addNamespace(WSDLConstants.WSDL_PREFIX, WSDLConstants.NS_WSDL);
-        definition.addNamespace(WSDLConstants.XSD_PREFIX, WSDLConstants.XSD_NAMESPACE);
-        definition.addNamespace(WSDLConstants.SOAP_PREFIX, WSDLConstants.SOAP11_NAMESPACE);
-        definition.addNamespace(WSDLConstants.TNS_PREFIX, tns);
-        definition.addNamespace(CorbaConstants.NP_WSDL_CORBA, CorbaConstants.NU_WSDL_CORBA);
-        addCorbaExtensions(definition.getExtensionRegistry());
-        initVisitors();
+        
+        createWsdlDefinition(tns);
+        
+        schemas = new XmlSchemaCollection();
+        schema = new XmlSchema(definition.getTargetNamespace(), schemas);
+        
+        createCorbaTypeMap();
+        
+        typesVisitor = new TypesVisitor(definition, schemas, schema, typeMap);
     }
 
     public void visit(AST node) {
+        // <specification> ::= <definition>+
+
         while (node != null) {
-            switch (node.getType()) {
-            case IDLTokenTypes.LITERAL_interface: {
-                portTypeVisitor.visit(node);
-                break;
-            }
-            case IDLTokenTypes.LITERAL_module: {
-                node = node.getFirstChild();
-                portTypeVisitor.addModuleName(node.toString());
-                break;
-            }
-            default: {
-                typesVisitor.visit(node);
-            }
-            }            
+            DefinitionVisitor definitionVisitor = new DefinitionVisitor(definition,
+                                                                        typesVisitor,
+                                                                        schemas,
+                                                                        schema,
+                                                                        typeMap);
+            definitionVisitor.visit(node);
+
             node = node.getNextSibling();
         }
+        
         try {
             typesVisitor.attachSchema();
         } catch (Exception ex) {
@@ -126,14 +127,31 @@
         return (Binding[]) result.toArray(new Binding[result.size()]);
     }
 
-    private void initVisitors() throws WSDLException {
-        typesVisitor = new TypesVisitor(this);
-        portTypeVisitor = new PortTypeVisitor(this);
-    }
-
     public boolean writeDefinition(Writer writer) throws Exception {
         WSDLUtils.writeWSDL(definition, writer);
         return true;
+    }
+
+    private void createWsdlDefinition(String tns) throws WSDLException, JAXBException {
+        wsdlFactory = WSDLFactory.newInstance();
+        definition = wsdlFactory.newDefinition();
+        definition.setTargetNamespace(tns);
+        definition.addNamespace(WSDLConstants.WSDL_PREFIX, WSDLConstants.NS_WSDL);
+        definition.addNamespace(WSDLConstants.XSD_PREFIX, WSDLConstants.XSD_NAMESPACE);
+        definition.addNamespace(WSDLConstants.SOAP_PREFIX, WSDLConstants.SOAP11_NAMESPACE);
+        definition.addNamespace(WSDLConstants.TNS_PREFIX, tns);
+        definition.addNamespace(CorbaConstants.NP_WSDL_CORBA, CorbaConstants.NU_WSDL_CORBA);
+        addCorbaExtensions(definition.getExtensionRegistry());
+    }
+    
+    private void createCorbaTypeMap() throws WSDLException { 
+        typeMap = (TypeMappingType)
+            definition.getExtensionRegistry().createExtension(Definition.class,
+                                                              CorbaConstants.NE_CORBA_TYPEMAPPING);
+        typeMap.setTargetNamespace(definition.getTargetNamespace()
+                                   + "/"
+                                   + CorbaConstants.NS_CORBA_TYPEMAP);
+        definition.addExtensibilityElement(typeMap);
     }
 
     private void addCorbaExtensions(ExtensionRegistry extReg) throws JAXBException {

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java Fri Oct 20 09:18:13 2006
@@ -174,4 +174,8 @@
         testWSDLGeneration("/idl/Attributes.idl", "/idl/expected_Attributes.wsdl");
     }
 
+    public void testSequenceGeneration() throws Exception {
+        testWSDLGeneration("/idl/Sequence.idl", "/idl/expected_Sequence.wsdl");
+    }
+
 }

Added: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Sequence.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Sequence.idl?view=auto&rev=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Sequence.idl (added)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Sequence.idl Fri Oct 20 09:18:13 2006
@@ -0,0 +1,31 @@
+/* 
+ * 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.
+*/ 
+
+typedef sequence<long> longSequence;
+typedef sequence<string> stringSequence;
+
+typedef sequence<long, 10> boundedLongSequence;
+typedef sequence<string, 2> boundedStringSequence;
+
+typedef sequence<longSequence>            longSequenceSequence;
+typedef sequence<boundedLongSequence>     boundedLongSequenceSequence;
+
+typedef sequence<longSequence, 30>        longSequenceBoundedSequence;
+typedef sequence<boundedLongSequence, 10> boundedLongSequenceBoundedSequence;
+

Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Fixed.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Fixed.wsdl?view=diff&rev=466168&r1=466167&r2=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Fixed.wsdl (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Fixed.wsdl Fri Oct 20 09:18:13 2006
@@ -198,17 +198,7 @@
   <wsdl:message name="op2_1Response">
     <wsdl:part name="outparameter" element="tns:op2_1Response"/>
   </wsdl:message>
-  <wsdl:portType name="if">
-    <wsdl:operation name="op2_1">
-      <wsdl:input name="op2_1Request" message="tns:op2_1"/>
-      <wsdl:output name="op2_1Response" message="tns:op2_1Response"/>
-    </wsdl:operation>
-    <wsdl:operation name="op2_2">
-      <wsdl:input name="op2_2Request" message="tns:op2_2"/>
-      <wsdl:output name="op2_2Response" message="tns:op2_2Response"/>
-    </wsdl:operation>
-  </wsdl:portType>
-  <wsdl:portType name="m.m_if">
+  <wsdl:portType name="m_if">
     <wsdl:operation name="op4_1">
       <wsdl:input name="op4_1Request" message="tns:op4_1"/>
       <wsdl:output name="op4_1Response" message="tns:op4_1Response"/>
@@ -222,8 +212,39 @@
       <wsdl:output name="op4_4Response" message="tns:op4_4Response"/>
     </wsdl:operation>
   </wsdl:portType>
-  <wsdl:binding name="m.m_ifCORBABinding" type="tns:m.m_if">
-    <corba:binding repositoryID="IDL:m/m_if:1.0" />
+  <wsdl:portType name="if">
+    <wsdl:operation name="op2_1">
+      <wsdl:input name="op2_1Request" message="tns:op2_1"/>
+      <wsdl:output name="op2_1Response" message="tns:op2_1Response"/>
+    </wsdl:operation>
+    <wsdl:operation name="op2_2">
+      <wsdl:input name="op2_2Request" message="tns:op2_2"/>
+      <wsdl:output name="op2_2Response" message="tns:op2_2Response"/>
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:binding name="ifCORBABinding" type="tns:if">
+    <corba:binding repositoryID="IDL:if:1.0" />
+    <wsdl:operation name="op2_1">
+      <corba:operation name="op2_1">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/Fixed/typemap" mode="in" name="in_op2_1_f1_1" idltype="f1_1" />
+      </corba:operation>
+      <wsdl:input name="op2_1Request">
+      </wsdl:input>
+      <wsdl:output name="op2_1Response">
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="op2_2">
+      <corba:operation name="op2_2">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/Fixed/typemap" mode="out" name="out_op2_2_f2_2" idltype="f2_2" />
+      </corba:operation>
+      <wsdl:input name="op2_2Request">
+      </wsdl:input>
+      <wsdl:output name="op2_2Response">
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:binding name="m_ifCORBABinding" type="tns:m_if">
+    <corba:binding repositoryID="IDL:m_if:1.0" />
     <wsdl:operation name="op4_1">
       <corba:operation name="op4_1">
         <corba:param xmlns="http://schemas.apache.org/yoko/idl/Fixed/typemap" mode="in" name="in_m_if_op4_1_f1_1" idltype="f1_1" />
@@ -252,34 +273,13 @@
       </wsdl:output>
     </wsdl:operation>
   </wsdl:binding>
-  <wsdl:binding name="ifCORBABinding" type="tns:if">
-    <corba:binding repositoryID="IDL:if:1.0" />
-    <wsdl:operation name="op2_1">
-      <corba:operation name="op2_1">
-        <corba:param xmlns="http://schemas.apache.org/yoko/idl/Fixed/typemap" mode="in" name="in_op2_1_f1_1" idltype="f1_1" />
-      </corba:operation>
-      <wsdl:input name="op2_1Request">
-      </wsdl:input>
-      <wsdl:output name="op2_1Response">
-      </wsdl:output>
-    </wsdl:operation>
-    <wsdl:operation name="op2_2">
-      <corba:operation name="op2_2">
-        <corba:param xmlns="http://schemas.apache.org/yoko/idl/Fixed/typemap" mode="out" name="out_op2_2_f2_2" idltype="f2_2" />
-      </corba:operation>
-      <wsdl:input name="op2_2Request">
-      </wsdl:input>
-      <wsdl:output name="op2_2Response">
-      </wsdl:output>
-    </wsdl:operation>
-  </wsdl:binding>
-  <wsdl:service name="ifCORBAService">
-    <wsdl:port name="ifCORBAPort" binding="tns:ifCORBABinding">
+  <wsdl:service name="m_ifCORBAService">
+    <wsdl:port name="m_ifCORBAPort" binding="tns:m_ifCORBABinding">
       <corba:address location="IOR:" />
     </wsdl:port>
   </wsdl:service>
-  <wsdl:service name="m.m_ifCORBAService">
-    <wsdl:port name="m.m_ifCORBAPort" binding="tns:m.m_ifCORBABinding">
+  <wsdl:service name="ifCORBAService">
+    <wsdl:port name="ifCORBAPort" binding="tns:ifCORBABinding">
       <corba:address location="IOR:" />
     </wsdl:port>
   </wsdl:service>

Added: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Sequence.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Sequence.wsdl?view=auto&rev=466168
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Sequence.wsdl (added)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Sequence.wsdl Fri Oct 20 09:18:13 2006
@@ -0,0 +1,83 @@
+<?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/Sequence" xmlns:tns="http://schemas.apache.org/yoko/idl/Sequence" 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/Sequence/typemap">
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence/typemap" elemtype="corba:long" bound="0" repositoryID="IDL:longSequence:1.0" name="longSequence" type="ns4:longSequence" />
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence/typemap" elemtype="corba:string" bound="0" repositoryID="IDL:stringSequence:1.0" name="stringSequence" type="ns4:stringSequence" />
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence/typemap" elemtype="corba:long" bound="10" repositoryID="IDL:boundedLongSequence:1.0" name="boundedLongSequence" type="ns4:boundedLongSequence" />
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence/typemap" elemtype="corba:string" bound="2" repositoryID="IDL:boundedStringSequence:1.0" name="boundedStringSequence" type="ns4:boundedStringSequence" />
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence/typemap" elemtype="longSequence" bound="0" repositoryID="IDL:longSequenceSequence:1.0" name="longSequenceSequence" type="ns4:longSequenceSequence" />
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence/typemap" elemtype="boundedLongSequence" bound="0" repositoryID="IDL:boundedLongSequenceSequence:1.0" name="boundedLongSequenceSequence" type="ns4:boundedLongSequenceSequence" />
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence/typemap" elemtype="longSequence" bound="30" repositoryID="IDL:longSequenceBoundedSequence:1.0" name="longSequenceBoundedSequence" type="ns4:longSequenceBoundedSequence" />
+    <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence/typemap" elemtype="boundedLongSequence" bound="10" repositoryID="IDL:boundedLongSequenceBoundedSequence:1.0" name="boundedLongSequenceBoundedSequence" type="ns4:boundedLongSequenceBoundedSequence" />
+  </corba:typeMapping>
+  <wsdl:types>
+    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/Sequence" xmlns="http://schemas.apache.org/yoko/idl/Sequence" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+      <xs:complexType name="longSequence">
+        <xs:sequence>
+          <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:complexType name="stringSequence">
+        <xs:sequence>
+          <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="xs:string">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:complexType name="boundedLongSequence">
+        <xs:sequence>
+          <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:complexType name="boundedStringSequence">
+        <xs:sequence>
+          <xs:element maxOccurs="2" minOccurs="0" name="item" type="xs:string">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:complexType name="longSequenceSequence">
+        <xs:sequence>
+          <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="longSequence">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:complexType name="boundedLongSequenceSequence">
+        <xs:sequence>
+          <xs:element maxOccurs="unbounded" minOccurs="0" name="item" type="boundedLongSequence">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:complexType name="longSequenceBoundedSequence">
+        <xs:sequence>
+          <xs:element maxOccurs="30" minOccurs="0" name="item" type="longSequence">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:complexType name="boundedLongSequenceBoundedSequence">
+        <xs:sequence>
+          <xs:element maxOccurs="10" minOccurs="0" name="item" type="boundedLongSequence">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+    </xs:schema>
+  </wsdl:types>
+</wsdl:definitions>

Propchange: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Sequence.wsdl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Sequence.wsdl
------------------------------------------------------------------------------
    svn:mime-type = text/xml