Return-Path: Delivered-To: apmail-xml-axis-dev-archive@xml.apache.org Received: (qmail 28825 invoked by uid 500); 4 Dec 2001 19:53:29 -0000 Mailing-List: contact axis-dev-help@xml.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@xml.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-dev@xml.apache.org Received: (qmail 28814 invoked by uid 500); 4 Dec 2001 19:53:29 -0000 Delivered-To: apmail-xml-axis-cvs@apache.org Date: 4 Dec 2001 19:34:57 -0000 Message-ID: <20011204193457.33392.qmail@icarus.apache.org> From: dims@apache.org To: xml-axis-cvs@apache.org Subject: cvs commit: xml-axis/java/src/org/apache/axis/wsdl Parameter.java Emitter.java JavaBindingWriter.java JavaDefinitionWriter.java JavaPortTypeWriter.java JavaServiceWriter.java JavaSkelWriter.java JavaStubWriter.java JavaTestCaseWriter.java JavaTypeWriter.java JavaWriterFactory.java Parameters.java SymbolTable.java Utils.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N dims 01/12/04 11:34:57 Modified: java/src/org/apache/axis/wsdl Emitter.java JavaBindingWriter.java JavaDefinitionWriter.java JavaPortTypeWriter.java JavaServiceWriter.java JavaSkelWriter.java JavaStubWriter.java JavaTestCaseWriter.java JavaTypeWriter.java JavaWriterFactory.java Parameters.java SymbolTable.java Utils.java Added: java/src/org/apache/axis/wsdl Parameter.java Log: - Separate Inner Class Parameter into its own file. - Make it easier to write Emitter Extensions - By exposing a few members of Emitter - By changing a few methods from protected to public. Revision Changes Path 1.109 +23 -0 xml-axis/java/src/org/apache/axis/wsdl/Emitter.java Index: Emitter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/Emitter.java,v retrieving revision 1.108 retrieving revision 1.109 diff -u -r1.108 -r1.109 --- Emitter.java 2001/12/04 00:59:26 1.108 +++ Emitter.java 2001/12/04 19:34:56 1.109 @@ -294,6 +294,18 @@ } /** + * Is Message Context parm creation flag set + * @return boolean value + */ + public boolean getMessageContext() { + return this.bMessageContext; + } + + public Definition getCurrentDefinition() { + return this.def; + } + + /** * Turn on/off generation of elements from imported files. * @param boolean generateImports */ @@ -309,6 +321,10 @@ this.bVerbose = value; } + public boolean getVerbose() { + return this.bVerbose; + } + public void setNamespaceMap(HashMap map) { delaySetMap = map; } @@ -321,6 +337,13 @@ this.outputDir = outputDir; } + /** + * Get the output directory to use for emitted source files + */ + public String getOutputDir() { + return this.outputDir; + } + /** * Set the scope for the deploy.xml file. * @param scope One of Emitter.NO_EXPLICIT_SCOPE, Emitter.APPLICATION_SCOPE, Emitter.REQUEST_SCOPE, Emitter.SESSION_SCOPE. Anything else is equivalent to NO_EXPLICIT_SCOPE and no explicit scope tag will appear in deploy.xml. 1.8 +1 -1 xml-axis/java/src/org/apache/axis/wsdl/JavaBindingWriter.java Index: JavaBindingWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaBindingWriter.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- JavaBindingWriter.java 2001/11/30 22:14:36 1.7 +++ JavaBindingWriter.java 2001/12/04 19:34:56 1.8 @@ -75,7 +75,7 @@ /** * Constructor. */ - protected JavaBindingWriter( + public JavaBindingWriter( Emitter emitter, Binding binding, SymbolTable symbolTable) { 1.7 +1 -1 xml-axis/java/src/org/apache/axis/wsdl/JavaDefinitionWriter.java Index: JavaDefinitionWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaDefinitionWriter.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- JavaDefinitionWriter.java 2001/11/28 20:49:01 1.6 +++ JavaDefinitionWriter.java 2001/12/04 19:34:56 1.7 @@ -83,7 +83,7 @@ /** * Constructor. */ - protected JavaDefinitionWriter(Emitter emitter, Definition definition, + public JavaDefinitionWriter(Emitter emitter, Definition definition, SymbolTable symbolTable) { deployWriter = new JavaDeployWriter(emitter, definition, symbolTable); undeployWriter = new JavaUndeployWriter(emitter, definition, symbolTable); 1.6 +1 -1 xml-axis/java/src/org/apache/axis/wsdl/JavaPortTypeWriter.java Index: JavaPortTypeWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaPortTypeWriter.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- JavaPortTypeWriter.java 2001/11/21 18:33:55 1.5 +++ JavaPortTypeWriter.java 2001/12/04 19:34:56 1.6 @@ -73,7 +73,7 @@ /** * Constructor. */ - protected JavaPortTypeWriter( + public JavaPortTypeWriter( Emitter emitter, PortType portType, SymbolTable symbolTable) { PortTypeEntry ptEntry = symbolTable.getPortTypeEntry(portType.getQName()); 1.5 +1 -1 xml-axis/java/src/org/apache/axis/wsdl/JavaServiceWriter.java Index: JavaServiceWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaServiceWriter.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- JavaServiceWriter.java 2001/11/30 22:14:36 1.4 +++ JavaServiceWriter.java 2001/12/04 19:34:56 1.5 @@ -72,7 +72,7 @@ /** * Constructor. */ - protected JavaServiceWriter( + public JavaServiceWriter( Emitter emitter, Service service, SymbolTable symbolTable) { 1.10 +10 -10 xml-axis/java/src/org/apache/axis/wsdl/JavaSkelWriter.java Index: JavaSkelWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaSkelWriter.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- JavaSkelWriter.java 2001/11/30 14:12:52 1.9 +++ JavaSkelWriter.java 2001/12/04 19:34:56 1.10 @@ -174,13 +174,13 @@ // Instantiate the holders for (int i = 0; i < parms.list.size(); ++i) { - Parameters.Parameter p = (Parameters.Parameter) parms.list.get(i); + Parameter p = (Parameter) parms.list.get(i); String holder = Utils.holder(p.type); - if (p.mode == Parameters.Parameter.INOUT) { + if (p.mode == Parameter.INOUT) { pw.println(" " + holder + " " + p.name + "Holder = new " + holder + "(" + p.name + ");"); } - else if (p.mode == Parameters.Parameter.OUT) { + else if (p.mode == Parameter.OUT) { pw.println(" " + holder + " " + p.name + "Holder = new " + holder + "();"); } } @@ -203,9 +203,9 @@ call = call + ", "; else needComma = true; - Parameters.Parameter p = (Parameters.Parameter) parms.list.get(i); + Parameter p = (Parameter) parms.list.get(i); - if (p.mode == Parameters.Parameter.IN) + if (p.mode == Parameter.IN) call = call + p.name; else call = call + p.name + "Holder"; @@ -225,9 +225,9 @@ // There is only one inout parameter. Find it in the parms list and write // its return int i = 0; - Parameters.Parameter p = (Parameters.Parameter) parms.list.get(i); - while (p.mode != Parameters.Parameter.INOUT) - p = (Parameters.Parameter) parms.list.get(++i); + Parameter p = (Parameter) parms.list.get(i); + while (p.mode != Parameter.INOUT) + p = (Parameter) parms.list.get(++i); pw.println(" return " + wrapPrimitiveType(p.type, p.name + "Holder._value") + ";"); } else { @@ -236,9 +236,9 @@ if (parms.returnType != null) pw.println(" list.add(new org.apache.axis.message.RPCParam(\"" + parms.returnName + "\", ret));"); for (int i = 0; i < parms.list.size(); ++i) { - Parameters.Parameter p = (Parameters.Parameter) parms.list.get(i); + Parameter p = (Parameter) parms.list.get(i); - if (p.mode != Parameters.Parameter.IN) + if (p.mode != Parameter.IN) pw.println(" list.add(new org.apache.axis.message.RPCParam(\"" + p.name + "\", " + wrapPrimitiveType(p.type, p.name + "Holder._value") +"));"); } pw.println(" return list;"); 1.19 +12 -12 xml-axis/java/src/org/apache/axis/wsdl/JavaStubWriter.java Index: JavaStubWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaStubWriter.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- JavaStubWriter.java 2001/12/03 22:49:24 1.18 +++ JavaStubWriter.java 2001/12/04 19:34:56 1.19 @@ -376,16 +376,16 @@ // loop over paramters and set up in/out params for (int i = 0; i < parms.list.size(); ++i) { - Parameters.Parameter p = (Parameters.Parameter) parms.list.get(i); + Parameter p = (Parameter) parms.list.get(i); QName qn = p.type.getQName(); String typeString = "new org.apache.axis.encoding.XMLType( new javax.xml.rpc.namespace.QName(\"" + qn.getNamespaceURI() + "\", \"" + qn.getLocalPart() + "\"))"; - if (p.mode == Parameters.Parameter.IN) { + if (p.mode == Parameter.IN) { pw.println(" call.addParameter(\"" + p.name + "\", " + typeString + ", org.apache.axis.client.Call.PARAM_MODE_IN);"); } - else if (p.mode == Parameters.Parameter.INOUT) { + else if (p.mode == Parameter.INOUT) { pw.println(" call.addParameter(\"" + p.name + "\", " + typeString + ", call.PARAM_MODE_INOUT);"); } else { // p.mode == Parameter.OUT @@ -412,17 +412,17 @@ // Write the input and inout parameter list boolean needComma = false; for (int i = 0; i < parms.list.size(); ++i) { - Parameters.Parameter p = (Parameters.Parameter) parms.list.get(i); + Parameter p = (Parameter) parms.list.get(i); if (needComma) { - if (p.mode != Parameters.Parameter.OUT) + if (p.mode != Parameter.OUT) pw.print(", "); } else needComma = true; - if (p.mode == Parameters.Parameter.IN) + if (p.mode == Parameter.IN) pw.print(wrapPrimitiveType(p.type, p.name)); - else if (p.mode == Parameters.Parameter.INOUT) + else if (p.mode == Parameter.INOUT) pw.print(wrapPrimitiveType(p.type, p.name + "._value")); } pw.println("});"); @@ -439,10 +439,10 @@ // There is only one output and it is an inout, so the resp object // must go into the inout holder. int i = 0; - Parameters.Parameter p = (Parameters.Parameter) parms.list.get(i); + Parameter p = (Parameter) parms.list.get(i); - while (p.mode != Parameters.Parameter.INOUT) - p = (Parameters.Parameter) parms.list.get(++i); + while (p.mode != Parameter.INOUT) + p = (Parameter) parms.list.get(++i); pw.println (" " + p.name + "._value = " + getResponseString(p.type, "resp")); } else { @@ -460,8 +460,8 @@ int outdex = 0; boolean firstInoutIsResp = (parms.outputs == 0); for (int i = 0; i < parms.list.size (); ++i) { - Parameters.Parameter p = (Parameters.Parameter) parms.list.get (i); - if (p.mode != Parameters.Parameter.IN) { + Parameter p = (Parameter) parms.list.get (i); + if (p.mode != Parameter.IN) { if (firstInoutIsResp) { firstInoutIsResp = false; pw.println (" " + p.name + "._value = " + getResponseString(p.type, "resp")); 1.9 +2 -2 xml-axis/java/src/org/apache/axis/wsdl/JavaTestCaseWriter.java Index: JavaTestCaseWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaTestCaseWriter.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- JavaTestCaseWriter.java 2001/11/29 21:45:34 1.8 +++ JavaTestCaseWriter.java 2001/12/04 19:34:56 1.9 @@ -211,11 +211,11 @@ pw.print(", "); } - Parameters.Parameter param = (Parameters.Parameter) iparam.next(); + Parameter param = (Parameter) iparam.next(); String paramType = null; switch (param.mode) { - case Parameters.Parameter.IN: + case Parameter.IN: paramType = param.type.getName(); break; 1.6 +1 -1 xml-axis/java/src/org/apache/axis/wsdl/JavaTypeWriter.java Index: JavaTypeWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaTypeWriter.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- JavaTypeWriter.java 2001/11/30 22:14:36 1.5 +++ JavaTypeWriter.java 2001/12/04 19:34:56 1.6 @@ -78,7 +78,7 @@ /** * Constructor. */ - protected JavaTypeWriter( + public JavaTypeWriter( Emitter emitter, Type type, SymbolTable symbolTable) { 1.11 +8 -8 xml-axis/java/src/org/apache/axis/wsdl/JavaWriterFactory.java Index: JavaWriterFactory.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/JavaWriterFactory.java,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- JavaWriterFactory.java 2001/11/30 22:14:36 1.10 +++ JavaWriterFactory.java 2001/12/04 19:34:56 1.11 @@ -303,27 +303,27 @@ boolean needComma = false; for (int i = 0; i < parms.list.size(); ++i) { - Parameters.Parameter p = (Parameters.Parameter) parms.list.get(i); + Parameter p = (Parameter) parms.list.get(i); if (needComma) { signature = signature + ", "; axisSig = axisSig + ", "; - if (p.mode != Parameters.Parameter.OUT) + if (p.mode != Parameter.OUT) skelSig = skelSig + ", "; } else needComma = true; - if (p.mode == Parameters.Parameter.IN) { + if (p.mode == Parameter.IN) { signature = signature + p.type.getName() + " " + p.name; axisSig = axisSig + p.type.getName() + " " + p.name; skelSig = skelSig + p.type.getName() + " " + p.name; } - else if (p.mode == Parameters.Parameter.INOUT) { + else if (p.mode == Parameter.INOUT) { signature = signature + Utils.holder(p.type) + " " + p.name; axisSig = axisSig + Utils.holder(p.type) + " " + p.name; skelSig = skelSig + p.type.getName() + " " + p.name; } - else// (p.mode == Parameters.Parameter.OUT) + else// (p.mode == Parameter.OUT) { signature = signature + Utils.holder(p.type) + " " + p.name; axisSig = axisSig + Utils.holder(p.type) + " " + p.name; @@ -360,12 +360,12 @@ while (operations.hasNext()) { Parameters parms = (Parameters) operations.next(); for (int j = 0; j < parms.list.size(); ++j) { - Parameters.Parameter p = - (Parameters.Parameter)parms.list.get(j); + Parameter p = + (Parameter)parms.list.get(j); // If the given parameter is an inout or out parameter, then // set a HOLDER_IS_NEEDED flag using the dynamicVar design. - if (p.mode != Parameters.Parameter.IN) { + if (p.mode != Parameter.IN) { p.type.setDynamicVar( JavaTypeWriter.HOLDER_IS_NEEDED, new Boolean(true)); 1.4 +0 -22 xml-axis/java/src/org/apache/axis/wsdl/Parameters.java Index: Parameters.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/Parameters.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Parameters.java 2001/11/26 16:55:58 1.3 +++ Parameters.java 2001/12/04 19:34:56 1.4 @@ -98,26 +98,4 @@ + "\n(inputs, inouts, outputs) = (" + inputs + ", " + inouts + ", " + outputs + ")" + "\nlist = " + list; } // toString - - /** - * This class simply collects - */ - protected static class Parameter { - - // constant values for the parameter mode. - public static final byte IN = 1; - public static final byte OUT = 2; - public static final byte INOUT = 3; - - public String name; - public Type type; - public byte mode = IN; - - public String toString() { - return "(" + type + ", " + name + ", " - + (mode == IN ? "IN)" : mode == INOUT ? "INOUT)" : "OUT)"); - } // toString - } // class Parameter - - } // class Parameters 1.14 +4 -4 xml-axis/java/src/org/apache/axis/wsdl/SymbolTable.java Index: SymbolTable.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/SymbolTable.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- SymbolTable.java 2001/11/30 22:14:36 1.13 +++ SymbolTable.java 2001/12/04 19:34:56 1.14 @@ -566,7 +566,7 @@ * Add an in or inout parameter to the parameters object. */ private void addInishParm(Vector inputs, Vector outputs, int index, int outdex, Parameters parameters, boolean trimInput) { - Parameters.Parameter p = new Parameters.Parameter(); + Parameter p = new Parameter(); p.name = (String) inputs.get(index); p.type = (Type) inputs.get(index - 1); @@ -582,7 +582,7 @@ if (outdex > 0 && p.type.equals(outputs.get(outdex - 1))) { outputs.remove(outdex); outputs.remove(outdex - 1); - p.mode = Parameters.Parameter.INOUT; + p.mode = Parameter.INOUT; ++parameters.inouts; } else { @@ -595,14 +595,14 @@ * Add an output parameter to the parameters object. */ private void addOutParm(Vector outputs, int outdex, Parameters parameters, boolean trim) { - Parameters.Parameter p = new Parameters.Parameter(); + Parameter p = new Parameter(); p.name = (String) outputs.get(outdex); p.type = (Type) outputs.get(outdex - 1); if (trim) { outputs.remove(outdex); outputs.remove(outdex - 1); } - p.mode = Parameters.Parameter.OUT; + p.mode = Parameter.OUT; ++parameters.outputs; parameters.list.add(p); } // addOutParm 1.19 +1 -1 xml-axis/java/src/org/apache/axis/wsdl/Utils.java Index: Utils.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/Utils.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- Utils.java 2001/11/30 19:55:10 1.18 +++ Utils.java 2001/12/04 19:34:56 1.19 @@ -489,7 +489,7 @@ /** * Given a type, return the Java mapping of that type's holder. */ - protected static String holder(Type type) { + public static String holder(Type type) { String typeValue = type.getName(); if (typeValue.equals("java.lang.String")) { return "javax.xml.rpc.holders.StringHolder"; 1.1 xml-axis/java/src/org/apache/axis/wsdl/Parameter.java Index: Parameter.java =================================================================== /* * The Apache Software License, Version 1.1 * * * Copyright (c) 2001 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. The end-user documentation included with the redistribution, * if any, must include the following acknowledgment: * "This product includes software developed by the * Apache Software Foundation (http://www.apache.org/)." * Alternately, this acknowledgment may appear in the software itself, * if and wherever such third-party acknowledgments normally appear. * * 4. The names "Axis" and "Apache Software Foundation" must * not be used to endorse or promote products derived from this * software without prior written permission. For written * permission, please contact apache@apache.org. * * 5. Products derived from this software may not be called "Apache", * nor may "Apache" appear in their name, without prior written * permission of the Apache Software Foundation. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * ==================================================================== * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software Foundation. For more * information on the Apache Software Foundation, please see * . */ package org.apache.axis.wsdl; import java.util.Vector; /** * This class simply collects */ public class Parameter { // constant values for the parameter mode. public static final byte IN = 1; public static final byte OUT = 2; public static final byte INOUT = 3; public String name; public Type type; public byte mode = IN; public String toString() { return "(" + type + ", " + name + ", " + (mode == IN ? "IN)" : mode == INOUT ? "INOUT)" : "OUT)"); } // toString } // class Parameter