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

📄 oprocess.java

📁 bpel执行引擎用来执行bpel业务流程
💻 JAVA
字号:
/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements.  See the NOTICE file * distributed with this work for additional information * regarding copyright ownership.  The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License.  You may obtain a copy of the License at * *    http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied.  See the License for the * specific language governing permissions and limitations * under the License. */package org.apache.ode.bpel.o;import org.apache.ode.utils.stl.CollectionsX;import org.apache.ode.utils.stl.MemberOfFunction;import javax.wsdl.Operation;import javax.xml.namespace.QName;import java.io.IOException;import java.io.ObjectInputStream;import java.net.URI;import java.util.*;/** * Compiled BPEL process representation. */public class OProcess extends OBase {    public static int instanceCount = 0;    static final long serialVersionUID = -1L  ;    public String guid;    /** BPEL version. */    public final String version;    /** Various constants that are needed at runtime. */    public OConstants constants;    /** Universally Unique Identifier */    public String uuid;    /** Namespace of the process. */    public String targetNamespace;    /** Name of the process. */    public String processName;    /** ProcessImpl-level scope. */    public OScope procesScope;    /** All partner links in the process. */    public final Set<OPartnerLink> allPartnerLinks = new HashSet<OPartnerLink>();    public final List<OProperty> properties = new ArrayList<OProperty>();    /** Date process was compiled. */    public Date compileDate;    int _childIdCounter = 0;    List<OBase> _children = new ArrayList<OBase>();    public final HashSet<OExpressionLanguage> expressionLanguages = new HashSet<OExpressionLanguage>();    public final HashMap<QName, OMessageVarType> messageTypes = new HashMap<QName, OMessageVarType>();    public final HashMap<QName, OElementVarType> elementTypes = new HashMap<QName, OElementVarType>();    public final HashMap<QName, OXsdTypeVarType> xsdTypes = new HashMap<QName, OXsdTypeVarType>();    public final HashMap<URI, OXslSheet> xslSheets = new HashMap<URI, OXslSheet>();    public OProcess(String bpelVersion) {        super(null);        this.version = bpelVersion;        instanceCount++;    }    public OBase getChild(final int id) {        for (int i=_children.size()-1; i>=0; i--) {            OBase child = _children.get(i);            if (child.getId() == id) return child;            }        return null;    }    public List<OBase> getChildren() {        return _children;    }    public OScope getScope(String scopeName) {        throw new UnsupportedOperationException();    }    public Set<OPartnerLink> getAllPartnerLinks() {        return Collections.unmodifiableSet(allPartnerLinks);    }    public OPartnerLink getPartnerLink(String name) {        for (OPartnerLink partnerLink : allPartnerLinks) {            if (partnerLink.getName().equals(name)) return partnerLink;        }        return null;    }    public String getName() {        return processName;    }    public Collection getExpressionLanguages() {        throw new UnsupportedOperationException(); // TODO: implement me!    }    public List<String> getCorrelators() {        // MOVED from ProcessSchemaGenerator        List<String> correlators = new ArrayList<String>();        for (OPartnerLink plink : getAllPartnerLinks()) {            if (plink.hasMyRole()) {                for (Iterator opI = plink.myRolePortType.getOperations().iterator(); opI.hasNext();) {                    Operation op = (Operation)opI.next();                    correlators.add(plink.getId() + "." + op.getName());                }            }        }        return correlators;    }    public static class OProperty extends OBase {        static final long serialVersionUID = -1L  ;        public final List<OPropertyAlias> aliases = new ArrayList<OPropertyAlias>();        public QName name;        public OProperty(OProcess process) { super(process); }        public OPropertyAlias getAlias(OVarType messageType) {            for (OPropertyAlias aliase : aliases)                if (aliase.varType.equals(messageType))                    return aliase;            return null;        }        public String toString() {            return "{OProperty " + name + "}";        }    }    public static class OPropertyAlias extends OBase {        static final long serialVersionUID = -1L  ;        public OVarType varType;        /** For BPEL 1.1 */        public OMessageVarType.Part part;        public OExpression location;        public OPropertyAlias(OProcess owner) {super(owner); }        public String toString() {            return "{OPropertyAlias " + getDescription() +  "}";        }        public String getDescription() {            StringBuffer buf = new StringBuffer(varType.toString());            buf.append('[');            buf.append(part != null ? part.name : "");            if (location != null) {                buf.append("][");                buf.append(location.toString());            }            buf.append(']');            return buf.toString();        }    }    public QName getQName() {        return new QName(targetNamespace, processName);    }    protected void finalize() throws Throwable {        instanceCount--;    }    private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {        // our "pseudo-constructor"        in.defaultReadObject();        instanceCount++;    }}

⌨️ 快捷键说明

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