本文整理了Java中org.kie.api.definition.process.Node.getOutgoingConnections()
方法的一些代码示例,展示了Node.getOutgoingConnections()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Node.getOutgoingConnections()
方法的具体详情如下:
包路径:org.kie.api.definition.process.Node
类名称:Node
方法名:getOutgoingConnections
[英]The outgoing connections for this Node. A Node could have multiple exit-points. This map contains the list of outgoing connections for each exit-point.
[中]此节点的传出连接。一个节点可以有多个出口点。此映射包含每个出口点的传出连接列表。
代码示例来源:origin: kiegroup/jbpm
private void processNode(final Node node,
final Map<Node, Boolean> nodes) {
if (!nodes.containsKey(node) && !((node instanceof CompositeNodeEnd) || (node instanceof ForEachSplitNode) || (node instanceof ForEachJoinNode))) {
throw new IllegalStateException("A process node is connected with a node that does not belong to the process: " + node.getName());
}
final Boolean prevValue = (Boolean) nodes.put(node,
Boolean.TRUE);
if (prevValue == Boolean.FALSE || prevValue == null) {
for (final Iterator<List<Connection>> it = node.getOutgoingConnections().values().iterator(); it.hasNext(); ) {
final List<Connection> list = it.next();
for (final Iterator<Connection> it2 = list.iterator(); it2.hasNext(); ) {
processNode(it2.next().getTo(),
nodes);
}
}
}
}
代码示例来源:origin: kiegroup/jbpm
private boolean processConnectionInfo(ConnectionInfo connectionInfo, Node[] nodes) {
for (Node node: nodes) {
for (List<Connection> connections: node.getOutgoingConnections().values()) {
for (Connection connection: connections) {
String id = (String) connection.getMetaData().get("UniqueId");
if (id != null && id.equals(connectionInfo.getElementRef())) {
((ConnectionImpl) connection).setMetaData(
"bendpoints", connectionInfo.getBendpoints());
return true;
}
}
}
if (node instanceof NodeContainer) {
boolean found = processConnectionInfo(connectionInfo, ((NodeContainer) node).getNodes());
if (found) {
return true;
}
}
}
return false;
}
代码示例来源:origin: kiegroup/jbpm
protected boolean checkNodes(Node currentNode, final Node lookFor, Set<Long> vistedNodes) {
List<Connection> connections = currentNode.getOutgoingConnections(org.jbpm.workflow.core.Node.CONNECTION_DEFAULT_TYPE);
for (Connection conn : connections) {
Node nextNode = conn.getTo();
if (nextNode == null) {
continue;
} else if (vistedNodes.contains(nextNode.getId())) {
continue;
} else {
vistedNodes.add(nextNode.getId());
if (nextNode.getId() == lookFor.getId()) {
return true;
}
boolean nestedCheck = checkNodes(nextNode, lookFor, vistedNodes);
if (nestedCheck) {
return true;
}
}
}
return false;
}
代码示例来源:origin: kiegroup/jbpm
public void assertNumOfOutgoingConnections(ProcessInstance process,
String nodeName, int num) {
assertNodeExists(process, nodeName);
WorkflowProcessInstanceImpl instance = (WorkflowProcessInstanceImpl) process;
for (Node node : instance.getNodeContainer().getNodes()) {
if (node.getName().equals(nodeName)) {
if (node.getOutgoingConnections().size() != num) {
fail("Expected outgoing connections: " + num + " - found "
+ node.getOutgoingConnections().size());
} else {
break;
}
}
}
}
代码示例来源:origin: kiegroup/jbpm
public void validateRemoveOutgoingConnection(final String type, final Connection connection) {
CompositeNode.NodeAndType nodeAndType = internalGetLinkedOutgoingNode(type);
if (nodeAndType != null) {
for (Connection outConnection: nodeAndType.getNode().getOutgoingConnections(nodeAndType.getType())) {
if (((CompositeNodeEnd) outConnection.getTo()).getOutNodeId() == connection.getTo().getId()) {
((NodeImpl) nodeAndType.getNode()).validateRemoveOutgoingConnection(nodeAndType.getType(), outConnection);
return;
}
}
throw new IllegalArgumentException(
"Could not find internal outgoing connection for node");
}
}
代码示例来源:origin: kiegroup/jbpm
currentNode = ((AsyncEventNode) currentNode).getActualNode();
List<Connection> connections = currentNode.getOutgoingConnections(org.jbpm.workflow.core.Node.CONNECTION_DEFAULT_TYPE);
代码示例来源:origin: kiegroup/jbpm
public void removeOutgoingConnection(String type, Connection connection) {
super.removeOutgoingConnection(type, connection);
CompositeNode.NodeAndType nodeAndType = internalGetLinkedOutgoingNode(type);
if (nodeAndType != null) {
for (Connection outConnection: nodeAndType.getNode().getOutgoingConnections(nodeAndType.getType())) {
if (((CompositeNodeEnd) outConnection.getTo()).getOutNodeId() == connection.getTo().getId()) {
Node compositeNodeEnd = outConnection.getTo();
((ConnectionImpl) outConnection).terminate();
internalRemoveNode(compositeNodeEnd);
return;
}
}
throw new IllegalArgumentException(
"Could not find internal outgoing connection for node");
}
}
代码示例来源:origin: kiegroup/jbpm
protected void triggerNodeInstance(org.jbpm.workflow.instance.NodeInstance nodeInstance, String type, boolean fireEvents) {
boolean hidden = false;
if (getNode().getMetaData().get("hidden") != null) {
hidden = true;
}
InternalKnowledgeRuntime kruntime = getProcessInstance().getKnowledgeRuntime();
if (!hidden && fireEvents) {
((InternalProcessRuntime) kruntime.getProcessRuntime())
.getProcessEventSupport().fireBeforeNodeLeft(this, kruntime);
}
// trigger next node
nodeInstance.trigger(this, type);
Collection<Connection> outgoing = getNode().getOutgoingConnections(type);
for (Connection conn : outgoing) {
if (conn.getTo().getId() == nodeInstance.getNodeId()) {
this.metaData.put("OutgoingConnection", conn.getMetaData().get("UniqueId"));
break;
}
}
if (!hidden && fireEvents) {
((InternalProcessRuntime) kruntime.getProcessRuntime())
.getProcessEventSupport().fireAfterNodeLeft(this, kruntime);
}
}
代码示例来源:origin: kiegroup/jbpm
oldNodeAndType.getNode().getOutgoingConnections(oldNodeAndType.getType());
for (Connection connection: new ArrayList<Connection>(oldOutConnections)) {
if (connection.getTo() instanceof CompositeNodeEnd) {
代码示例来源:origin: kiegroup/jbpm
connections = node.getOutgoingConnections(type);
代码示例来源:origin: kiegroup/jbpm
List<Connection> connections = null;
if (node != null) {
connections = node.getOutgoingConnections(type);
代码示例来源:origin: kiegroup/jbpm
public void activationCreated(MatchCreatedEvent event) {
Connection selected = null;
for (Connection connection: getNode().getOutgoingConnections(NodeImpl.CONNECTION_DEFAULT_TYPE)) {
Constraint constraint = getStateNode().getConstraint(connection);
if (constraint != null) {
String constraintName = getActivationEventType() + "-"
+ connection.getTo().getId() + "-" + connection.getToType();
if (constraintName.equals(event.getMatch().getRule().getName())
&& checkProcessInstance((Activation) event.getMatch())) {
selected = connection;
}
}
}
if (selected != null) {
removeEventListeners();
((NodeInstanceContainer) getNodeInstanceContainer()).removeNodeInstance(this);
triggerConnection(selected);
}
}
代码示例来源:origin: org.drools/knowledge-api
public List<Connection> getOutgoingConnections(String type) {
return adaptConnectionList(delegate.getOutgoingConnections(type));
}
代码示例来源:origin: org.drools/knowledge-api
public Map<String, List<Connection>> getOutgoingConnections() {
return adaptConnectionMap(delegate.getOutgoingConnections());
}
代码示例来源:origin: org.jbpm/jbpm-test
public void assertNumOfOutgoingConnections(ProcessInstance process, String nodeName, int num) {
assertNodeExists(process, nodeName);
WorkflowProcessInstanceImpl instance = (WorkflowProcessInstanceImpl) process;
for (Node node : instance.getNodeContainer().getNodes()) {
if (node.getName().equals(nodeName)) {
if (node.getOutgoingConnections().size() != num) {
fail("Expected outgoing connections: " + num + " - found " + node.getOutgoingConnections().size());
} else {
break;
}
}
}
}
代码示例来源:origin: org.jbpm/jbpm-test
public void assertNumOfOutgoingConnections(ProcessInstance process, String nodeName, int num) {
assertNodeExists(process, nodeName);
WorkflowProcessInstanceImpl instance = (WorkflowProcessInstanceImpl) process;
for (Node node : instance.getNodeContainer().getNodes()) {
if (node.getName().equals(nodeName)) {
if (node.getOutgoingConnections().size() != num) {
fail("Expected outgoing connections: " + num + " - found " + node.getOutgoingConnections().size());
} else {
break;
}
}
}
}
代码示例来源:origin: org.jbpm/jbpm-bpmn2
public void assertNumOfOutgoingConnections(ProcessInstance process,
String nodeName, int num) {
assertNodeExists(process, nodeName);
WorkflowProcessInstanceImpl instance = (WorkflowProcessInstanceImpl) process;
for (Node node : instance.getNodeContainer().getNodes()) {
if (node.getName().equals(nodeName)) {
if (node.getOutgoingConnections().size() != num) {
fail("Expected outgoing connections: " + num + " - found "
+ node.getOutgoingConnections().size());
} else {
break;
}
}
}
}
代码示例来源:origin: org.drools/jbpm-simulation
@Override
public void internalTrigger(NodeInstance from, String type) {
SimulationContext context = SimulationContext.getContext();
ActivitySimulator simulator = context.getRegistry().getSimulator(getNode());
SimulationEvent event = simulator.simulate(this, context);
context.getRepository().storeEvent(event);
List<Connection> outgoing = getNode().getOutgoingConnections().get(Node.CONNECTION_DEFAULT_TYPE);
for (Connection conn : outgoing) {
if (context.getCurrentPath().getSequenceFlowsIds().contains(conn.getMetaData().get("UniqueId"))) {
triggerConnection(conn);
}
}
}
}
代码示例来源:origin: kiegroup/droolsjbpm-integration
@Override
public void internalTrigger(NodeInstance from, String type) {
SimulationContext context = SimulationContext.getContext();
ActivitySimulator simulator = context.getRegistry().getSimulator(getNode());
SimulationEvent event = simulator.simulate(this, context);
context.getRepository().storeEvent(event);
List<Connection> outgoing = getNode().getOutgoingConnections().get(Node.CONNECTION_DEFAULT_TYPE);
for (Connection conn : outgoing) {
if (context.getCurrentPath().getSequenceFlowsIds().contains(conn.getMetaData().get("UniqueId"))) {
triggerConnection(conn);
}
}
}
}
代码示例来源:origin: org.jbpm/jbpm-flow
public void validateRemoveOutgoingConnection(final String type, final Connection connection) {
CompositeNode.NodeAndType nodeAndType = internalGetLinkedOutgoingNode(type);
if (nodeAndType != null) {
for (Connection outConnection: nodeAndType.getNode().getOutgoingConnections(nodeAndType.getType())) {
if (((CompositeNodeEnd) outConnection.getTo()).getOutNodeId() == connection.getTo().getId()) {
((NodeImpl) nodeAndType.getNode()).validateRemoveOutgoingConnection(nodeAndType.getType(), outConnection);
return;
}
}
throw new IllegalArgumentException(
"Could not find internal outgoing connection for node");
}
}
内容来源于网络,如有侵权,请联系作者删除!