⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 methodgenerator.java

📁 《精通SOA:基于服务总线的Struts+EJB+Web Service整合应用开发》原书的实例代码
💻 JAVA
字号:
package com.objectlearn.gmf.templates.session;

import java.util.*;
import com.objectlearn.lomboz.xml.lomboz.DocumentRoot;
import com.objectlearn.lomboz.xml.lomboz.SessionBean;
import com.sun.java.xml.ns.j2ee.MethodType;
import com.sun.java.xml.ns.j2ee.JavaTypeType;

public class MethodGenerator
{
  protected final String NL = System.getProperties().getProperty("line.separator");
  protected final String TEXT_1 = NL + NL + "/** " + NL + " *" + NL + " * <!-- begin-user-doc -->" + NL + " * <!-- end-user-doc -->" + NL + " *" + NL + " * <!-- begin-xdoclet-definition --> ";
  protected final String TEXT_2 = NL + " * @ejb.interface-method view-type=\"";
  protected final String TEXT_3 = "\"";
  protected final String TEXT_4 = NL + " * @ejb.home-method view-type=\"remote\"  ";
  protected final String TEXT_5 = NL + " * @ejb.home-method view-type=\"local\"  ";
  protected final String TEXT_6 = " " + NL + " * <!-- end-xdoclet-definition --> " + NL + " * @generated" + NL + " */" + NL + "public ";
  protected final String TEXT_7 = " ";
  protected final String TEXT_8 = "(";
  protected final String TEXT_9 = " ";
  protected final String TEXT_10 = " ";
  protected final String TEXT_11 = ")" + NL + "{" + NL + "\t// begin-user-code" + NL + "\t//TODO: Must provide implementation for bean method stub" + NL + "\t";
  protected final String TEXT_12 = NL + "\treturn;" + NL + "\t";
  protected final String TEXT_13 = NL + " \treturn (";
  protected final String TEXT_14 = ")0;" + NL + "\t";
  protected final String TEXT_15 = NL + " \treturn false;" + NL + "\t";
  protected final String TEXT_16 = NL + " \treturn (";
  protected final String TEXT_17 = ")null;" + NL + "\t";
  protected final String TEXT_18 = NL + "\t// end-user-code" + NL + "}";

  public String generate(Object argument)
  {
    StringBuffer stringBuffer = new StringBuffer();
     DocumentRoot root = (DocumentRoot)argument;
   SessionBean lsb = (SessionBean) root.getEjb().getSession();
   Iterator methods = lsb.getMethods().iterator();
   while (methods.hasNext()) {
	  MethodType method = (MethodType) methods.next();
	  String returnType = method.getMethodName().getId();

    stringBuffer.append(TEXT_1);
     {
String interfaceType = method.getMethodIntf().getValue();
if(interfaceType.equals("Remote") ||interfaceType.equals("Local") ||interfaceType.equals("Both") ){ 
 
    stringBuffer.append(TEXT_2);
    stringBuffer.append(method.getMethodIntf().getValue().toLowerCase() );
    stringBuffer.append(TEXT_3);
    } else if(interfaceType.equals("Home")){ 
    stringBuffer.append(TEXT_4);
    } else if(interfaceType.equals("LocalHome")){ 
    stringBuffer.append(TEXT_5);
     } }
    stringBuffer.append(TEXT_6);
    stringBuffer.append(returnType);
    stringBuffer.append(TEXT_7);
    stringBuffer.append(method.getMethodName().getValue() );
    stringBuffer.append(TEXT_8);
     Iterator params = method.getMethodParams().getMethodParam().iterator();
   while (params.hasNext()) {
	  JavaTypeType param = (JavaTypeType) params.next();

    stringBuffer.append( param.getValue() );
    stringBuffer.append(TEXT_9);
    stringBuffer.append( param.getId() );
    stringBuffer.append(TEXT_10);
    stringBuffer.append( (params.hasNext() ? "," : ""));
    }
    stringBuffer.append(TEXT_11);
     if( "void".equals(returnType) ){ 
    stringBuffer.append(TEXT_12);
     } else if( 
	           "int".equals(returnType)
	        || "long".equals(returnType)
	        || "short".equals(returnType)
	        || "byte".equals(returnType)
	        || "char".equals(returnType)
	        || "float".equals(returnType)
	        || "double".equals(returnType)
	        ){ 
    stringBuffer.append(TEXT_13);
    stringBuffer.append(returnType);
    stringBuffer.append(TEXT_14);
     } else if( "boolean".equals(returnType)     ){ 
    stringBuffer.append(TEXT_15);
     } else { 
    stringBuffer.append(TEXT_16);
    stringBuffer.append(returnType);
    stringBuffer.append(TEXT_17);
    }
    stringBuffer.append(TEXT_18);
     

}

    return stringBuffer.toString();
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -