📄 staxterminateaction.java
字号:
/*****************************************************************************//* Software Testing Automation Framework (STAF) *//* (C) Copyright IBM Corp. 2002 *//* *//* This software is licensed under the Common Public License (CPL) V1.0. *//*****************************************************************************/package com.ibm.staf.service.stax;import java.util.TreeMap;public class STAXTerminateAction implements STAXAction{ private STAXTerminateAction() { /* Do Nothing */ } public STAXTerminateAction(String blockName) { fUnevalBlockName = blockName; fBlockName = blockName; } public STAXTerminateAction(String blockName, String ifAttr) { fUnevalBlockName = blockName; fBlockName = blockName; fUnevalIf = ifAttr; } public String getXMLInfo() { String info = "<terminate"; if (fUnevalBlockName != null) info += " block=\"" + fBlockName + "\""; if (!fUnevalIf.equals("1")) info += " if=\"" + fUnevalIf + "\""; info += "/>"; return info; } public String getInfo() { return fBlockName; } public String getDetails() { return "BlockName:" + fBlockName; } public void execute(STAXThread thread) { thread.popAction(); try { fIf = thread.pyBoolEval(fUnevalIf); if (!fIf) { // Ignore terminate if "if" attribute evaluates to FALSE return; } if (fUnevalBlockName == null) fBlockName = thread.pyStringEval("STAXCurrentBlock"); else fBlockName = thread.pyStringEval(fUnevalBlockName); } catch (STAXPythonEvaluationException e) { thread.setSignalMsgVar("STAXPythonEvalMsg", getXMLInfo(), e); thread.raiseSignal("STAXPythonEvaluationError"); return; } TreeMap blockMap = (TreeMap)thread.getJob().getData("blockMap"); if (!blockMap.containsKey(fBlockName)) { thread.setSignalMsgVar("STAXBlockDoesNotExistMsg", getXMLInfo()); thread.raiseSignal("STAXBlockDoesNotExist"); } else { STAXBlockAction theBlock = (STAXBlockAction)blockMap.get(fBlockName); theBlock.terminateBlock(); } } public void handleCondition(STAXThread thread, STAXCondition cond) { thread.popAction(); } public STAXAction cloneAction() { STAXTerminateAction clone = new STAXTerminateAction(); clone.fUnevalBlockName = fUnevalBlockName; clone.fBlockName = fBlockName; clone.fUnevalIf = fUnevalIf; clone.fIf = fIf; return clone; } private String fUnevalBlockName = null; private String fBlockName = new String(); private String fUnevalIf = "1"; private boolean fIf = true;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -