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 en...@apache.org on 2007/05/01 15:21:00 UTC

svn commit: r534116 - in /incubator/yoko/trunk/tools/src: main/java/org/apache/yoko/tools/ main/java/org/apache/yoko/tools/common/ main/java/org/apache/yoko/tools/processors/idl/ test/java/org/apache/yoko/tools/processors/ test/resources/idl/

Author: enolan
Date: Tue May  1 08:20:59 2007
New Revision: 534116

URL: http://svn.apache.org/viewvc?view=rev&rev=534116
Log:
Yoko-325 - Add idltowsdl tool option -L <logical-wsdl-filename>.
Yoko-326 - Add idltowsdl tool option -P <physical-wsdl-filename>
Yoko-327 - Add idltowsdl tool option -T <schema-file-name>.


Added:
    incubator/yoko/trunk/tools/src/test/resources/idl/OptionL.idl
    incubator/yoko/trunk/tools/src/test/resources/idl/OptionP.idl
    incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLP.idl
    incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLPT.idl
    incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLT.idl
    incubator/yoko/trunk/tools/src/test/resources/idl/OptionsPT.idl
    incubator/yoko/trunk/tools/src/test/resources/idl/OptionsSchema.idl
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_Logical.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLP.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLPT.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLT.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_OptionsSchema.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_Physical.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLP.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLPT.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalPT.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_Schema.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLPT.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLT.wsdl   (with props)
    incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaPT.wsdl   (with props)
Modified:
    incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/IDLToWSDL.java
    incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/common/ToolCorbaConstants.java
    incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java
    incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.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/IDLToWSDL.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/IDLToWSDL.java?view=diff&rev=534116&r1=534115&r2=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/IDLToWSDL.java (original)
+++ incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/IDLToWSDL.java Tue May  1 08:20:59 2007
@@ -116,6 +116,18 @@
             env.put(ToolCorbaConstants.CFG_SCHEMA_NAMESPACE,
                     doc.getParameter(ToolCorbaConstants.CFG_SCHEMA_NAMESPACE));
         }
+        if (env.optionSet(ToolCorbaConstants.CFG_LOGICAL)) {
+            env.put(ToolCorbaConstants.CFG_LOGICAL,
+                    doc.getParameter(ToolCorbaConstants.CFG_LOGICAL));
+        }        
+        if (env.optionSet(ToolCorbaConstants.CFG_PHYSICAL)) {
+            env.put(ToolCorbaConstants.CFG_PHYSICAL,
+                    doc.getParameter(ToolCorbaConstants.CFG_PHYSICAL));
+        }
+        if (env.optionSet(ToolCorbaConstants.CFG_SCHEMA)) {
+            env.put(ToolCorbaConstants.CFG_SCHEMA,
+                    doc.getParameter(ToolCorbaConstants.CFG_SCHEMA));
+        }
         
         //need to add all the other options
     }

Modified: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/common/ToolCorbaConstants.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/common/ToolCorbaConstants.java?view=diff&rev=534116&r1=534115&r2=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/common/ToolCorbaConstants.java (original)
+++ incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/common/ToolCorbaConstants.java Tue May  1 08:20:59 2007
@@ -41,4 +41,6 @@
     public static final String CFG_CORBATYPEMAP_NAMESPACE = "corbatypemapns";
     public static final String CFG_WSDL_ENCODING = "encoding";
     public static final String CFG_BOUNDEDSTRINGS = "boundedstrings";
+    public static final String CFG_LOGICAL = "logical";
+    public static final String CFG_PHYSICAL = "physical";
 }

Modified: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java?view=diff&rev=534116&r1=534115&r2=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java (original)
+++ incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/IDLToWSDLProcessor.java Tue May  1 08:20:59 2007
@@ -51,11 +51,30 @@
 
     protected ToolContext toolContext;
     private String idl;
+    private String schemaFilename;
+    private String logical;
+    private String physical;
     private ProcessorEnvironment env;
     private Writer outputWriter;
+    private Writer schemaOutputWriter;
+    private Writer logicalOutputWriter;
+    private Writer physicalOutputWriter;    
     
     public void process() throws ToolException {
         idl = getBaseFilename(env.get(ToolCorbaConstants.CFG_IDLFILE).toString());
+        
+        if (env.optionSet(ToolCorbaConstants.CFG_LOGICAL)) {
+            // deal with writing logical file
+            logical = getBaseFilename(env.get(ToolCorbaConstants.CFG_LOGICAL).toString());
+        }
+        if (env.optionSet(ToolCorbaConstants.CFG_PHYSICAL)) {
+            // deal with writing physical file
+            physical = getBaseFilename(env.get(ToolCorbaConstants.CFG_PHYSICAL).toString());
+        }
+        if (env.optionSet(ToolCorbaConstants.CFG_SCHEMA)) {
+            // deal with writing schema types to a specified file
+            schemaFilename = getBaseFilename(env.get(ToolCorbaConstants.CFG_SCHEMA).toString());
+        }
         try {
             parseIDL();
         } catch (Exception e) {
@@ -71,6 +90,18 @@
     public void setOutputWriter(Writer writer) {
         outputWriter = writer;
     }
+    
+    public void setSchemaOutputWriter(Writer writer) {
+        schemaOutputWriter = writer;
+    }
+    
+    public void setLogicalOutputWriter(Writer writer) {
+        logicalOutputWriter = writer;
+    }
+    
+    public void setPhysicalOutputWriter(Writer writer) {
+        physicalOutputWriter = writer;
+    }
 
     public void parseIDL() throws Exception {
         IDLPreProcessor preProcessor = new IDLPreProcessor();
@@ -126,12 +157,47 @@
             Definition def = visitor.getDefinition();
             Binding[] bindings = visitor.getCorbaBindings();
             generateCORBAService(def, bindings);
-            visitor.writeDefinition(outputWriter);
+            writeDefinitions(visitor, outputDir);           
         } catch (Exception ex) {
             throw new ToolException(ex.getMessage(), ex);
         }
     }
 
+    
+    private void writeDefinitions(WSDLASTVisitor visitor, String outputDir) 
+        throws Exception {
+        
+        if (env.optionSet(ToolCorbaConstants.CFG_LOGICAL)
+            || env.optionSet(ToolCorbaConstants.CFG_PHYSICAL)
+            || env.optionSet(ToolCorbaConstants.CFG_SCHEMA)) {
+            if (logical != null) {
+                if (logicalOutputWriter == null) {
+                    FileWriterUtil fw = new FileWriterUtil(outputDir);                    
+                    logicalOutputWriter = fw.getWriter("", logical);
+                }                    
+            }
+            if (physical != null) {
+                if (physicalOutputWriter == null) {
+                    FileWriterUtil fw = new FileWriterUtil(outputDir);
+                    physicalOutputWriter = fw.getWriter("", physical);
+                }                    
+            }
+            
+            if (schemaFilename != null) {
+                if (schemaOutputWriter == null) {
+                    FileWriterUtil fw = new FileWriterUtil(outputDir);
+                    schemaOutputWriter = fw.getWriter("", schemaFilename);
+                }
+            }
+            visitor.setIdlFile(idl + ".wsdl");
+            visitor.writeDefinitions(outputWriter, schemaOutputWriter,
+                                     logicalOutputWriter, physicalOutputWriter, 
+                                     schemaFilename, logical, physical);
+        } else {            
+            visitor.writeDefinition(outputWriter);
+        }         
+    }
+    
     public void setEnvironment(ProcessorEnvironment penv) {
         env = penv;
     }

Modified: incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java?view=diff&rev=534116&r1=534115&r2=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java (original)
+++ incubator/yoko/trunk/tools/src/main/java/org/apache/yoko/tools/processors/idl/WSDLASTVisitor.java Tue May  1 08:20:59 2007
@@ -28,7 +28,11 @@
 import javax.wsdl.Binding;
 import javax.wsdl.BindingOperation;
 import javax.wsdl.Definition;
+import javax.wsdl.Import;
+import javax.wsdl.Message;
 import javax.wsdl.Port;
+import javax.wsdl.PortType;
+import javax.wsdl.Service;
 import javax.wsdl.Types;
 import javax.wsdl.WSDLException;
 import javax.wsdl.extensions.ExtensibilityElement;
@@ -71,16 +75,19 @@
     TypeMappingType typeMap;
     ScopeNameCollection scopedNames;
     DeferredActionCollection deferredActions;
+    String targetNamespace;
     private boolean declaredWSAImport;
 
     private XmlSchemaType sequenceOctetType;
     private boolean boundedStringOverride;
+    private String idlFile;
     
     public WSDLASTVisitor(String tns, String schemans, String corbatypemaptns)
         throws WSDLException, JAXBException {
         
         definition = createWsdlDefinition(tns);
         
+        targetNamespace = tns;
         schemas = new XmlSchemaCollection();
         scopedNames = new ScopeNameCollection();
         deferredActions = new DeferredActionCollection();
@@ -117,6 +124,14 @@
         }
     }
 
+    public void setIdlFile(String idl) {
+        idlFile = idl;
+    }
+    
+    public String getIdlFile() {
+        return idlFile;
+    }
+    
     public Definition getDefinition() {
         return definition;
     }
@@ -184,11 +199,173 @@
         return (Binding[]) result.toArray(new Binding[result.size()]);
     }
 
-    public boolean writeDefinition(Writer writer) throws Exception {
+    public boolean writeDefinition(Writer writer) throws Exception {       
         WSDLUtils.writeWSDL(definition, writer);
         return true;
-    }        
+    }
+    
+    public boolean writeDefinition(Definition def, Writer writer) throws Exception {       
+        WSDLUtils.writeWSDL(def, writer);
+        return true;
+    }
+    
+    public boolean writeDefinitions(Writer writer, Writer schemaWriter,
+                                    Writer logicalWriter, Writer physicalWriter, 
+                                    String schemaFilename, String logicalFile, 
+                                    String physicalFile) throws Exception {
+                        
+        Definition logicalDef = getLogicalDefinition(schemaFilename, schemaWriter);
+        Definition physicalDef = null;
+        if (schemaFilename != null && logicalFile == null 
+            && physicalFile == null) {
+            physicalDef = getPhysicalDefinition(logicalDef, true);
+        } else {
+            physicalDef = getPhysicalDefinition(logicalDef, false);
+        }
+        
+        // write out logical file -L and physical in default
+        if (logicalFile != null && physicalFile == null) {
+            writeDefinition(logicalDef, logicalWriter);
+            physicalDef = writeImport(physicalDef, logicalFile);
+            writeDefinition(physicalDef, writer);                       
+        } else if (logicalFile != null && physicalFile != null) {
+            // write both logical -L and physical files -P           
+            writeDefinition(logicalDef, logicalWriter);            
+            physicalDef = writeImport(physicalDef, logicalFile);
+            writeDefinition(physicalDef, physicalWriter);
+        } else if (logicalFile == null && physicalFile != null) {
+            // write pyhsical file -P and logical in default
+            writeDefinition(logicalDef, writer);                        
+            physicalDef = writeImport(physicalDef, getIdlFile());            
+            writeDefinition(physicalDef, physicalWriter);
+        } else if (logicalFile == null && physicalFile == null
+            && schemaFilename != null) {           
+            // write out the schema file -T and default of logical
+            // and physical together.
+            writeDefinition(physicalDef, writer);
+        } else if (logicalFile == null && physicalFile == null
+            && schemaFilename == null) {
+            // write out the default file
+            writeDefinition(definition, writer);
+        }        
+        
+        return true;
+    }
+    
+    // Writes import into either a logical, physical or schema file.
+    private Definition writeImport(Definition def, String filename) {
+        Import importDef = def.createImport();
+        importDef.setLocationURI(filename);
+        importDef.setNamespaceURI(definition.getTargetNamespace());
+        def.addImport(importDef);
+        return def;
+    }
+    
+    // -T option - generate schema types into a specified file.
+    private void writeSchemaFile(Writer schemaWriter) throws Exception {
+        Types types = definition.getTypes();
+        Definition schemaDef = createWsdlDefinition(targetNamespace);                    
+        schemaDef.setTypes(types);        
+        Iterator iter = definition.getNamespaces().values().iterator();       
+        while (iter.hasNext()) {
+            String namespace = (String)iter.next();
+            String prefix = definition.getPrefix(namespace);
+            if (prefix.equals("corba")) {
+                schemaDef.removeNamespace(prefix);                
+            }
+        }
+        writeDefinition(schemaDef, schemaWriter);
+    }
 
+    // Gets the logical definition for a file - an import will be added for the 
+    // schema types if -T is used and a separate schema file generated.
+    private Definition getLogicalDefinition(String schemaFilename, Writer schemaWriter) 
+        throws WSDLException, JAXBException, Exception {        
+        Definition def = createWsdlDefinition(targetNamespace);
+
+        // checks for -T option.
+        if (schemaFilename != null) {
+            writeSchemaFile(schemaWriter);
+            writeImport(def, schemaFilename);
+        } else {
+            Types types = definition.getTypes();
+            def.setTypes(types);
+        }            
+        
+        Iterator iter = definition.getAllPortTypes().values().iterator();
+        while (iter.hasNext()) {
+            PortType port = (PortType)iter.next();
+            def.addPortType(port);
+        }
+        
+        iter = definition.getMessages().values().iterator();
+        while (iter.hasNext()) {
+            Message msg = (Message)iter.next();
+            def.addMessage(msg);
+        }                
+        
+        iter = definition.getNamespaces().values().iterator();       
+        while (iter.hasNext()) {
+            String namespace = (String)iter.next();
+            String prefix = definition.getPrefix(namespace);
+            if (!prefix.equals("corba")) {
+                def.addNamespace(prefix, namespace);
+            } else {
+                def.removeNamespace(prefix);
+            }
+        }
+        
+        iter = definition.getImports().values().iterator();       
+        while (iter.hasNext()) {
+            Import importType = (Import)iter.next();
+            def.addImport(importType);            
+        }
+        
+        def.setDocumentationElement(definition.getDocumentationElement());
+        def.setDocumentBaseURI(definition.getDocumentBaseURI());
+        
+        return def;
+    }
+    
+    // Write the physical definitions to a file.
+    private Definition getPhysicalDefinition(Definition logicalDef, boolean schemaOnly) 
+        throws WSDLException, JAXBException {
+        
+        Definition def = null;        
+        if (schemaOnly) {
+            def = logicalDef;
+        } else {
+            def = createWsdlDefinition(targetNamespace);
+        }
+                
+        Iterator iter = definition.getNamespaces().values().iterator();       
+        while (iter.hasNext()) {
+            String namespace = (String)iter.next();
+            String prefix = definition.getPrefix(namespace);
+            def.addNamespace(prefix, namespace); 
+        }
+        
+        iter = definition.getAllBindings().values().iterator();
+        while (iter.hasNext()) {
+            Binding binding = (Binding)iter.next();
+            def.addBinding(binding);
+        }
+        iter = definition.getAllServices().values().iterator();
+        while (iter.hasNext()) {
+            Service service = (Service)iter.next(); 
+            def.addService(service);
+        }
+        iter = definition.getExtensibilityElements().iterator();
+        while (iter.hasNext()) {
+            ExtensibilityElement ext = (ExtensibilityElement)iter.next();
+            def.addExtensibilityElement(ext);
+        }                
+        
+        def.setExtensionRegistry(definition.getExtensionRegistry());
+                
+        return def;
+    }        
+ 
     private Definition createWsdlDefinition(String tns) throws WSDLException, JAXBException {
         WSDLFactory wsdlFactory = WSDLFactory.newInstance();
         Definition wsdlDefinition = wsdlFactory.newDefinition();

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=534116&r1=534115&r2=534116
==============================================================================
--- 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 Tue May  1 08:20:59 2007
@@ -20,6 +20,7 @@
 package org.apache.yoko.tools.processors;
 
 import java.io.ByteArrayInputStream;
+import java.io.File;
 import java.io.InputStream;
 import java.net.URL;
 import java.util.HashMap;
@@ -245,4 +246,155 @@
         // This tests consts where their types are scoped names
         testWSDLGeneration("/idl/ConstScopename.idl", "/idl/expected_ConstScopename.wsdl");
     }
+    
+    public void testLogicalPhysicalSchemaGeneration(String sourceIdlFilename, String sourceLogicalName,
+                                                    String sourcePhysicalName, String sourceSchemaFilename,
+                                                    String expectedLogicalName, String expectedPhysicalName,
+                                                    String expectedSchemaFilename) throws Exception {
+
+        URL idl = getClass().getResource(sourceIdlFilename);
+
+        ProcessorEnvironment env = new ProcessorEnvironment();
+        Map<String, Object> cfg = new HashMap<String, Object>();
+        cfg.put(ToolCorbaConstants.CFG_IDLFILE, idl.getFile());
+        if (sourceLogicalName != null) {
+            cfg.put(ToolCorbaConstants.CFG_LOGICAL, sourceLogicalName);
+        }
+        if (sourcePhysicalName != null) {
+            cfg.put(ToolCorbaConstants.CFG_PHYSICAL, sourcePhysicalName);
+        }
+        if (sourceSchemaFilename != null) {
+            cfg.put(ToolCorbaConstants.CFG_SCHEMA, sourceSchemaFilename);
+        }
+
+        env.setParameters(cfg);
+        IDLToWSDLProcessor processor = new IDLToWSDLProcessor();
+        processor.setEnvironment(env);       
+        java.io.CharArrayWriter outL = new java.io.CharArrayWriter();
+        processor.setLogicalOutputWriter(outL);
+        java.io.CharArrayWriter outP = new java.io.CharArrayWriter();
+        processor.setPhysicalOutputWriter(outP);
+        java.io.CharArrayWriter outS = new java.io.CharArrayWriter();
+        processor.setSchemaOutputWriter(outS);
+        processor.process();
+
+        if (expectedLogicalName != null) {
+            InputStream origLogicalStream = getClass().getResourceAsStream(expectedLogicalName);
+            InputStream actualLogicalStream = new ByteArrayInputStream(outL.toString().getBytes());
+            XMLStreamReader orig = factory.createXMLStreamReader(origLogicalStream);
+            XMLStreamReader actual = factory.createXMLStreamReader(actualLogicalStream);
+            wsdlGenTester.compare(orig, actual);
+        }
+
+        if (expectedPhysicalName != null) {
+            InputStream origPhysicalStream = getClass().getResourceAsStream(expectedPhysicalName);
+            InputStream actualPhysicalStream = new ByteArrayInputStream(outP.toString().getBytes());
+            XMLStreamReader orig = factory.createXMLStreamReader(origPhysicalStream);
+            XMLStreamReader actual = factory.createXMLStreamReader(actualPhysicalStream);
+            wsdlGenTester.compare(orig, actual);
+        }
+
+        if (expectedSchemaFilename != null) {
+            InputStream origSchemaStream = getClass().getResourceAsStream(expectedSchemaFilename);
+            InputStream actualSchemaStream = new ByteArrayInputStream(outS.toString().getBytes());
+            XMLStreamReader orig = factory.createXMLStreamReader(origSchemaStream);
+            XMLStreamReader actual = factory.createXMLStreamReader(actualSchemaStream);
+            wsdlGenTester.compare(orig, actual);
+        }
+    } 
+    
+    
+    
+    public void testSchemaGeneration(String sourceIdlFilename, String sourceSchemaFilename,
+                                     String expectedDefaultName, String expectedSchemaFilename)
+        throws Exception {
+        URL idl = getClass().getResource(sourceIdlFilename);
+        ProcessorEnvironment env = new ProcessorEnvironment();
+        Map<String, Object> cfg = new HashMap<String, Object>();
+        cfg.put(ToolCorbaConstants.CFG_IDLFILE, idl.getFile());
+        if (sourceSchemaFilename != null) {
+            cfg.put(ToolCorbaConstants.CFG_SCHEMA, sourceSchemaFilename);
+        }
+
+        env.setParameters(cfg);
+        IDLToWSDLProcessor processor = new IDLToWSDLProcessor();
+        processor.setEnvironment(env);
+        java.io.CharArrayWriter out = new java.io.CharArrayWriter();
+        processor.setOutputWriter(out);
+        java.io.CharArrayWriter outS = new java.io.CharArrayWriter();
+        processor.setSchemaOutputWriter(outS);
+        processor.process();
+
+        InputStream origSchemaStream = getClass().getResourceAsStream(expectedSchemaFilename);
+        InputStream actualSchemaStream = new ByteArrayInputStream(outS.toString().getBytes());
+        XMLStreamReader orig = factory.createXMLStreamReader(origSchemaStream);
+        XMLStreamReader actual = factory.createXMLStreamReader(actualSchemaStream);
+        wsdlGenTester.compare(orig, actual);
+
+        InputStream origDefaultStream = getClass().getResourceAsStream(expectedDefaultName);
+        InputStream actualDefaultStream = new ByteArrayInputStream(out.toString().getBytes());
+        orig = factory.createXMLStreamReader(origDefaultStream);
+        actual = factory.createXMLStreamReader(actualDefaultStream);
+        wsdlGenTester.compare(orig, actual);
+
+    }
+    
+    public void testSchemaOnly() throws Exception {
+        // This tests if -T option is only passed.
+        testSchemaGeneration("/idl/OptionsSchema.idl", "expected_Schema.wsdl", 
+                             "/idl/expected_OptionsSchema.wsdl", "/idl/expected_Schema.wsdl");
+    }
+    
+    public void testPhysicalSchema() throws Exception {
+        // This tests if -P and -T options are passed.
+        testLogicalPhysicalSchemaGeneration("/idl/OptionsPT.idl", null,
+                                            "expected_PhysicalPT.wsdl", 
+                                            "expected_SchemaPT.wsdl", null, 
+                                            "/idl/expected_PhysicalPT.wsdl",
+                                            "/idl/expected_SchemaPT.wsdl");
+    }
+        
+    public void testLogicalSchema() throws Exception {
+        // This tests -L and -T options are passed.
+        testLogicalPhysicalSchemaGeneration("/idl/OptionsLT.idl", "expected_LogicalLT.wsdl",
+                                            null, "expected_SchemaLT.wsdl",
+                                            "/idl/expected_LogicalLT.wsdl", null,
+                                            "/idl/expected_SchemaLT.wsdl");
+        new File("OptionsLPT.wsdl").delete();
+    }
+
+
+    public void testLogicalOnly() throws Exception {
+        // This tests if only -L option is passed.
+        testLogicalPhysicalSchemaGeneration("/idl/OptionL.idl", "expected_Logical.wsdl",
+                                            null, null, "/idl/expected_Logical.wsdl", 
+                                            null, null);
+    }
+    
+    public void testLogicalPhysical() throws Exception {
+        // This tests if -L and -P options are passed.
+        testLogicalPhysicalSchemaGeneration("/idl/OptionsLP.idl", "expected_LogicalLP.wsdl",
+                                            "expected_PhysicalLP.wsdl", null,
+                                            "/idl/expected_LogicalLP.wsdl", 
+                                            "/idl/expected_PhysicalLP.wsdl", null);
+    }
+    
+    public void testPhysicalOnly() throws Exception {
+        // This tests if -P option is only passed.
+        testLogicalPhysicalSchemaGeneration("/idl/OptionP.idl", null,
+                                            "expected_Physical.wsdl", 
+                                            null, null, "/idl/expected_Physical.wsdl",
+                                            null);
+    }            
+    
+    public void testLogicalPyhsicalSchema() throws Exception {
+        // This tests if -L, -P and -T options are passed. 
+        testLogicalPhysicalSchemaGeneration("/idl/OptionsLPT.idl", "expected_LogicalLPT.wsdl",
+                                            "expected_PhysicalLPT.wsdl", "expected_SchemaLPT.wsdl",
+                                            "/idl/expected_LogicalLPT.wsdl",
+                                            "/idl/expected_PhysicalLPT.wsdl", 
+                                            "/idl/expected_SchemaLPT.wsdl");
+        
+    }
+                
 }

Added: incubator/yoko/trunk/tools/src/test/resources/idl/OptionL.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/OptionL.idl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/OptionL.idl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/OptionL.idl Tue May  1 08:20:59 2007
@@ -0,0 +1,34 @@
+/* 
+ * 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 foo {
+
+    interface bar {
+    
+        struct Employee {
+            string name;
+            long number;
+        };
+        
+        Employee getEmployee(in Employee inEmp, 
+                             out Employee outEmp,
+                             inout Employee inoutEmp);
+                             
+    };
+    
+};
\ No newline at end of file

Added: incubator/yoko/trunk/tools/src/test/resources/idl/OptionP.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/OptionP.idl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/OptionP.idl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/OptionP.idl Tue May  1 08:20:59 2007
@@ -0,0 +1,34 @@
+/* 
+ * 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 foo {
+
+    interface bar {
+    
+        struct Employee {
+            string name;
+            long number;
+        };
+        
+        Employee getEmployee(in Employee inEmp, 
+                             out Employee outEmp,
+                             inout Employee inoutEmp);
+                             
+    };
+    
+};
\ No newline at end of file

Added: incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLP.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLP.idl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLP.idl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLP.idl Tue May  1 08:20:59 2007
@@ -0,0 +1,34 @@
+/* 
+ * 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 foo {
+
+    interface bar {
+    
+        struct Employee {
+            string name;
+            long number;
+        };
+        
+        Employee getEmployee(in Employee inEmp, 
+                             out Employee outEmp,
+                             inout Employee inoutEmp);
+                             
+    };
+    
+};
\ No newline at end of file

Added: incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLPT.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLPT.idl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLPT.idl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLPT.idl Tue May  1 08:20:59 2007
@@ -0,0 +1,34 @@
+/* 
+ * 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 foo {
+
+    interface bar {
+    
+        struct Employee {
+            string name;
+            long number;
+        };
+        
+        Employee getEmployee(in Employee inEmp, 
+                             out Employee outEmp,
+                             inout Employee inoutEmp);
+                             
+    };
+    
+};
\ No newline at end of file

Added: incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLT.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLT.idl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLT.idl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/OptionsLT.idl Tue May  1 08:20:59 2007
@@ -0,0 +1,34 @@
+/* 
+ * 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 foo {
+
+    interface bar {
+    
+        struct Employee {
+            string name;
+            long number;
+        };
+        
+        Employee getEmployee(in Employee inEmp, 
+                             out Employee outEmp,
+                             inout Employee inoutEmp);
+                             
+    };
+    
+};
\ No newline at end of file

Added: incubator/yoko/trunk/tools/src/test/resources/idl/OptionsPT.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/OptionsPT.idl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/OptionsPT.idl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/OptionsPT.idl Tue May  1 08:20:59 2007
@@ -0,0 +1,34 @@
+/* 
+ * 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 foo {
+
+    interface bar {
+    
+        struct Employee {
+            string name;
+            long number;
+        };
+        
+        Employee getEmployee(in Employee inEmp, 
+                             out Employee outEmp,
+                             inout Employee inoutEmp);
+                             
+    };
+    
+};
\ No newline at end of file

Added: incubator/yoko/trunk/tools/src/test/resources/idl/OptionsSchema.idl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/OptionsSchema.idl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/OptionsSchema.idl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/OptionsSchema.idl Tue May  1 08:20:59 2007
@@ -0,0 +1,35 @@
+/* 
+ * 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 foo {
+
+    interface bar {
+    
+        struct Employee {
+            string name;
+            long number;
+        };
+        
+        Employee getEmployee(in Employee inEmp, 
+                             out Employee outEmp,
+                             inout Employee inoutEmp);
+                             
+    };
+    
+};
+    
\ No newline at end of file

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_Logical.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_Logical.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_Logical.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_Logical.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,71 @@
+<?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/OptionL" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionL" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/OptionL" xmlns="http://schemas.apache.org/yoko/idl/OptionL" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+      <xs:complexType name="foo.bar.Employee">
+        <xs:sequence>
+          <xs:element name="name" type="xs:string">
+          </xs:element>
+          <xs:element name="number" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:element name="getEmployee">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="getEmployeeResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="return" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="outEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:schema>
+  </wsdl:types>
+  <wsdl:message name="getEmployee">
+    <wsdl:part name="inparameter" element="tns:getEmployee">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="getEmployeeResponse">
+    <wsdl:part name="outparameter" element="tns:getEmployeeResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:portType name="foo.bar">
+    <wsdl:operation name="getEmployee">
+      <wsdl:input name="getEmployeeRequest" message="tns:getEmployee">
+    </wsdl:input>
+      <wsdl:output name="getEmployeeResponse" message="tns:getEmployeeResponse">
+    </wsdl:output>
+    </wsdl:operation>
+  </wsdl:portType>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLP.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLP.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLP.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLP.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,71 @@
+<?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/OptionsLP" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsLP" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/OptionsLP" xmlns="http://schemas.apache.org/yoko/idl/OptionsLP" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+      <xs:complexType name="foo.bar.Employee">
+        <xs:sequence>
+          <xs:element name="name" type="xs:string">
+          </xs:element>
+          <xs:element name="number" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:element name="getEmployee">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="getEmployeeResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="return" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="outEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:schema>
+  </wsdl:types>
+  <wsdl:message name="getEmployeeResponse">
+    <wsdl:part name="outparameter" element="tns:getEmployeeResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="getEmployee">
+    <wsdl:part name="inparameter" element="tns:getEmployee">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:portType name="foo.bar">
+    <wsdl:operation name="getEmployee">
+      <wsdl:input name="getEmployeeRequest" message="tns:getEmployee">
+    </wsdl:input>
+      <wsdl:output name="getEmployeeResponse" message="tns:getEmployeeResponse">
+    </wsdl:output>
+    </wsdl:operation>
+  </wsdl:portType>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLPT.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLPT.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLPT.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLPT.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,39 @@
+<?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/OptionsLPT" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsLPT" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:import namespace="http://schemas.apache.org/yoko/idl/OptionsLPT" location="expected_SchemaLPT.wsdl">
+    </wsdl:import>
+  <wsdl:message name="getEmployee">
+    <wsdl:part name="inparameter" element="tns:getEmployee">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="getEmployeeResponse">
+    <wsdl:part name="outparameter" element="tns:getEmployeeResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:portType name="foo.bar">
+    <wsdl:operation name="getEmployee">
+      <wsdl:input name="getEmployeeRequest" message="tns:getEmployee">
+    </wsdl:input>
+      <wsdl:output name="getEmployeeResponse" message="tns:getEmployeeResponse">
+    </wsdl:output>
+    </wsdl:operation>
+  </wsdl:portType>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLT.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLT.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLT.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_LogicalLT.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,39 @@
+<?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/OptionsLT" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsLT" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:import namespace="http://schemas.apache.org/yoko/idl/OptionsLT" location="expected_SchemaLT.wsdl">
+    </wsdl:import>
+  <wsdl:message name="getEmployeeResponse">
+    <wsdl:part name="outparameter" element="tns:getEmployeeResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="getEmployee">
+    <wsdl:part name="inparameter" element="tns:getEmployee">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:portType name="foo.bar">
+    <wsdl:operation name="getEmployee">
+      <wsdl:input name="getEmployeeRequest" message="tns:getEmployee">
+    </wsdl:input>
+      <wsdl:output name="getEmployeeResponse" message="tns:getEmployeeResponse">
+    </wsdl:output>
+    </wsdl:operation>
+  </wsdl:portType>
+</wsdl:definitions>
\ No newline at end of file

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_OptionsSchema.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_OptionsSchema.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_OptionsSchema.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_OptionsSchema.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,65 @@
+<?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/OptionsSchema" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsSchema" 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/OptionsSchema/typemap">
+    <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/OptionsSchema" xmlns="http://schemas.apache.org/yoko/idl/OptionsSchema/typemap" repositoryID="IDL:foo/bar/Employee:1.0" name="foo.bar.Employee" type="ns4:foo.bar.Employee">
+      <corba:member name="name" idltype="corba:string" />
+      <corba:member name="number" idltype="corba:long" />
+    </corba:struct>
+  </corba:typeMapping>
+  <wsdl:import namespace="http://schemas.apache.org/yoko/idl/OptionsSchema" location="expected_Schema.wsdl">
+    </wsdl:import>
+  <wsdl:message name="getEmployee">
+    <wsdl:part name="inparameter" element="tns:getEmployee">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:message name="getEmployeeResponse">
+    <wsdl:part name="outparameter" element="tns:getEmployeeResponse">
+    </wsdl:part>
+  </wsdl:message>
+  <wsdl:portType name="foo.bar">
+    <wsdl:operation name="getEmployee">
+      <wsdl:input name="getEmployeeRequest" message="tns:getEmployee">
+    </wsdl:input>
+      <wsdl:output name="getEmployeeResponse" message="tns:getEmployeeResponse">
+    </wsdl:output>
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:binding name="foo.barCORBABinding" type="tns:foo.bar">
+    <corba:binding repositoryID="IDL:foo/bar:1.0" />
+    <wsdl:operation name="getEmployee">
+      <corba:operation name="getEmployee">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsSchema/typemap" mode="in" name="inEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsSchema/typemap" mode="out" name="outEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsSchema/typemap" mode="inout" name="inoutEmp" idltype="foo.bar.Employee" />
+        <corba:return xmlns="http://schemas.apache.org/yoko/idl/OptionsSchema/typemap" name="return" idltype="foo.bar.Employee" />
+      </corba:operation>
+      <wsdl:input name="getEmployeeRequest">
+      </wsdl:input>
+      <wsdl:output name="getEmployeeResponse">
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="foo.barCORBAService">
+    <wsdl:port name="foo.barCORBAPort" binding="tns:foo.barCORBABinding">
+      <corba:address location="IOR:" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_Physical.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_Physical.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_Physical.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_Physical.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<wsdl:definitions targetNamespace="http://schemas.apache.org/yoko/idl/OptionP" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionP" 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/OptionP/typemap">
+    <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/OptionP" xmlns="http://schemas.apache.org/yoko/idl/OptionP/typemap" repositoryID="IDL:foo/bar/Employee:1.0" name="foo.bar.Employee" type="ns4:foo.bar.Employee">
+      <corba:member name="name" idltype="corba:string" />
+      <corba:member name="number" idltype="corba:long" />
+    </corba:struct>
+  </corba:typeMapping>
+  <wsdl:import namespace="http://schemas.apache.org/yoko/idl/OptionP" location="OptionP.wsdl">
+    </wsdl:import>
+  <wsdl:binding name="foo.barCORBABinding" type="tns:foo.bar">
+    <corba:binding repositoryID="IDL:foo/bar:1.0" />
+    <wsdl:operation name="getEmployee">
+      <corba:operation name="getEmployee">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionP/typemap" mode="in" name="inEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionP/typemap" mode="out" name="outEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionP/typemap" mode="inout" name="inoutEmp" idltype="foo.bar.Employee" />
+        <corba:return xmlns="http://schemas.apache.org/yoko/idl/OptionP/typemap" name="return" idltype="foo.bar.Employee" />
+      </corba:operation>
+      <wsdl:input name="getEmployeeRequest">
+      </wsdl:input>
+      <wsdl:output name="getEmployeeResponse">
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="foo.barCORBAService">
+    <wsdl:port name="foo.barCORBAPort" binding="tns:foo.barCORBABinding">
+      <corba:address location="IOR:" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLP.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLP.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLP.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLP.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<wsdl:definitions targetNamespace="http://schemas.apache.org/yoko/idl/OptionsLP" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsLP" 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/OptionsLP/typemap">
+    <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/OptionsLP" xmlns="http://schemas.apache.org/yoko/idl/OptionsLP/typemap" repositoryID="IDL:foo/bar/Employee:1.0" name="foo.bar.Employee" type="ns4:foo.bar.Employee">
+      <corba:member name="name" idltype="corba:string" />
+      <corba:member name="number" idltype="corba:long" />
+    </corba:struct>
+  </corba:typeMapping>
+  <wsdl:import namespace="http://schemas.apache.org/yoko/idl/OptionsLP" location="expected_LogicalLP.wsdl">
+    </wsdl:import>
+  <wsdl:binding name="foo.barCORBABinding" type="tns:foo.bar">
+    <corba:binding repositoryID="IDL:foo/bar:1.0" />
+    <wsdl:operation name="getEmployee">
+      <corba:operation name="getEmployee">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsLP/typemap" mode="in" name="inEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsLP/typemap" mode="out" name="outEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsLP/typemap" mode="inout" name="inoutEmp" idltype="foo.bar.Employee" />
+        <corba:return xmlns="http://schemas.apache.org/yoko/idl/OptionsLP/typemap" name="return" idltype="foo.bar.Employee" />
+      </corba:operation>
+      <wsdl:input name="getEmployeeRequest">
+      </wsdl:input>
+      <wsdl:output name="getEmployeeResponse">
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="foo.barCORBAService">
+    <wsdl:port name="foo.barCORBAPort" binding="tns:foo.barCORBABinding">
+      <corba:address location="IOR:" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLPT.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLPT.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLPT.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalLPT.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<wsdl:definitions targetNamespace="http://schemas.apache.org/yoko/idl/OptionsLPT" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsLPT" 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/OptionsLPT/typemap">
+    <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/OptionsLPT" xmlns="http://schemas.apache.org/yoko/idl/OptionsLPT/typemap" repositoryID="IDL:foo/bar/Employee:1.0" name="foo.bar.Employee" type="ns4:foo.bar.Employee">
+      <corba:member name="name" idltype="corba:string" />
+      <corba:member name="number" idltype="corba:long" />
+    </corba:struct>
+  </corba:typeMapping>
+  <wsdl:import namespace="http://schemas.apache.org/yoko/idl/OptionsLPT" location="expected_LogicalLPT.wsdl">
+    </wsdl:import>
+  <wsdl:binding name="foo.barCORBABinding" type="tns:foo.bar">
+    <corba:binding repositoryID="IDL:foo/bar:1.0" />
+    <wsdl:operation name="getEmployee">
+      <corba:operation name="getEmployee">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsLPT/typemap" mode="in" name="inEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsLPT/typemap" mode="out" name="outEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsLPT/typemap" mode="inout" name="inoutEmp" idltype="foo.bar.Employee" />
+        <corba:return xmlns="http://schemas.apache.org/yoko/idl/OptionsLPT/typemap" name="return" idltype="foo.bar.Employee" />
+      </corba:operation>
+      <wsdl:input name="getEmployeeRequest">
+      </wsdl:input>
+      <wsdl:output name="getEmployeeResponse">
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="foo.barCORBAService">
+    <wsdl:port name="foo.barCORBAPort" binding="tns:foo.barCORBABinding">
+      <corba:address location="IOR:" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalPT.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalPT.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalPT.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_PhysicalPT.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<wsdl:definitions targetNamespace="http://schemas.apache.org/yoko/idl/OptionsPT" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsPT" 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/OptionsPT/typemap">
+    <corba:struct xmlns:ns4="http://schemas.apache.org/yoko/idl/OptionsPT" xmlns="http://schemas.apache.org/yoko/idl/OptionsPT/typemap" repositoryID="IDL:foo/bar/Employee:1.0" name="foo.bar.Employee" type="ns4:foo.bar.Employee">
+      <corba:member name="name" idltype="corba:string" />
+      <corba:member name="number" idltype="corba:long" />
+    </corba:struct>
+  </corba:typeMapping>
+  <wsdl:import namespace="http://schemas.apache.org/yoko/idl/OptionsPT" location="OptionsPT.wsdl">
+    </wsdl:import>
+  <wsdl:binding name="foo.barCORBABinding" type="tns:foo.bar">
+    <corba:binding repositoryID="IDL:foo/bar:1.0" />
+    <wsdl:operation name="getEmployee">
+      <corba:operation name="getEmployee">
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsPT/typemap" mode="in" name="inEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsPT/typemap" mode="out" name="outEmp" idltype="foo.bar.Employee" />
+        <corba:param xmlns="http://schemas.apache.org/yoko/idl/OptionsPT/typemap" mode="inout" name="inoutEmp" idltype="foo.bar.Employee" />
+        <corba:return xmlns="http://schemas.apache.org/yoko/idl/OptionsPT/typemap" name="return" idltype="foo.bar.Employee" />
+      </corba:operation>
+      <wsdl:input name="getEmployeeRequest">
+      </wsdl:input>
+      <wsdl:output name="getEmployeeResponse">
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="foo.barCORBAService">
+    <wsdl:port name="foo.barCORBAPort" binding="tns:foo.barCORBABinding">
+      <corba:address location="IOR:" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>
\ No newline at end of file

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_Schema.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_Schema.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_Schema.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_Schema.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<wsdl:definitions targetNamespace="http://schemas.apache.org/yoko/idl/OptionsSchema" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/OptionsSchema" xmlns="http://schemas.apache.org/yoko/idl/OptionsSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+      <xs:complexType name="foo.bar.Employee">
+        <xs:sequence>
+          <xs:element name="name" type="xs:string">
+          </xs:element>
+          <xs:element name="number" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:element name="getEmployee">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="getEmployeeResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="return" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="outEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:schema>
+  </wsdl:types>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLPT.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLPT.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLPT.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLPT.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<wsdl:definitions targetNamespace="http://schemas.apache.org/yoko/idl/OptionsLPT" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsLPT" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/OptionsLPT" xmlns="http://schemas.apache.org/yoko/idl/OptionsLPT" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+      <xs:complexType name="foo.bar.Employee">
+        <xs:sequence>
+          <xs:element name="name" type="xs:string">
+          </xs:element>
+          <xs:element name="number" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:element name="getEmployee">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="getEmployeeResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="return" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="outEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:schema>
+  </wsdl:types>
+</wsdl:definitions>

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLT.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLT.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLT.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaLT.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<wsdl:definitions targetNamespace="http://schemas.apache.org/yoko/idl/OptionsLT" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsLT" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/OptionsLT" xmlns="http://schemas.apache.org/yoko/idl/OptionsLT" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+      <xs:complexType name="foo.bar.Employee">
+        <xs:sequence>
+          <xs:element name="name" type="xs:string">
+          </xs:element>
+          <xs:element name="number" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:element name="getEmployee">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="getEmployeeResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="return" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="outEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:schema>
+  </wsdl:types>
+</wsdl:definitions>
\ No newline at end of file

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

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

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

Added: incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaPT.wsdl
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaPT.wsdl?view=auto&rev=534116
==============================================================================
--- incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaPT.wsdl (added)
+++ incubator/yoko/trunk/tools/src/test/resources/idl/expected_SchemaPT.wsdl Tue May  1 08:20:59 2007
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<wsdl:definitions targetNamespace="http://schemas.apache.org/yoko/idl/OptionsPT" xmlns:tns="http://schemas.apache.org/yoko/idl/OptionsPT" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://schemas.apache.org/yoko/idl/OptionsPT" xmlns="http://schemas.apache.org/yoko/idl/OptionsPT" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+      <xs:complexType name="foo.bar.Employee">
+        <xs:sequence>
+          <xs:element name="name" type="xs:string">
+          </xs:element>
+          <xs:element name="number" type="xs:int">
+          </xs:element>
+        </xs:sequence>
+      </xs:complexType>
+      <xs:element name="getEmployee">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="inEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="getEmployeeResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="return" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="outEmp" type="foo.bar.Employee">
+            </xs:element>
+            <xs:element name="inoutEmp" type="foo.bar.Employee">
+            </xs:element>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:schema>
+  </wsdl:types>
+</wsdl:definitions>
\ No newline at end of file

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

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

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