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

📄 conditionsdescriptor.java

📁 osworkflow修改版本
💻 JAVA
字号:
/* * Copyright (c) 2002-2003 by OpenSymphony * All rights reserved. */package com.opensymphony.workflow.loader;import com.opensymphony.workflow.InvalidWorkflowDescriptorException;import com.opensymphony.workflow.util.Validatable;import com.opensymphony.workflow.util.XMLizable;import org.w3c.dom.Element;import org.w3c.dom.Node;import org.w3c.dom.NodeList;import java.io.PrintWriter;import java.util.ArrayList;import java.util.List;/** * Date: May 12, 2004 * Time: 9:04:25 AM * * @author hani */public class ConditionsDescriptor extends AbstractDescriptor implements Validatable {    //~ Instance fields ////////////////////////////////////////////////////////    private List conditions = new ArrayList();    private String type;    //~ Constructors ///////////////////////////////////////////////////////////    public ConditionsDescriptor() {    }    public ConditionsDescriptor(Element element) {        type = element.getAttribute("type");        NodeList children = element.getChildNodes();        int size = children.getLength();        for (int i = 0; i < size; i++) {            Node child = children.item(i);            if (child instanceof Element) {                if ("condition".equals(child.getNodeName())) {                    ConditionDescriptor condition = new ConditionDescriptor((Element) child);                    conditions.add(condition);                } else if ("conditions".equals(child.getNodeName())) {                    ConditionsDescriptor condition = new ConditionsDescriptor((Element) child);                    conditions.add(condition);                }            }        }    }    //~ Methods ////////////////////////////////////////////////////////////////    public void setConditions(List conditions) {        this.conditions = conditions;    }    public List getConditions() {        return conditions;    }    public void setType(String type) {        this.type = type;    }    public String getType() {        return type;    }    public void validate() throws InvalidWorkflowDescriptorException {        ValidationHelper.validate(conditions);        if ((conditions.size() > 1) && (type == null)) {            throw new InvalidWorkflowDescriptorException("Conditions must have AND or OR type specified");        }    }    public void writeXML(PrintWriter out, int indent) {        if (conditions.size() > 0) {            XMLUtil.printIndent(out, indent++);            StringBuffer sb = new StringBuffer("<conditions");            if (conditions.size() > 1) {                sb.append(" type=\"").append(type).append("\"");            }            sb.append(">");            out.println(sb.toString());            for (int i = 0; i < conditions.size(); i++) {                XMLizable condition = (XMLizable) conditions.get(i);                condition.writeXML(out, indent);            }            XMLUtil.printIndent(out, --indent);            out.println("</conditions>");        }    }}

⌨️ 快捷键说明

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