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/11/07 13:44:04 UTC
svn commit: r472111 - 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: Tue Nov 7 05:44:03 2006
New Revision: 472111
URL: http://svn.apache.org/viewvc?view=rev&rev=472111
Log:
Adding support for IDL anonymous unbounded sequence.
Added:
incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Anonboundedsequence.idl
incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Anonboundedsequence.wsdl (with props)
Modified:
incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.java
incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/StringVisitor.java
incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesUtils.java
incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/java/org/apache/yoko/tools/processors/IDLToWSDLGenerationTest.java
Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.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=472111&r1=472110&r2=472111
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/SequenceVisitor.java Tue Nov 7 05:44:03 2006
@@ -63,13 +63,20 @@
AST simpleTypeSpecNode = seq.getFirstChild();
- AST boundNode = simpleTypeSpecNode.getNextSibling();
-
+ // REVISIT: TypesUtils.getPrimitiveCorbaTypeNameNode should be renamed
+ // to something more suitable and should be made more general.
+ AST boundNode = TypesUtils.getPrimitiveCorbaTypeNameNode(simpleTypeSpecNode);
+
// if identifier is not null, then this sequence is not anonymous,
// but it might contain an anonymous type, hence the identifierNode
// reassignment.
if (identifierNode != null) {
identifierNode = seq.getNextSibling();
+ // ensure that have not mistaken the bound for the identifier
+ while (identifierNode != null
+ && !TypesUtils.isValidIdentifier(identifierNode.toString())) {
+ identifierNode = identifierNode.getNextSibling();
+ }
}
SimpleTypeSpecVisitor visitor = new SimpleTypeSpecVisitor(new Scope(getScope(), identifierNode),
Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/StringVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/StringVisitor.java?view=diff&rev=472111&r1=472110&r2=472111
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/StringVisitor.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/StringVisitor.java Tue Nov 7 05:44:03 2006
@@ -176,37 +176,11 @@
String result = null;
if (node != null) {
String identifierName = node.toString();
- if (isValidIdentifier(identifierName)) {
+ if (TypesUtils.isValidIdentifier(identifierName)) {
result = identifierName;
}
}
return result;
}
- private boolean isValidIdentifier(String id) {
- boolean result = true;
- // From the CORBA IDL spec (section 3.2.3):
- // An identifier is an arbitrarily long sequence of ASCII alphabetic, digit,
- // and underscore ("_") characters. The first character must be an ASCII
- // alphabetic character. All characters are significant.
- //
- // See section 3.2.3.1 for escaped identifiers (that start with a "_")
- //
- if (!Character.isLetter(id.charAt(0))) {
- result = false;
- }
- if (id.charAt(0) == '_') {
- result = false;
- }
- int index = 1;
- while (result && index < id.length()) {
- char cur = id.charAt(index);
- if (!Character.isLetterOrDigit(cur)
- || cur == '_') {
- result = false;
- }
- index++;
- }
- return result;
- }
}
Modified: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesUtils.java
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesUtils.java?view=diff&rev=472111&r1=472110&r2=472111
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesUtils.java (original)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/main/java/org/apache/yoko/tools/processors/idl/TypesUtils.java Tue Nov 7 05:44:03 2006
@@ -175,4 +175,31 @@
return result;
}
+ public static boolean isValidIdentifier(String id) {
+ boolean result = true;
+ // From the CORBA IDL spec (section 3.2.3):
+ // An identifier is an arbitrarily long sequence of ASCII alphabetic, digit,
+ // and underscore ("_") characters. The first character must be an ASCII
+ // alphabetic character. All characters are significant.
+ //
+ // See section 3.2.3.1 for escaped identifiers (that start with a "_")
+ //
+ if (!Character.isLetter(id.charAt(0))) {
+ result = false;
+ }
+ if (id.charAt(0) == '_') {
+ result = false;
+ }
+ int index = 1;
+ while (result && index < id.length()) {
+ char cur = id.charAt(index);
+ if (!Character.isLetterOrDigit(cur)
+ || cur == '_') {
+ result = false;
+ }
+ index++;
+ }
+ return result;
+ }
+
}
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=472111&r1=472110&r2=472111
==============================================================================
--- 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 Tue Nov 7 05:44:03 2006
@@ -186,4 +186,8 @@
testWSDLGeneration("/idl/Anonsequence.idl", "/idl/expected_Anonsequence.wsdl");
}
+ public void testAnonboundedsequenceGeneration() throws Exception {
+ testWSDLGeneration("/idl/Anonboundedsequence.idl", "/idl/expected_Anonboundedsequence.wsdl");
+ }
+
}
Added: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Anonboundedsequence.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Anonboundedsequence.idl?view=auto&rev=472111
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Anonboundedsequence.idl (added)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/Anonboundedsequence.idl Tue Nov 7 05:44:03 2006
@@ -0,0 +1,70 @@
+/*
+ * 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<unsigned long, 10> SeqLong;
+typedef sequence< sequence<long, 10>, 100> SeqSeqLong;
+typedef sequence< sequence< sequence<long, 10>, 100 >, 1000 > SeqSeqSeqLong;
+
+
+struct anonStruct {
+
+ sequence<long, 10> structSeqLong;
+ sequence< sequence< long, 10 >, 100 > structSeqSeqLong;
+ sequence< sequence< sequence<long, 10>, 100 >, 1000 > structSeqSeqSeqLong;
+
+};
+
+typedef struct anonTypedefStruct {
+
+ sequence< short, 10 > typedefStructSeqShort;
+ sequence< sequence< short, 10 >, 100 > typedefStructSeqSeqShort;
+ sequence< sequence< sequence< short, 10 >, 100 >, 1000 > typedefStructSeqSeqSeqShort;
+
+} myAnonTypedefStruct;
+
+
+
+union anonUnion switch(long) {
+ case 1:
+ sequence< long, 10 > unionSeqLong;
+ case 2:
+ sequence< sequence< long, 10 >, 100 > unionSeqLong;
+ default:
+ sequence< sequence< sequence< long, 10 >, 100 >, 1000 > unionSeqLong;
+};
+
+typedef union anonTypedefUnion switch(long) {
+ case 1:
+ sequence< long, 10 > typedefUnionSeqLong;
+ case 2:
+ sequence< sequence< long, 10 >, 100 > typedefUnionSeqLong;
+ default:
+ sequence< sequence< sequence< long, 10 >, 100 >, 1000 > typedefUnionSeqLong;
+} myAnonUnion;
+
+
+
+exception anonException {
+ sequence< long, 10 > exceptionSeqLong;
+ sequence< sequence< long, 10 >, 100 > exceptionSeqSeqLong;
+ sequence< sequence< sequence< long, 10 >, 100 >, 1000 > exceptionSeqSeqSeqLong;
+};
+
Added: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Anonboundedsequence.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Anonboundedsequence.wsdl?view=auto&rev=472111
==============================================================================
--- incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Anonboundedsequence.wsdl (added)
+++ incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Anonboundedsequence.wsdl Tue Nov 7 05:44:03 2006
@@ -0,0 +1,382 @@
+<?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/Anonboundedsequence" xmlns:tns="http://schemas.apache.org/yoko/idl/Anonboundedsequence" 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/Anonboundedsequence/typemap">
+ <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:ulong" bound="10" repositoryID="IDL:SeqLong:1.0" name="SeqLong" type="ns4:SeqLong" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_1_SeqSeqLong" type="ns4:_1_SeqSeqLong" />
+ <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_1_SeqSeqLong" bound="100" repositoryID="IDL:SeqSeqLong:1.0" name="SeqSeqLong" type="ns4:SeqSeqLong" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_1_SeqSeqSeqLong" type="ns4:_1_SeqSeqSeqLong" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_1_SeqSeqSeqLong" bound="100" name="_2_SeqSeqSeqLong" type="ns4:_2_SeqSeqSeqLong" />
+ <corba:sequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_2_SeqSeqSeqLong" bound="1000" repositoryID="IDL:SeqSeqSeqLong:1.0" name="SeqSeqSeqLong" type="ns4:SeqSeqSeqLong" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_1_anonStruct" type="ns4:_1_anonStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_2_anonStruct" type="ns4:_2_anonStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_2_anonStruct" bound="100" name="_3_anonStruct" type="ns4:_3_anonStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_4_anonStruct" type="ns4:_4_anonStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_4_anonStruct" bound="100" name="_5_anonStruct" type="ns4:_5_anonStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_5_anonStruct" bound="1000" name="_6_anonStruct" type="ns4:_6_anonStruct" />
+ <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" repositoryID="IDL:anonStruct:1.0" name="anonStruct" type="ns4:anonStruct">
+ <corba:member name="structSeqLong" idltype="_1_anonStruct" />
+ <corba:member name="structSeqSeqLong" idltype="_3_anonStruct" />
+ <corba:member name="structSeqSeqSeqLong" idltype="_6_anonStruct" />
+ </corba:struct>
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:short" bound="10" name="_1_anonTypedefStruct" type="ns4:_1_anonTypedefStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:short" bound="10" name="_2_anonTypedefStruct" type="ns4:_2_anonTypedefStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_2_anonTypedefStruct" bound="100" name="_3_anonTypedefStruct" type="ns4:_3_anonTypedefStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:short" bound="10" name="_4_anonTypedefStruct" type="ns4:_4_anonTypedefStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_4_anonTypedefStruct" bound="100" name="_5_anonTypedefStruct" type="ns4:_5_anonTypedefStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_5_anonTypedefStruct" bound="1000" name="_6_anonTypedefStruct" type="ns4:_6_anonTypedefStruct" />
+ <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" repositoryID="IDL:anonTypedefStruct:1.0" name="anonTypedefStruct" type="ns4:anonTypedefStruct">
+ <corba:member name="typedefStructSeqShort" idltype="_1_anonTypedefStruct" />
+ <corba:member name="typedefStructSeqSeqShort" idltype="_3_anonTypedefStruct" />
+ <corba:member name="typedefStructSeqSeqSeqShort" idltype="_6_anonTypedefStruct" />
+ </corba:struct>
+ <corba:alias xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" basetype="anonTypedefStruct" repositoryID="IDL:myAnonTypedefStruct:1.0" name="myAnonTypedefStruct" type="ns4:anonTypedefStruct" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_1_anonUnion" type="ns4:_1_anonUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_2_anonUnion" type="ns4:_2_anonUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_2_anonUnion" bound="100" name="_3_anonUnion" type="ns4:_3_anonUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_4_anonUnion" type="ns4:_4_anonUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_4_anonUnion" bound="100" name="_5_anonUnion" type="ns4:_5_anonUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_5_anonUnion" bound="1000" name="_6_anonUnion" type="ns4:_6_anonUnion" />
+ <corba:union xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" discriminator="corba:long" repositoryID="IDL:anonUnion:1.0" name="anonUnion" type="ns4:anonUnion">
+ <corba:unionbranch name="unionSeqLong" idltype="_1_anonUnion">
+ <corba:case label="1" />
+ </corba:unionbranch>
+ <corba:unionbranch name="unionSeqLong" idltype="_3_anonUnion">
+ <corba:case label="2" />
+ </corba:unionbranch>
+ <corba:unionbranch name="unionSeqLong" idltype="_6_anonUnion" default="true" />
+ </corba:union>
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_1_anonTypedefUnion" type="ns4:_1_anonTypedefUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_2_anonTypedefUnion" type="ns4:_2_anonTypedefUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_2_anonTypedefUnion" bound="100" name="_3_anonTypedefUnion" type="ns4:_3_anonTypedefUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_4_anonTypedefUnion" type="ns4:_4_anonTypedefUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_4_anonTypedefUnion" bound="100" name="_5_anonTypedefUnion" type="ns4:_5_anonTypedefUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_5_anonTypedefUnion" bound="1000" name="_6_anonTypedefUnion" type="ns4:_6_anonTypedefUnion" />
+ <corba:union xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" discriminator="corba:long" repositoryID="IDL:anonTypedefUnion:1.0" name="anonTypedefUnion" type="ns4:anonTypedefUnion">
+ <corba:unionbranch name="typedefUnionSeqLong" idltype="_1_anonTypedefUnion">
+ <corba:case label="1" />
+ </corba:unionbranch>
+ <corba:unionbranch name="typedefUnionSeqLong" idltype="_3_anonTypedefUnion">
+ <corba:case label="2" />
+ </corba:unionbranch>
+ <corba:unionbranch name="typedefUnionSeqLong" idltype="_6_anonTypedefUnion" default="true" />
+ </corba:union>
+ <corba:alias xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" basetype="anonTypedefUnion" repositoryID="IDL:myAnonUnion:1.0" name="myAnonUnion" type="ns4:anonTypedefUnion" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_1_anonException" type="ns4:_1_anonException" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_2_anonException" type="ns4:_2_anonException" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_2_anonException" bound="100" name="_3_anonException" type="ns4:_3_anonException" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="corba:long" bound="10" name="_4_anonException" type="ns4:_4_anonException" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_4_anonException" bound="100" name="_5_anonException" type="ns4:_5_anonException" />
+ <corba:anonsequence xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" elemtype="_5_anonException" bound="1000" name="_6_anonException" type="ns4:_6_anonException" />
+ <corba:exception xmlns:ns4="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence/typemap" repositoryID="IDL:anonException:1.0" name="anonException" type="ns4:anonExceptionType">
+ <corba:member name="exceptionSeqLong" idltype="_1_anonException" />
+ <corba:member name="exceptionSeqSeqLong" idltype="_3_anonException" />
+ <corba:member name="exceptionSeqSeqSeqLong" idltype="_6_anonException" />
+ </corba:exception>
+ </corba:typeMapping>
+ <wsdl:types>
+ <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns="http://schemas.apache.org/yoko/idl/Anonboundedsequence" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:complexType name="SeqLong">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:unsignedInt">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_1_SeqSeqLong">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SeqSeqLong">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_1_SeqSeqLong">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_1_SeqSeqSeqLong">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_2_SeqSeqSeqLong">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_1_SeqSeqSeqLong">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="SeqSeqSeqLong">
+ <xs:sequence>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="_2_SeqSeqSeqLong">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_1_anonStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_2_anonStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_3_anonStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_2_anonStruct">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_4_anonStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_5_anonStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_4_anonStruct">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_6_anonStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="_5_anonStruct">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="anonStruct">
+ <xs:sequence>
+ <xs:element name="structSeqLong" type="_1_anonStruct">
+ </xs:element>
+ <xs:element name="structSeqSeqLong" type="_3_anonStruct">
+ </xs:element>
+ <xs:element name="structSeqSeqSeqLong" type="_6_anonStruct">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_1_anonTypedefStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_2_anonTypedefStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_3_anonTypedefStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_2_anonTypedefStruct">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_4_anonTypedefStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:short">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_5_anonTypedefStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_4_anonTypedefStruct">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_6_anonTypedefStruct">
+ <xs:sequence>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="_5_anonTypedefStruct">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="anonTypedefStruct">
+ <xs:sequence>
+ <xs:element name="typedefStructSeqShort" type="_1_anonTypedefStruct">
+ </xs:element>
+ <xs:element name="typedefStructSeqSeqShort" type="_3_anonTypedefStruct">
+ </xs:element>
+ <xs:element name="typedefStructSeqSeqSeqShort" type="_6_anonTypedefStruct">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:simpleType name="myAnonTypedefStruct">
+ <xs:restriction base="anonTypedefStruct">
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="_1_anonUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_2_anonUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_3_anonUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_2_anonUnion">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_4_anonUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_5_anonUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_4_anonUnion">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_6_anonUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="_5_anonUnion">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="anonUnion">
+ <xs:sequence>
+ <xs:element name="discriminator" type="xs:int">
+ </xs:element>
+ <xs:choice>
+ <xs:element name="unionSeqLong" type="_1_anonUnion">
+ </xs:element>
+ <xs:element name="unionSeqLong" type="_3_anonUnion">
+ </xs:element>
+ <xs:element name="unionSeqLong" type="_6_anonUnion">
+ </xs:element>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_1_anonTypedefUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_2_anonTypedefUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_3_anonTypedefUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_2_anonTypedefUnion">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_4_anonTypedefUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_5_anonTypedefUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_4_anonTypedefUnion">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_6_anonTypedefUnion">
+ <xs:sequence>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="_5_anonTypedefUnion">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="anonTypedefUnion">
+ <xs:sequence>
+ <xs:element name="discriminator" type="xs:int">
+ </xs:element>
+ <xs:choice>
+ <xs:element name="typedefUnionSeqLong" type="_1_anonTypedefUnion">
+ </xs:element>
+ <xs:element name="typedefUnionSeqLong" type="_3_anonTypedefUnion">
+ </xs:element>
+ <xs:element name="typedefUnionSeqLong" type="_6_anonTypedefUnion">
+ </xs:element>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:simpleType name="myAnonUnion">
+ <xs:restriction base="anonTypedefUnion">
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="_1_anonException">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_2_anonException">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_3_anonException">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_2_anonException">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_4_anonException">
+ <xs:sequence>
+ <xs:element maxOccurs="10" minOccurs="0" name="item" type="xs:int">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_5_anonException">
+ <xs:sequence>
+ <xs:element maxOccurs="100" minOccurs="0" name="item" type="_4_anonException">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="_6_anonException">
+ <xs:sequence>
+ <xs:element maxOccurs="1000" minOccurs="0" name="item" type="_5_anonException">
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="anonException" type="anonExceptionType">
+ </xs:element>
+ <xs:complexType name="anonExceptionType">
+ <xs:sequence>
+ <xs:element name="exceptionSeqLong" type="_1_anonException">
+ </xs:element>
+ <xs:element name="exceptionSeqSeqLong" type="_3_anonException">
+ </xs:element>
+ <xs:element name="exceptionSeqSeqSeqLong" type="_6_anonException">
+ </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_Anonboundedsequence.wsdl
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/yoko/branches/idltowsdl_anon_refactor/tools/src/test/resources/idl/expected_Anonboundedsequence.wsdl
------------------------------------------------------------------------------
svn:mime-type = text/xml