Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.jst.ws.axis.consumption.ui/src/org/eclipse/jst/ws/internal/axis/consumption/ui/task/Stub2BeanInfo.java')
-rw-r--r--bundles/org.eclipse.jst.ws.axis.consumption.ui/src/org/eclipse/jst/ws/internal/axis/consumption/ui/task/Stub2BeanInfo.java605
1 files changed, 0 insertions, 605 deletions
diff --git a/bundles/org.eclipse.jst.ws.axis.consumption.ui/src/org/eclipse/jst/ws/internal/axis/consumption/ui/task/Stub2BeanInfo.java b/bundles/org.eclipse.jst.ws.axis.consumption.ui/src/org/eclipse/jst/ws/internal/axis/consumption/ui/task/Stub2BeanInfo.java
deleted file mode 100644
index d752600fe..000000000
--- a/bundles/org.eclipse.jst.ws.axis.consumption.ui/src/org/eclipse/jst/ws/internal/axis/consumption/ui/task/Stub2BeanInfo.java
+++ /dev/null
@@ -1,605 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- * yyyymmdd bug Email and other contact information
- * -------- -------- -----------------------------------------------------------
- * 20060216 115144 pmoogk@ca.ibm.com - Peter Moogk
- * 20060216 127138 pmoogk@ca.ibm.com - Peter Moogk
- * 20060517 141481 pmoogk@ca.ibm.com - Peter Moogk
- *******************************************************************************/
-
-package org.eclipse.jst.ws.internal.axis.consumption.ui.task;
-
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.StringWriter;
-import java.io.Writer;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jem.java.JavaClass;
-import org.eclipse.jem.java.JavaHelpers;
-import org.eclipse.jem.java.JavaParameter;
-import org.eclipse.jem.java.JavaVisibilityKind;
-import org.eclipse.jem.java.Method;
-import org.eclipse.jst.ws.internal.common.JavaMOFUtils;
-import org.eclipse.jst.ws.internal.common.ResourceUtils;
-import org.eclipse.jst.ws.internal.plugin.WebServicePlugin;
-import org.eclipse.wst.command.internal.env.common.FileResourceUtils;
-import org.eclipse.wst.common.environment.IStatusHandler;
-import com.ibm.icu.util.StringTokenizer;
-
-public class Stub2BeanInfo
-{
- private final String NEW_LINE = System.getProperty("line.separator");
-
- private int indentCount;
-
- private String package_;
- private StringBuffer imports_;
- private StringBuffer seis_;
- private StringBuffer services_;
- private StringBuffer jndiNames_;
- private StringBuffer ports_;
- private String class_;
- private Vector usedNames;
-
- private IProject clientProject_;
- private String outputFolder_;
-
- public Stub2BeanInfo()
- {
- indentCount = 0;
- package_ = null;
- imports_ = new StringBuffer();
- seis_ = new StringBuffer();
- services_ = new StringBuffer();
- jndiNames_ = new StringBuffer();
- ports_ = new StringBuffer();
- class_ = "SEIBean";
- usedNames = new Vector();
- }
-
- public void setClientProject(IProject clientProject) {
- this.clientProject_ = clientProject;
- }
-
- public void setOutputFolder( String outputFolder )
- {
- outputFolder_ = outputFolder;
- }
-
- public void setPackage(String pkgName)
- {
- package_ = pkgName;
- }
-
- public void addImports(String pkgName, String className)
- {
- imports_.append(toFullyQualifiedClassName(pkgName, className));
- imports_.append(";");
- }
-
- public void addSEI(String seiPkgName, String seiClassName, String servicePkgName, String serviceClassName, String portName)
- {
- addSEI(seiPkgName, seiClassName, servicePkgName, serviceClassName, serviceClassName, portName);
- }
-
- public void addSEI(String seiPkgName, String seiClassName, String servicePkgName, String serviceClassName, String jndiName, String portName)
- {
- seis_.append(toFullyQualifiedClassName(seiPkgName, seiClassName));
- seis_.append(";");
- services_.append(toFullyQualifiedClassName(servicePkgName, serviceClassName));
- services_.append(";");
- jndiNames_.append(jndiName);
- jndiNames_.append(";");
- ports_.append(portName);
- ports_.append(";");
- }
-
- public void setClass(String className)
- {
- class_ = className;
- }
-
- private String toFullyQualifiedClassName(String pkgName, String className)
- {
- StringBuffer sb = new StringBuffer();
- sb.append(pkgName);
- sb.append(".");
- sb.append(className);
- return sb.toString();
- }
-
- private String getPackageName(String qname)
- {
- int index = qname.lastIndexOf(".");
- if (index != -1)
- return qname.substring(0, index);
- else
- return qname;
- }
-
- private String getClassName(String qname)
- {
- int index = qname.lastIndexOf(".");
- if (index != -1)
- return qname.substring(index+1, qname.length());
- else
- return qname;
- }
-
- private String firstCharToLowerCase(String s)
- {
- StringBuffer sb = new StringBuffer();
- sb.append(s.substring(0, 1).toLowerCase());
- sb.append(s.substring(1, s.length()));
- return sb.toString();
- }
-
- private String getFullyQualifiedName(JavaHelpers javaHelpers)
- {
- if (javaHelpers.isPrimitive())
- return javaHelpers.getJavaName();
- else
- return javaHelpers.getQualifiedName();
- }
-
- public void write(IProgressMonitor progressMonitor, IStatusHandler statusMonitor) throws CoreException, IOException
- {
- IPath outputPath = new Path( outputFolder_ );
- IProject project = ResourceUtils.getProjectOf( outputPath );
- StringWriter sw = new StringWriter(2048);
-
- writePackage(sw);
- writeImports(sw);
- writeClass(sw);
- sw.close();
- byte[] bytes = sw.getBuffer().toString().getBytes( project.getDefaultCharset() );
- StringBuffer sb = new StringBuffer();
- if (package_ != null && package_.length() > 0)
- {
- sb.append(package_);
- sb.append(".");
- }
- sb.append(class_);
- sb = new StringBuffer(sb.toString().replace('.', '/'));
- sb.append(".java");
-
- ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
-
- IPath newFilePath = new Path(outputFolder_).append( sb.toString() );
-
- FileResourceUtils.createFile(WebServicePlugin.getInstance().getResourceContext(), newFilePath, bais, progressMonitor, statusMonitor);
- }
-
- private void writePackage(Writer w) throws IOException
- {
- if (package_ != null && package_.length() > 0)
- {
- w.write("package ");
- w.write(package_);
- w.write(";");
- newLine(w);
- }
- }
-
- private void writeImports(Writer w) throws IOException
- {
- StringTokenizer st = new StringTokenizer(imports_.toString(), ";");
- while (st.hasMoreTokens())
- {
- w.write("import ");
- w.write(st.nextToken());
- w.write(";");
- newLine(w);
- }
- }
-
- private void writeClass(Writer w) throws IOException, CoreException
- {
- newLine(w);
- w.write("public class ");
- w.write(class_);
- w.write(" ");
- StringTokenizer st = new StringTokenizer(seis_.toString(), ";");
- if (st.hasMoreTokens())
- w.write("implements ");
- while (st.hasMoreTokens())
- {
- w.write(st.nextToken());
- if (st.hasMoreTokens())
- w.write(", ");
- }
- w.write(" {");
- incrementIndent();
- newLine(w);
- writeFieldsDeclarations(w);
- writeConstructor(w);
- writeInit(w);
- /*
- * Cannot use JNDI lookup for AXIS
- *
- writeUseJNDI(w);
- */
- writeGetSetEndpoint(w);
- writeSEIGetters(w);
- writeSEIMethods(w);
- decrementIndent();
- newLine(w);
- w.write("}");
- }
-
- private void writeFieldsDeclarations(Writer w) throws IOException
- {
- /*
- * Cannot use JNDI lookup for AXIS
- *
- w.write("private boolean _useJNDI = true;");
- newLine(w);
- */
- w.write("private String _endpoint = null;");
- usedNames.add("_endpoint");
- newLine(w);
- StringTokenizer st = new StringTokenizer(seis_.toString(), ";");
- while (st.hasMoreTokens())
- {
- w.write("private ");
- String sei = st.nextToken();
- w.write(sei);
- w.write(" ");
- String stubName = firstCharToLowerCase(getClassName(sei));
- w.write(stubName);
- usedNames.add(stubName);
- w.write(" = null;");
- newLine(w);
- }
- }
-
- private void writeConstructor(Writer w) throws IOException
- {
- newLine(w);
- w.write("public ");
- w.write(class_);
- w.write("() {");
- incrementIndent();
- newLine(w);
- w.write("_init");
- w.write(class_);
- w.write("();");
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- }
-
- private void writeInit(Writer w) throws IOException
- {
- newLine(w);
- w.write("private void _init");
- w.write(class_);
- w.write("() {");
- incrementIndent();
- newLine(w);
- w.write("try {");
- incrementIndent();
- newLine(w);
- /*
- * Cannot use JNDI lookup for AXIS
- *
- w.write("if (_useJNDI) {");
- incrementIndent();
- newLine(w);
- */
- StringTokenizer st = new StringTokenizer(seis_.toString(), ";");
- StringTokenizer serviceTokens = new StringTokenizer(services_.toString(), ";");
- //StringTokenizer jndiNameTokens = new StringTokenizer(jndiNames_.toString(), ";");
- StringTokenizer portTokens = new StringTokenizer(ports_.toString(), ";");
- /*
- if (st.hasMoreTokens())
- {
- w.write("javax.naming.InitialContext ctx = new javax.naming.InitialContext();");
- newLine(w);
- }
- while (st.hasMoreTokens())
- {
- w.write(firstCharToLowerCase(getClassName(st.nextToken())));
- w.write(" = ((");
- w.write(serviceTokens.nextToken());
- w.write(")ctx.lookup(\"java:comp/env/service/");
- w.write(jndiNameTokens.nextToken());
- w.write("\")).get");
- w.write(mangleClassName(portTokens.nextToken()));
- w.write("();");
- newLine(w);
- }
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- w.write("else {");
- incrementIndent();
- newLine(w);
- st = new StringTokenizer(seis_.toString(), ";");
- serviceTokens = new StringTokenizer(services_.toString(), ";");
- portTokens = new StringTokenizer(ports_.toString(), ";");
- */
- while (st.hasMoreTokens())
- {
- String seiName = firstCharToLowerCase(getClassName(st.nextToken()));
- w.write(seiName);
- w.write(" = (new ");
- w.write(serviceTokens.nextToken());
- w.write("Locator()).get");
- w.write(portTokens.nextToken());
- w.write("();");
- newLine(w);
- w.write("if (");
- w.write(seiName);
- w.write(" != null) {");
- incrementIndent();
- newLine(w);
- w.write("if (_endpoint != null)");
- incrementIndent();
- newLine(w);
- w.write("((javax.xml.rpc.Stub)");
- w.write(seiName);
- w.write(")._setProperty(\"javax.xml.rpc.service.endpoint.address\", _endpoint);");
- decrementIndent();
- newLine(w);
- w.write("else");
- incrementIndent();
- newLine(w);
- w.write("_endpoint = (String)((javax.xml.rpc.Stub)");
- w.write(seiName);
- w.write(")._getProperty(\"javax.xml.rpc.service.endpoint.address\");");
- decrementIndent();
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- }
- /*
- decrementIndent();
- newLine(w);
- w.write("}");
- */
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- /*
- w.write("catch (javax.naming.NamingException namingException) {}");
- newLine(w);
- */
- w.write("catch (javax.xml.rpc.ServiceException serviceException) {}");
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- }
-
- private void writeSetPropertyEndpoint(Writer w) throws IOException
- {
- StringTokenizer st = new StringTokenizer(seis_.toString(), ";");
- while (st.hasMoreTokens())
- {
- String seiName = firstCharToLowerCase(getClassName(st.nextToken()));
- w.write("if (");
- w.write(seiName);
- w.write(" != null)");
- incrementIndent();
- newLine(w);
- w.write("((javax.xml.rpc.Stub)");
- w.write(seiName);
- w.write(")._setProperty(\"javax.xml.rpc.service.endpoint.address\", _endpoint);");
- decrementIndent();
- newLine(w);
- }
- }
-
-
- private void writeSEIGetters(Writer w) throws IOException
- {
- StringTokenizer st = new StringTokenizer(seis_.toString(), ";");
- while (st.hasMoreTokens())
- {
- String sei = st.nextToken();
- String seiClassName = getClassName(sei);
- String seiFieldName = firstCharToLowerCase(seiClassName);
- newLine(w);
- w.write("public ");
- w.write(sei);
- w.write(" get");
- w.write(seiClassName);
- w.write("() {");
- incrementIndent();
- newLine(w);
- w.write("if (");
- w.write(seiFieldName);
- w.write(" == null)");
- incrementIndent();
- newLine(w);
- w.write("_init");
- w.write(class_);
- w.write("();");
- decrementIndent();
- newLine(w);
- w.write("return ");
- w.write(seiFieldName);
- w.write(";");
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- }
- }
-
- private void writeSEIMethods(Writer w) throws IOException, CoreException
- {
- newLine(w);
- //WebServiceElement wse = WebServiceElement.getWebServiceElement(model_);
- if (clientProject_ == null) return;//wse.getProxyProject();
- StringTokenizer st = new StringTokenizer(seis_.toString(), ";");
- while (st.hasMoreTokens())
- {
- String sei = st.nextToken();
- JavaClass javaClass = JavaMOFUtils.getJavaClass(getPackageName(sei), getClassName(sei), clientProject_);
- if (javaClass != null)
- {
- List methods = javaClass.getMethods();
- for (Iterator it = methods.iterator(); it.hasNext();)
- {
- Method method = (Method)it.next();
- if (!method.isConstructor() && !method.isNative() && method.getJavaVisibility().getValue() == JavaVisibilityKind.PUBLIC)
- writeSEIMethods(w, javaClass, method);
- }
- }
- }
- }
-
- private void writeSEIMethods(Writer w, JavaClass javaClass, Method method) throws IOException
- {
- w.write("public ");
- // isVoid
- if (method.isVoid())
- w.write("void ");
- else
- {
- w.write(getFullyQualifiedName(method.getReturnType()));
- w.write(" ");
- }
- // method name
- w.write(method.getName());
- w.write("(");
- // input parameters
- JavaParameter[] inputParams = method.listParametersWithoutReturn();
- for (int i = 0; i < inputParams.length; i++)
- {
- if (i > 0)
- w.write(", ");
- JavaHelpers javaHelpers = inputParams[i].getJavaType();
- w.write(getFullyQualifiedName(javaHelpers));
- w.write(" ");
- String paramName = getClassName(inputParams[i].getQualifiedName());
- w.write(getUnusedName(paramName));
- }
- w.write(")");
- // exceptions
- List exceptions = method.getJavaExceptions();
- if (!exceptions.isEmpty())
- w.write(" throws ");
- for (Iterator it = exceptions.iterator(); it.hasNext();)
- {
- JavaClass exception = (JavaClass)it.next();
- w.write(exception.getQualifiedNameForReflection());
- if (it.hasNext())
- w.write(", ");
- }
- // method body
- w.write("{");
- incrementIndent();
- newLine(w);
- String stubName = firstCharToLowerCase(javaClass.getName());
- w.write("if (");
- w.write(stubName);
- w.write(" == null)");
- incrementIndent();
- newLine(w);
- w.write("_init");
- w.write(class_);
- w.write("();");
- decrementIndent();
- newLine(w);
- if (!method.isVoid())
- w.write("return ");
- w.write(stubName);
- w.write(".");
- w.write(method.getName());
- w.write("(");
- for (int i = 0; i < inputParams.length; i++)
- {
- if (i > 0)
- w.write(", ");
- String paramName = getClassName(inputParams[i].getQualifiedName());
- w.write(getUnusedName(paramName));
- }
- w.write(");");
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- newLine(w);
- }
-
- private void writeGetSetEndpoint(Writer w) throws IOException
- {
- newLine(w);
- w.write("public String getEndpoint() {");
- incrementIndent();
- newLine(w);
- w.write("return _endpoint;");
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- newLine(w);
- w.write("public void setEndpoint(String endpoint) {");
- incrementIndent();
- newLine(w);
- w.write("_endpoint = endpoint;");
- newLine(w);
- writeSetPropertyEndpoint(w);
- decrementIndent();
- newLine(w);
- w.write("}");
- newLine(w);
- }
-
- private void incrementIndent()
- {
- indentCount++;
- }
-
- private void decrementIndent()
- {
- indentCount--;
- }
-
- private void indent(Writer w) throws IOException
- {
- for (int i = 0; i < indentCount; i++)
- w.write(" ");
- }
-
- private void newLine(Writer w) throws IOException
- {
- w.write(NEW_LINE);
- indent(w);
- }
-
- private String getUnusedName(String name)
- {
- if (usedNames.contains(name))
- {
- for (int i = 0; i < 100; i++)
- {
- String newName = (new StringBuffer(name)).append(String.valueOf(i)).toString();
- if (!usedNames.contains(newName))
- return newName;
- }
- }
- return name;
- }
-}

Back to the top