亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? workflowdescriptor.java

?? Java編譯osworkflow工作流系統的安裝和源代碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
            StepDescriptor step = (StepDescriptor) i.next();            Iterator j = step.getActions().iterator();            while (j.hasNext()) {                ActionDescriptor action = (ActionDescriptor) j.next();                // check to see if it's a common action (dups are ok, since that's the point of common actions!)                if (!action.isCommon()) {                    if (!actions.add(new Integer(action.getId()))) {                        throw new InvalidWorkflowDescriptorException("Duplicate occurance of action ID " + action.getId() + " found in step " + step.getId());                    }                }            }        }        //now we have all our unique actions, let's check that no common action id's exist in them        i = commonActions.keySet().iterator();        while (i.hasNext()) {            Integer action = (Integer) i.next();            if (actions.contains(action)) {                throw new InvalidWorkflowDescriptorException("common-action ID " + action + " is duplicated in a step action");            }        }        i = initialActions.iterator();        while (i.hasNext()) {            ActionDescriptor action = (ActionDescriptor) i.next();            if (actions.contains(new Integer(action.getId()))) {                throw new InvalidWorkflowDescriptorException("initial-action ID " + action + " is duplicated in a step action");            }        }        validateDTD();    }    public void writeXML(PrintWriter out, int indent) {        XMLUtil.printIndent(out, indent++);        out.println("<workflow>");        Iterator iter = metaAttributes.entrySet().iterator();        while (iter.hasNext()) {            Map.Entry entry = (Map.Entry) iter.next();            XMLUtil.printIndent(out, indent);            out.print("<meta name=\"");            out.print(XMLUtil.encode(entry.getKey()));            out.print("\">");            out.print(XMLUtil.encode(entry.getValue()));            out.println("</meta>");        }        if (registers.size() > 0) {            XMLUtil.printIndent(out, indent++);            out.println("<registers>");            for (int i = 0; i < registers.size(); i++) {                RegisterDescriptor register = (RegisterDescriptor) registers.get(i);                register.writeXML(out, indent);            }            XMLUtil.printIndent(out, --indent);            out.println("</registers>");        }        if (timerFunctions.size() > 0) {            XMLUtil.printIndent(out, indent++);            out.println("<trigger-functions>");            Iterator iterator = timerFunctions.entrySet().iterator();            while (iterator.hasNext()) {                Map.Entry entry = (Map.Entry) iterator.next();                XMLUtil.printIndent(out, indent++);                out.println("<trigger-function id=\"" + entry.getKey() + "\">");                FunctionDescriptor trigger = (FunctionDescriptor) entry.getValue();                trigger.writeXML(out, indent);                XMLUtil.printIndent(out, --indent);                out.println("</trigger-function>");            }            while (iterator.hasNext()) {            }            XMLUtil.printIndent(out, --indent);            out.println("</trigger-functions>");        }        if (getGlobalConditions() != null) {            XMLUtil.printIndent(out, indent++);            out.println("<global-conditions>");            getGlobalConditions().writeXML(out, indent);            out.println("</global-conditions>");        }        XMLUtil.printIndent(out, indent++);        out.println("<initial-actions>");        for (int i = 0; i < initialActions.size(); i++) {            ActionDescriptor action = (ActionDescriptor) initialActions.get(i);            action.writeXML(out, indent);        }        XMLUtil.printIndent(out, --indent);        out.println("</initial-actions>");        if (globalActions.size() > 0) {            XMLUtil.printIndent(out, indent++);            out.println("<global-actions>");            for (int i = 0; i < globalActions.size(); i++) {                ActionDescriptor action = (ActionDescriptor) globalActions.get(i);                action.writeXML(out, indent);            }            XMLUtil.printIndent(out, --indent);            out.println("</global-actions>");        }        if (commonActions.size() > 0) {            XMLUtil.printIndent(out, indent++);            out.println("<common-actions>");            Iterator iterator = getCommonActions().values().iterator();            while (iterator.hasNext()) {                ActionDescriptor action = (ActionDescriptor) iterator.next();                action.writeXML(out, indent);            }            XMLUtil.printIndent(out, --indent);            out.println("</common-actions>");        }        XMLUtil.printIndent(out, indent++);        out.println("<steps>");        for (int i = 0; i < steps.size(); i++) {            StepDescriptor step = (StepDescriptor) steps.get(i);            step.writeXML(out, indent);        }        XMLUtil.printIndent(out, --indent);        out.println("</steps>");        if (splits.size() > 0) {            XMLUtil.printIndent(out, indent++);            out.println("<splits>");            for (int i = 0; i < splits.size(); i++) {                SplitDescriptor split = (SplitDescriptor) splits.get(i);                split.writeXML(out, indent);            }            XMLUtil.printIndent(out, --indent);            out.println("</splits>");        }        if (joins.size() > 0) {            XMLUtil.printIndent(out, indent++);            out.println("<joins>");            for (int i = 0; i < joins.size(); i++) {                JoinDescriptor join = (JoinDescriptor) joins.get(i);                join.writeXML(out, indent);            }            XMLUtil.printIndent(out, --indent);            out.println("</joins>");        }        XMLUtil.printIndent(out, --indent);        out.println("</workflow>");    }    protected void init(Element root) {        NodeList children = root.getChildNodes();        for (int i = 0; i < children.getLength(); i++) {            Node child = children.item(i);            if (child.getNodeName().equals("meta")) {                Element meta = (Element) child;                String value = XMLUtil.getText(meta);                this.metaAttributes.put(meta.getAttribute("name"), value);            }        }        // handle registers - OPTIONAL        Element r = XMLUtil.getChildElement(root, "registers");        if (r != null) {            List registers = XMLUtil.getChildElements(r, "register");            for (int i = 0; i < registers.size(); i++) {                Element register = (Element) registers.get(i);                RegisterDescriptor registerDescriptor = DescriptorFactory.getFactory().createRegisterDescriptor(register);                registerDescriptor.setParent(this);                this.registers.add(registerDescriptor);            }        }        // handle global-conditions - OPTIONAL        Element globalConditionsElement = XMLUtil.getChildElement(root, "global-conditions");        if (globalConditionsElement != null) {            Element globalConditions = XMLUtil.getChildElement(globalConditionsElement, "conditions");            ConditionsDescriptor conditionsDescriptor = DescriptorFactory.getFactory().createConditionsDescriptor(globalConditions);            conditionsDescriptor.setParent(this);            this.globalConditions = conditionsDescriptor;        }        // handle initial-steps - REQUIRED        Element intialActionsElement = XMLUtil.getChildElement(root, "initial-actions");        List initialActions = XMLUtil.getChildElements(intialActionsElement, "action");        for (int i = 0; i < initialActions.size(); i++) {            Element initialAction = (Element) initialActions.get(i);            ActionDescriptor actionDescriptor = DescriptorFactory.getFactory().createActionDescriptor(initialAction);            actionDescriptor.setParent(this);            this.initialActions.add(actionDescriptor);        }        // handle global-actions - OPTIONAL        Element globalActionsElement = XMLUtil.getChildElement(root, "global-actions");        if (globalActionsElement != null) {            List globalActions = XMLUtil.getChildElements(globalActionsElement, "action");            for (int i = 0; i < globalActions.size(); i++) {                Element globalAction = (Element) globalActions.get(i);                ActionDescriptor actionDescriptor = DescriptorFactory.getFactory().createActionDescriptor(globalAction);                actionDescriptor.setParent(this);                this.globalActions.add(actionDescriptor);            }        }        // handle common-actions - OPTIONAL        //   - Store actions in HashMap for now. When parsing Steps, we'll resolve        //      any common actions into local references.        Element commonActionsElement = XMLUtil.getChildElement(root, "common-actions");        if (commonActionsElement != null) {            List commonActions = XMLUtil.getChildElements(commonActionsElement, "action");            for (int i = 0; i < commonActions.size(); i++) {                Element commonAction = (Element) commonActions.get(i);                ActionDescriptor actionDescriptor = DescriptorFactory.getFactory().createActionDescriptor(commonAction);                actionDescriptor.setParent(this);                addCommonAction(actionDescriptor);            }        }        // handle timer-functions - OPTIONAL        Element timerFunctionsElement = XMLUtil.getChildElement(root, "trigger-functions");        if (timerFunctionsElement != null) {            List timerFunctions = XMLUtil.getChildElements(timerFunctionsElement, "trigger-function");            for (int i = 0; i < timerFunctions.size(); i++) {                Element timerFunction = (Element) timerFunctions.get(i);                Integer id = new Integer(timerFunction.getAttribute("id"));                FunctionDescriptor function = DescriptorFactory.getFactory().createFunctionDescriptor(XMLUtil.getChildElement(timerFunction, "function"));                function.setParent(this);                this.timerFunctions.put(id, function);            }        }        // handle steps - REQUIRED        Element stepsElement = XMLUtil.getChildElement(root, "steps");        List steps = XMLUtil.getChildElements(stepsElement, "step");        for (int i = 0; i < steps.size(); i++) {            Element step = (Element) steps.get(i);            StepDescriptor stepDescriptor = DescriptorFactory.getFactory().createStepDescriptor(step, this);            this.steps.add(stepDescriptor);        }        // handle splits - OPTIONAL        Element splitsElement = XMLUtil.getChildElement(root, "splits");        if (splitsElement != null) {            List split = XMLUtil.getChildElements(splitsElement, "split");            for (int i = 0; i < split.size(); i++) {                Element s = (Element) split.get(i);                SplitDescriptor splitDescriptor = DescriptorFactory.getFactory().createSplitDescriptor(s);                splitDescriptor.setParent(this);                this.splits.add(splitDescriptor);            }        }        // handle joins - OPTIONAL:        Element joinsElement = XMLUtil.getChildElement(root, "joins");        if (joinsElement != null) {            List join = XMLUtil.getChildElements(joinsElement, "join");            for (int i = 0; i < join.size(); i++) {                Element s = (Element) join.get(i);                JoinDescriptor joinDescriptor = DescriptorFactory.getFactory().createJoinDescriptor(s);                joinDescriptor.setParent(this);                this.joins.add(joinDescriptor);            }        }    }    // refactored this out from the three addAction methods above    private void addAction(Object actionsCollectionOrMap, ActionDescriptor descriptor) {        if (getAction(descriptor.getId()) != null) {            throw new IllegalArgumentException("action with id " + descriptor.getId() + " already exists for this step.");        }        if (actionsCollectionOrMap instanceof Map) {            ((Map) actionsCollectionOrMap).put(new Integer(descriptor.getId()), descriptor);        } else {            ((Collection) actionsCollectionOrMap).add(descriptor);        }    }    private void validateDTD() throws InvalidWorkflowDescriptorException {        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();        dbf.setNamespaceAware(true);        dbf.setValidating(true);        StringWriter sw = new StringWriter();        PrintWriter writer = new PrintWriter(sw);        writer.println(XML_HEADER);        writer.println(DOCTYPE_DECL);        writeXML(writer, 0);        WorkflowLoader.AllExceptionsErrorHandler errorHandler = new WorkflowLoader.AllExceptionsErrorHandler();        try {            DocumentBuilder db = dbf.newDocumentBuilder();            db.setEntityResolver(new DTDEntityResolver());            db.setErrorHandler(errorHandler);            db.parse(new InputSource(new StringReader(sw.toString())));            if (errorHandler.getExceptions().size() > 0) {                throw new InvalidWorkflowDescriptorException(errorHandler.getExceptions().toString());            }        } catch (InvalidWorkflowDescriptorException e) {            throw e;        } catch (Exception e) {            throw new InvalidWorkflowDescriptorException(e.toString());        }    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人黄色在线视频| 亚洲国产aⅴ成人精品无吗| 久久精品亚洲一区二区三区浴池| 欧美裸体一区二区三区| 欧美午夜免费电影| 亚洲精品在线观| 亚洲精品国产无天堂网2021| 日韩高清不卡一区| 成人国产免费视频| 日韩午夜精品视频| 亚洲激情在线播放| 国产一区二区三区综合| 欧美在线999| 亚洲欧美视频在线观看视频| 丝袜亚洲精品中文字幕一区| 99久久综合99久久综合网站| 久久亚洲欧美国产精品乐播 | 亚洲三级在线播放| 国产一区二区三区日韩| 欧美群妇大交群中文字幕| 欧美国产视频在线| 国产福利一区在线| 精品国产欧美一区二区| 一区二区三区在线视频播放| 麻豆视频观看网址久久| 国产99精品国产| 欧美视频日韩视频在线观看| 亚洲国产精品t66y| 免费不卡在线视频| 在线综合视频播放| 亚洲人成在线观看一区二区| 亚洲综合丝袜美腿| 色88888久久久久久影院按摩| 欧美精品一区二区三区视频| 国产精品的网站| 成人av在线资源网站| 国产午夜精品一区二区三区视频| 亚洲一级片在线观看| 在线观看三级视频欧美| 亚洲欧美日韩在线不卡| 麻豆成人久久精品二区三区红 | 日韩一区二区三区电影| 日本最新不卡在线| 久久免费午夜影院| 99久久综合99久久综合网站| 一区二区三区四区在线免费观看| 91福利小视频| 亚洲一区免费视频| 精品国产一区二区三区av性色| 亚洲女同女同女同女同女同69| 99久久久久免费精品国产| 亚洲激情图片小说视频| 欧美日韩久久久一区| 国产 欧美在线| 首页亚洲欧美制服丝腿| 国产精品久久777777| 日韩欧美国产系列| 91麻豆免费看| 日韩午夜中文字幕| 亚洲激情av在线| 国产欧美一区二区在线| 欧美中文字幕一二三区视频| 一区二区三区久久| 国产精品婷婷午夜在线观看| 欧美裸体一区二区三区| 99久久综合精品| 成人在线一区二区三区| 国产一区在线看| 久久99蜜桃精品| 亚洲日本va在线观看| 国产亚洲精品7777| 亚洲精品一区二区三区影院| 精品视频全国免费看| 91国偷自产一区二区使用方法| 国产成人免费9x9x人网站视频| 亚洲乱码一区二区三区在线观看| 亚洲国产精品成人综合| 国产日韩精品一区| 中文字幕在线不卡国产视频| 欧美国产综合一区二区| 国产精品久久久久久久第一福利| 精品成人一区二区三区四区| 精品少妇一区二区三区视频免付费 | 本田岬高潮一区二区三区| 国产精品一区免费视频| 亚洲一区二区精品久久av| 亚洲成av人**亚洲成av**| 午夜精品久久久久影视| 理论电影国产精品| 91欧美一区二区| 欧美日韩一区二区三区四区五区| 91麻豆精品国产无毒不卡在线观看| 91麻豆精品久久久久蜜臀| 91精品在线一区二区| 久久久久久久综合日本| 亚洲国产日韩在线一区模特| 国产主播一区二区三区| 久久99热狠狠色一区二区| 色八戒一区二区三区| 久久女同性恋中文字幕| 伊人婷婷欧美激情| 轻轻草成人在线| 欧美午夜视频网站| 亚洲素人一区二区| av在线一区二区| 五月综合激情日本mⅴ| 五月婷婷综合网| 国产mv日韩mv欧美| 欧美一级理论片| 久久精子c满五个校花| 亚洲卡通欧美制服中文| 国产福利91精品| 欧美一卡二卡在线观看| 亚洲一区日韩精品中文字幕| 另类人妖一区二区av| 精品1区2区在线观看| 久久99日本精品| 日韩欧美中文一区| 理论电影国产精品| 久久精品人人做人人爽人人| 日韩伦理av电影| 成人自拍视频在线| 亚洲精品免费电影| 欧美亚州韩日在线看免费版国语版| 国产亚洲美州欧州综合国| 丁香一区二区三区| 久久午夜羞羞影院免费观看| 久久99精品久久久久久国产越南| 777欧美精品| 国产麻豆91精品| 亚洲少妇中出一区| 成人aaaa免费全部观看| 亚洲自拍偷拍麻豆| 91精品国产欧美一区二区18| 日本女优在线视频一区二区| 精品国产一区二区亚洲人成毛片 | 99久久久久久| 一区二区三区免费看视频| 在线观看日产精品| 福利一区二区在线观看| 国产精品超碰97尤物18| 欧美视频精品在线观看| 在线观看中文字幕不卡| 韩国精品免费视频| 男女男精品网站| 久久精品国产一区二区三区免费看| 中文字幕一区二区三区四区| 久久久久国产精品麻豆ai换脸| 91麻豆精品国产无毒不卡在线观看| 欧美三级日韩三级国产三级| 色婷婷av一区二区三区gif| 色噜噜狠狠一区二区三区果冻| 91在线精品秘密一区二区| 99精品国产99久久久久久白柏| 久久国产精品第一页| 国产精品一区二区在线观看不卡| 一区二区三区欧美| 蜜桃视频在线观看一区二区| 老司机精品视频在线| 国产乱色国产精品免费视频| 国产**成人网毛片九色 | 精品亚洲porn| 色婷婷亚洲婷婷| 久久亚洲一区二区三区明星换脸| 日本一区二区免费在线观看视频 | 国产午夜一区二区三区| 亚洲三级电影全部在线观看高清| 亚洲永久免费视频| 国产成人激情av| 欧美三级视频在线| 中文字幕免费在线观看视频一区| 亚洲女女做受ⅹxx高潮| 免费在线欧美视频| 色中色一区二区| 国产精品人成在线观看免费| 日本不卡视频一二三区| 99精品热视频| 国产欧美日韩激情| 国产一区二区三区免费| 日韩亚洲欧美中文三级| 婷婷综合另类小说色区| 欧美写真视频网站| 亚洲一区二区三区国产| 国产成人精品三级麻豆| 国产日韩欧美高清| 成人a免费在线看| 国产精品电影院| 99久久精品国产观看| 中文字幕乱码亚洲精品一区 | 一区二区三区在线免费播放| 91在线小视频| 亚洲欧美一区二区三区孕妇| av电影在线观看完整版一区二区| 国产日韩欧美一区二区三区乱码 | 97se亚洲国产综合自在线| 自拍av一区二区三区| 欧美午夜片在线看| 国精产品一区一区三区mba桃花| 国产精品三级av在线播放| 91丨九色丨蝌蚪富婆spa|