📄 returnbizatomstatement.java
字号:
package com.exp.bizatom.auto.statement;
import java.util.Vector;
import com.exp.bizatom.auto.BizAutoAtomLogic;
import com.exp.bizatom.auto.BizAutoAtomUtil;
import com.exp.bizatom.auto.FunctionStack;
import com.exp.bizatom.auto.ReturnException;
import com.exp.fcl.xml.EXPXMLNode;
/**
*
* @author Administrator <br>
* 返回语句 <br>
* 格式:<return values="待返回的变量或常量列表;中间以分号隔开"/>
*
*/
public class ReturnBizAtomStatement extends BizAtomStatement {
protected String values = "";
protected void parse(EXPXMLNode node) {
this.values = node.getAttributeValue("values");
}
public Object create() {
ReturnBizAtomStatement ret = new ReturnBizAtomStatement();
ret.values = this.values;
return ret;
}
public int execute(BizAutoAtomLogic function, int row) throws Throwable {
setReturnValues(function);
throw new ReturnException();
}
protected void setReturnValues(BizAutoAtomLogic function) {
FunctionStack stack = function.getStack();
if (!"".equals(this.values)) {
String[] values = this.values.split(";");
int len = values.length;
if (len > 1) {
Vector ret = new Vector(len);
for (int i = 0; i < len; i++) {
ret.add(BizAutoAtomUtil.getRealValue(stack, values[i]));
}
stack.setReturn(ret);
} else {
stack.setReturn(BizAutoAtomUtil
.getRealValue(stack, this.values));
}
}
}
public String getValues() {
return values;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -