This is an automated email from the ASF dual-hosted git repository.
fjtiradosarti pushed a commit to branch main
in repository
https://gitbox.apache.org/repos/asf/incubator-kie-kogito-runtimes.git
The following commit(s) were added to refs/heads/main by this push:
new 8be0ba30ee [Fix apache/incubator-kie-issues#1857] Adding triggerCount
(#3858)
8be0ba30ee is described below
commit 8be0ba30ee4e7abc61b1a9fe2c6d099df63f613b
Author: Francisco Javier Tirado Sarti
<[email protected]>
AuthorDate: Tue Mar 18 13:48:00 2025 +0100
[Fix apache/incubator-kie-issues#1857] Adding triggerCount (#3858)
* [Fix apache/incubator-kie-issues#1857] Adding triggerCount
Adds triggerCount to ProcessInstanceNode events
[Fix apache/incubator-kie-issues#1857] Adding triggerCount
Adds triggerCount to ProcessInstanceNode events
* [Fix apache/incubator-kie-issues#1857] Adding isRetrigger
* [Fix apache/incubator-kie-issues#1857] Clearing error
* [Fix apache/incubator-kie-issues#1857] Renaming isTrigger to trigger
* [Fix apache/incubator-kie-issues#1857] Pere's comment
---
.../BaseProcessInstanceManagementResource.java | 12 +-
.../exceptions/BaseExceptionHandlerTest.java | 2 +-
.../process/event/KogitoProcessEventListener.java | 5 +
.../process/event/KogitoProcessEventSupport.java | 2 +
.../process/runtime/KogitoNodeInstance.java | 7 +
.../java/org/kie/kogito/process/ProcessError.java | 2 +
.../org/kie/kogito/process/ProcessInstance.java | 2 +-
.../process/ProcessInstanceExecutionException.java | 16 +-
.../uow/events/UnitOfWorkProcessEventListener.java | 6 +
.../process/ProcessInstanceNodeEventBody.java | 13 +
.../process/ProcessInstanceStateEventBody.java | 1 +
.../impl/adapter/AbstractDataEventAdapter.java | 13 +-
.../ProcessRetriggeredEventDataEventAdapter.java} | 20 +-
....kie.kogito.event.impl.adapter.DataEventAdapter | 1 +
.../event/KogitoProcessEventSupportImpl.java | 7 +
.../event/KogitoProcessNodeTriggeredEventImpl.java | 13 +-
...tImpl.java => ProcessRetriggeredEventImpl.java} | 18 +-
.../org/jbpm/workflow/instance/NodeInstance.java | 2 +
.../workflow/instance/impl/NodeInstanceImpl.java | 15 +-
.../instance/impl/WorkflowProcessInstanceImpl.java | 5 +
.../process/impl/AbstractProcessInstance.java | 26 +-
.../impl/ProtobufProcessInstanceReader.java | 7 +
.../impl/ProtobufProcessInstanceWriter.java | 6 +-
.../KogitoNodeInstanceContentsProtobuf.java | 2 +-
.../protobuf/KogitoProcessInstanceProtobuf.java | 393 ++++++++++++++++-----
.../protobuf/KogitoTypesProtobuf.java | 163 +++++++--
.../protobuf/KogitoWorkItemsProtobuf.java | 2 +-
.../protobuf/kogito_process_instance.proto | 1 +
.../flow/serialization/protobuf/kogito_types.proto | 1 +
.../kie/kogito/codegen/tests/PublishEventIT.java | 9 +-
30 files changed, 607 insertions(+), 165 deletions(-)
diff --git
a/addons/common/process-management/src/main/java/org/kie/kogito/process/management/BaseProcessInstanceManagementResource.java
b/addons/common/process-management/src/main/java/org/kie/kogito/process/management/BaseProcessInstanceManagementResource.java
index 43514088cf..727ccebfb9 100644
---
a/addons/common/process-management/src/main/java/org/kie/kogito/process/management/BaseProcessInstanceManagementResource.java
+++
b/addons/common/process-management/src/main/java/org/kie/kogito/process/management/BaseProcessInstanceManagementResource.java
@@ -168,7 +168,7 @@ public abstract class
BaseProcessInstanceManagementResource<T> implements Proces
processInstance.error().get().retrigger();
if (processInstance.status() == ProcessInstance.STATE_ERROR) {
- throw new
ProcessInstanceExecutionException(processInstance.id(),
processInstance.error().get().failedNodeId(),
processInstance.error().get().errorMessage());
+ throw
ProcessInstanceExecutionException.fromError(processInstance);
} else {
return buildOkResponse(processInstance.variables());
}
@@ -181,7 +181,7 @@ public abstract class
BaseProcessInstanceManagementResource<T> implements Proces
processInstance.error().get().skip();
if (processInstance.status() == ProcessInstance.STATE_ERROR) {
- throw new
ProcessInstanceExecutionException(processInstance.id(),
processInstance.error().get().failedNodeId(),
processInstance.error().get().errorMessage());
+ throw
ProcessInstanceExecutionException.fromError(processInstance);
} else {
return buildOkResponse(processInstance.variables());
}
@@ -194,7 +194,7 @@ public abstract class
BaseProcessInstanceManagementResource<T> implements Proces
processInstance.triggerNode(nodeId);
if (processInstance.status() == ProcessInstance.STATE_ERROR) {
- throw new
ProcessInstanceExecutionException(processInstance.id(),
processInstance.error().get().failedNodeId(),
processInstance.error().get().errorMessage());
+ throw
ProcessInstanceExecutionException.fromError(processInstance);
} else {
return buildOkResponse(processInstance.variables());
}
@@ -207,7 +207,7 @@ public abstract class
BaseProcessInstanceManagementResource<T> implements Proces
processInstance.retriggerNodeInstance(nodeInstanceId);
if (processInstance.status() == ProcessInstance.STATE_ERROR) {
- throw new
ProcessInstanceExecutionException(processInstance.id(),
processInstance.error().get().failedNodeId(),
processInstance.error().get().errorMessage());
+ throw
ProcessInstanceExecutionException.fromError(processInstance);
} else {
return buildOkResponse(processInstance.variables());
}
@@ -220,7 +220,7 @@ public abstract class
BaseProcessInstanceManagementResource<T> implements Proces
processInstance.cancelNodeInstance(nodeInstanceId);
if (processInstance.status() == ProcessInstance.STATE_ERROR) {
- throw new
ProcessInstanceExecutionException(processInstance.id(),
processInstance.error().get().failedNodeId(),
processInstance.error().get().errorMessage());
+ throw
ProcessInstanceExecutionException.fromError(processInstance);
} else {
return buildOkResponse(processInstance.variables());
}
@@ -233,7 +233,7 @@ public abstract class
BaseProcessInstanceManagementResource<T> implements Proces
processInstance.abort();
if (processInstance.status() == ProcessInstance.STATE_ERROR) {
- throw new
ProcessInstanceExecutionException(processInstance.id(),
processInstance.error().get().failedNodeId(),
processInstance.error().get().errorMessage());
+ throw
ProcessInstanceExecutionException.fromError(processInstance);
} else {
return buildOkResponse(processInstance.variables());
}
diff --git
a/addons/common/rest-exception-handler/src/test/java/org/kie/kogito/resource/exceptions/BaseExceptionHandlerTest.java
b/addons/common/rest-exception-handler/src/test/java/org/kie/kogito/resource/exceptions/BaseExceptionHandlerTest.java
index bf8f28fc31..cdf584d2ec 100644
---
a/addons/common/rest-exception-handler/src/test/java/org/kie/kogito/resource/exceptions/BaseExceptionHandlerTest.java
+++
b/addons/common/rest-exception-handler/src/test/java/org/kie/kogito/resource/exceptions/BaseExceptionHandlerTest.java
@@ -119,7 +119,7 @@ class BaseExceptionHandlerTest {
@Test
void testMapProcessInstanceExecutionException() {
- Object response = tested.mapException(new
ProcessInstanceExecutionException("processInstanceId", "nodeId", "message"));
+ Object response = tested.mapException(new
ProcessInstanceExecutionException("processInstanceId", "nodeId",
"nodeInstanceId", "message"));
assertThat(response).isEqualTo(internalErrorResponse);
}
diff --git
a/api/kogito-api/src/main/java/org/kie/kogito/internal/process/event/KogitoProcessEventListener.java
b/api/kogito-api/src/main/java/org/kie/kogito/internal/process/event/KogitoProcessEventListener.java
index 5bdbb74b78..6ec6c074a5 100644
---
a/api/kogito-api/src/main/java/org/kie/kogito/internal/process/event/KogitoProcessEventListener.java
+++
b/api/kogito-api/src/main/java/org/kie/kogito/internal/process/event/KogitoProcessEventListener.java
@@ -19,6 +19,7 @@
package org.kie.kogito.internal.process.event;
import org.kie.api.event.process.ProcessEventListener;
+import org.kie.api.event.process.ProcessRetriggeredEvent;
public interface KogitoProcessEventListener extends ProcessEventListener {
@@ -37,4 +38,8 @@ public interface KogitoProcessEventListener extends
ProcessEventListener {
*/
default void afterWorkItemTransition(ProcessWorkItemTransitionEvent event)
{
}
+
+ default void onProcessRetriggered(ProcessRetriggeredEvent event) {
+
+ }
}
diff --git
a/api/kogito-api/src/main/java/org/kie/kogito/internal/process/event/KogitoProcessEventSupport.java
b/api/kogito-api/src/main/java/org/kie/kogito/internal/process/event/KogitoProcessEventSupport.java
index 573f67c012..77565641b0 100644
---
a/api/kogito-api/src/main/java/org/kie/kogito/internal/process/event/KogitoProcessEventSupport.java
+++
b/api/kogito-api/src/main/java/org/kie/kogito/internal/process/event/KogitoProcessEventSupport.java
@@ -32,6 +32,8 @@ public interface KogitoProcessEventSupport {
void fireAfterProcessStarted(KogitoProcessInstance instance, KieRuntime
kruntime);
+ void fireProcessRetriggered(KogitoProcessInstance instance, KieRuntime
kruntime);
+
void fireBeforeProcessCompleted(KogitoProcessInstance instance, KieRuntime
kruntime);
void fireAfterProcessCompleted(KogitoProcessInstance instance, KieRuntime
kruntime);
diff --git
a/api/kogito-api/src/main/java/org/kie/kogito/internal/process/runtime/KogitoNodeInstance.java
b/api/kogito-api/src/main/java/org/kie/kogito/internal/process/runtime/KogitoNodeInstance.java
index a1483dd85e..fc6e46a190 100644
---
a/api/kogito-api/src/main/java/org/kie/kogito/internal/process/runtime/KogitoNodeInstance.java
+++
b/api/kogito-api/src/main/java/org/kie/kogito/internal/process/runtime/KogitoNodeInstance.java
@@ -75,4 +75,11 @@ public interface KogitoNodeInstance extends NodeInstance {
default Map<String, Object> getMetaData() {
return Collections.emptyMap();
}
+
+ /**
+ * Returns if this node has been executed as the first one of a retrigger
operation
+ *
+ * @return true if this a retrigger node (see above), false otherwise
+ */
+ boolean isRetrigger();
}
diff --git
a/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessError.java
b/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessError.java
index 486b0336fe..ca58da6290 100644
--- a/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessError.java
+++ b/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessError.java
@@ -22,6 +22,8 @@ public interface ProcessError {
String failedNodeId();
+ String failedNodeInstanceId();
+
String errorMessage();
default Throwable errorCause() {
diff --git
a/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessInstance.java
b/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessInstance.java
index c9741de02b..384efbb98e 100644
--- a/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessInstance.java
+++ b/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessInstance.java
@@ -256,7 +256,7 @@ public interface ProcessInstance<T> {
default ProcessInstance<T> checkError() {
Optional<ProcessError> error = error();
if (error.isPresent()) {
- throw new ProcessInstanceExecutionException(id(),
error.get().failedNodeId(), error.get().errorMessage(),
error.get().errorCause());
+ throw ProcessInstanceExecutionException.fromError(this);
}
return this;
}
diff --git
a/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessInstanceExecutionException.java
b/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessInstanceExecutionException.java
index 04d1732b43..aef2bd3868 100644
---
a/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessInstanceExecutionException.java
+++
b/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessInstanceExecutionException.java
@@ -29,16 +29,18 @@ public class ProcessInstanceExecutionException extends
RuntimeException {
private final String processInstanceId;
private final String failedNodeId;
+ private final String failedNodeInstanceId;
private final String errorMessage;
- public ProcessInstanceExecutionException(String processInstanceId, String
failedNodeId, String errorMessage) {
- this(processInstanceId, failedNodeId, errorMessage, null);
+ public ProcessInstanceExecutionException(String processInstanceId, String
failedNodeId, String failedNodeInstanceId, String errorMessage) {
+ this(processInstanceId, failedNodeId, failedNodeInstanceId,
errorMessage, null);
}
- public ProcessInstanceExecutionException(String processInstanceId, String
failedNodeId, String errorMessage, Throwable rootCause) {
+ public ProcessInstanceExecutionException(String processInstanceId, String
failedNodeId, String failedNodeInstanceId, String errorMessage, Throwable
rootCause) {
super("Process instance with id " + processInstanceId + " failed
because of " + errorMessage, rootCause);
this.processInstanceId = processInstanceId;
this.failedNodeId = failedNodeId;
+ this.failedNodeInstanceId = failedNodeInstanceId;
this.errorMessage = errorMessage;
}
@@ -70,4 +72,12 @@ public class ProcessInstanceExecutionException extends
RuntimeException {
return errorMessage;
}
+ public String getFailedNodeInstanceId() {
+ return failedNodeInstanceId;
+ }
+
+ public static ProcessInstanceExecutionException
fromError(ProcessInstance<?> processInstance) {
+ ProcessError error = processInstance.error().get();
+ return new ProcessInstanceExecutionException(processInstance.id(),
error.failedNodeId(), error.failedNodeInstanceId(), error.errorMessage(),
error.errorCause());
+ }
}
diff --git
a/api/kogito-api/src/main/java/org/kie/kogito/uow/events/UnitOfWorkProcessEventListener.java
b/api/kogito-api/src/main/java/org/kie/kogito/uow/events/UnitOfWorkProcessEventListener.java
index f9b1a8868f..ddc09ec964 100644
---
a/api/kogito-api/src/main/java/org/kie/kogito/uow/events/UnitOfWorkProcessEventListener.java
+++
b/api/kogito-api/src/main/java/org/kie/kogito/uow/events/UnitOfWorkProcessEventListener.java
@@ -25,6 +25,7 @@ import org.kie.api.event.process.ProcessEvent;
import org.kie.api.event.process.ProcessMigrationEvent;
import org.kie.api.event.process.ProcessNodeLeftEvent;
import org.kie.api.event.process.ProcessNodeTriggeredEvent;
+import org.kie.api.event.process.ProcessRetriggeredEvent;
import org.kie.api.event.process.ProcessStartedEvent;
import org.kie.api.event.process.ProcessVariableChangedEvent;
import org.kie.api.event.process.SLAViolatedEvent;
@@ -136,4 +137,9 @@ public class UnitOfWorkProcessEventListener extends
DefaultKogitoProcessEventLis
intercept(event);
}
+ @Override
+ public void onProcessRetriggered(ProcessRetriggeredEvent event) {
+ intercept(event);
+ }
+
}
diff --git
a/api/kogito-events-api/src/main/java/org/kie/kogito/event/process/ProcessInstanceNodeEventBody.java
b/api/kogito-events-api/src/main/java/org/kie/kogito/event/process/ProcessInstanceNodeEventBody.java
index 349a8280b8..d921431558 100644
---
a/api/kogito-events-api/src/main/java/org/kie/kogito/event/process/ProcessInstanceNodeEventBody.java
+++
b/api/kogito-events-api/src/main/java/org/kie/kogito/event/process/ProcessInstanceNodeEventBody.java
@@ -76,6 +76,8 @@ public class ProcessInstanceNodeEventBody implements
KogitoMarshallEventSupport,
private Date slaDueDate;
+ private Boolean retrigger;
+
private Map<String, Object> data;
@Override
@@ -89,6 +91,7 @@ public class ProcessInstanceNodeEventBody implements
KogitoMarshallEventSupport,
writeUTF(out, workItemId);
writeDate(out, slaDueDate);
writeObject(out, data);
+ writeObject(out, retrigger);
}
@Override
@@ -102,6 +105,7 @@ public class ProcessInstanceNodeEventBody implements
KogitoMarshallEventSupport,
workItemId = readUTF(in);
slaDueDate = readDate(in);
data = (Map<String, Object>) readObject(in);
+ retrigger = (Boolean) readObject(in);
}
@Override
@@ -121,6 +125,10 @@ public class ProcessInstanceNodeEventBody implements
KogitoMarshallEventSupport,
return eventDate;
}
+ public Boolean isRetrigger() {
+ return retrigger;
+ }
+
public String getEventUser() {
return eventUser;
}
@@ -258,6 +266,11 @@ public class ProcessInstanceNodeEventBody implements
KogitoMarshallEventSupport,
return this;
}
+ public Builder setRetrigger(Boolean isRetrigger) {
+ instance.retrigger = isRetrigger;
+ return this;
+ }
+
public Builder nodeType(String nodeType) {
instance.nodeType = nodeType;
return this;
diff --git
a/api/kogito-events-api/src/main/java/org/kie/kogito/event/process/ProcessInstanceStateEventBody.java
b/api/kogito-events-api/src/main/java/org/kie/kogito/event/process/ProcessInstanceStateEventBody.java
index 8c7c291110..c57e335811 100644
---
a/api/kogito-events-api/src/main/java/org/kie/kogito/event/process/ProcessInstanceStateEventBody.java
+++
b/api/kogito-events-api/src/main/java/org/kie/kogito/event/process/ProcessInstanceStateEventBody.java
@@ -37,6 +37,7 @@ public class ProcessInstanceStateEventBody implements
KogitoMarshallEventSupport
public static final int EVENT_TYPE_STARTED = 1;
public static final int EVENT_TYPE_ENDED = 2;
public static final int EVENT_TYPE_MIGRATED = 3;
+ public static final int EVENT_TYPE_RETRIGGERED = 4;
// common fields for events
private Date eventDate;
diff --git
a/api/kogito-events-core/src/main/java/org/kie/kogito/event/impl/adapter/AbstractDataEventAdapter.java
b/api/kogito-events-core/src/main/java/org/kie/kogito/event/impl/adapter/AbstractDataEventAdapter.java
index 77f1c856ba..297ef7d6d7 100644
---
a/api/kogito-events-core/src/main/java/org/kie/kogito/event/impl/adapter/AbstractDataEventAdapter.java
+++
b/api/kogito-events-core/src/main/java/org/kie/kogito/event/impl/adapter/AbstractDataEventAdapter.java
@@ -20,9 +20,11 @@ package org.kie.kogito.event.impl.adapter;
import java.util.Date;
import java.util.Map;
+import java.util.function.BiConsumer;
import org.kie.api.event.process.ProcessEvent;
import org.kie.api.event.process.ProcessNodeEvent;
+import org.kie.api.event.process.ProcessNodeTriggeredEvent;
import org.kie.kogito.event.process.ProcessInstanceNodeDataEvent;
import org.kie.kogito.event.process.ProcessInstanceNodeEventBody;
import org.kie.kogito.event.process.ProcessInstanceStateDataEvent;
@@ -91,7 +93,16 @@ public abstract class AbstractDataEventAdapter implements
DataEventAdapter {
return piEvent;
}
+ protected ProcessInstanceNodeDataEvent
toProcessInstanceNodeEvent(ProcessNodeTriggeredEvent event, int eventType) {
+ return toProcessInstanceNodeEvent(event, eventType, (k, v) ->
k.setRetrigger(v.isRetrigger()));
+ }
+
protected ProcessInstanceNodeDataEvent
toProcessInstanceNodeEvent(ProcessNodeEvent event, int eventType) {
+ return toProcessInstanceNodeEvent(event, eventType, (k, v) -> {
+ });
+ }
+
+ protected <T extends ProcessNodeEvent> ProcessInstanceNodeDataEvent
toProcessInstanceNodeEvent(T event, int eventType,
BiConsumer<ProcessInstanceNodeEventBody.Builder, T> consumer) {
Map<String, Object> metadata =
AdapterHelper.buildProcessMetadata((KogitoWorkflowProcessInstance)
event.getProcessInstance());
KogitoWorkflowProcessInstance pi = (KogitoWorkflowProcessInstance)
event.getProcessInstance();
KogitoNodeInstance nodeInstance = (KogitoNodeInstance)
event.getNodeInstance();
@@ -107,7 +118,7 @@ public abstract class AbstractDataEventAdapter implements
DataEventAdapter {
.nodeInstanceId(event.getNodeInstance().getId())
.nodeDefinitionId(event.getNodeInstance().getNode().getUniqueId())
.slaDueDate(nodeInstance.getSlaDueDate());
-
+ consumer.accept(builder, event);
if (event.getNodeInstance() instanceof KogitoWorkItemNodeInstance
workItemNodeInstance && workItemNodeInstance.getWorkItem() != null) {
KogitoWorkItem workItem = workItemNodeInstance.getWorkItem();
builder.workItemId(workItem.getStringId());
diff --git
a/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessError.java
b/api/kogito-events-core/src/main/java/org/kie/kogito/event/impl/adapter/ProcessRetriggeredEventDataEventAdapter.java
similarity index 58%
copy from api/kogito-api/src/main/java/org/kie/kogito/process/ProcessError.java
copy to
api/kogito-events-core/src/main/java/org/kie/kogito/event/impl/adapter/ProcessRetriggeredEventDataEventAdapter.java
index 486b0336fe..6f1b78a136 100644
--- a/api/kogito-api/src/main/java/org/kie/kogito/process/ProcessError.java
+++
b/api/kogito-events-core/src/main/java/org/kie/kogito/event/impl/adapter/ProcessRetriggeredEventDataEventAdapter.java
@@ -16,19 +16,21 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.kie.kogito.process;
+package org.kie.kogito.event.impl.adapter;
-public interface ProcessError {
+import org.kie.api.event.process.ProcessRetriggeredEvent;
+import org.kie.kogito.event.DataEvent;
+import org.kie.kogito.event.process.ProcessInstanceStateEventBody;
- String failedNodeId();
+public class ProcessRetriggeredEventDataEventAdapter extends
AbstractDataEventAdapter {
- String errorMessage();
-
- default Throwable errorCause() {
- return null;
+ public ProcessRetriggeredEventDataEventAdapter() {
+ super(ProcessRetriggeredEvent.class);
}
- void retrigger();
+ @Override
+ public DataEvent<?> adapt(Object payload) {
+ return adapt((ProcessRetriggeredEvent) payload,
ProcessInstanceStateEventBody.EVENT_TYPE_RETRIGGERED);
+ }
- void skip();
}
diff --git
a/api/kogito-events-core/src/main/resources/META-INF/services/org.kie.kogito.event.impl.adapter.DataEventAdapter
b/api/kogito-events-core/src/main/resources/META-INF/services/org.kie.kogito.event.impl.adapter.DataEventAdapter
index 644f544a1b..06682d2352 100644
---
a/api/kogito-events-core/src/main/resources/META-INF/services/org.kie.kogito.event.impl.adapter.DataEventAdapter
+++
b/api/kogito-events-core/src/main/resources/META-INF/services/org.kie.kogito.event.impl.adapter.DataEventAdapter
@@ -5,6 +5,7 @@
org.kie.kogito.event.impl.adapter.ProcessNodeEnteredEventDataEventAdapter
org.kie.kogito.event.impl.adapter.ProcessNodeLeftEventDataEventAdapter
org.kie.kogito.event.impl.adapter.ProcessSLAEventDataEventAdapter
org.kie.kogito.event.impl.adapter.ProcessStartedEventDataEventAdapter
+org.kie.kogito.event.impl.adapter.ProcessRetriggeredEventDataEventAdapter
org.kie.kogito.event.impl.adapter.ProcessVariableEventDataEventAdapter
org.kie.kogito.event.impl.adapter.UserTaskAssignmentEventDataEventAdapter
org.kie.kogito.event.impl.adapter.UserTaskCommentEventDataEventAdapter
diff --git
a/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessEventSupportImpl.java
b/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessEventSupportImpl.java
index b6dcfc270e..b03d37b55e 100644
---
a/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessEventSupportImpl.java
+++
b/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessEventSupportImpl.java
@@ -27,6 +27,7 @@ import org.kie.api.event.process.MessageEvent;
import org.kie.api.event.process.ProcessCompletedEvent;
import org.kie.api.event.process.ProcessNodeLeftEvent;
import org.kie.api.event.process.ProcessNodeTriggeredEvent;
+import org.kie.api.event.process.ProcessRetriggeredEvent;
import org.kie.api.event.process.ProcessStartedEvent;
import org.kie.api.event.process.ProcessVariableChangedEvent;
import org.kie.api.event.process.SLAViolatedEvent;
@@ -218,4 +219,10 @@ public class KogitoProcessEventSupportImpl implements
KogitoProcessEventSupport
notifyAllListeners(l -> l.onError(event));
}
+ @Override
+ public void fireProcessRetriggered(KogitoProcessInstance instance,
KieRuntime kruntime) {
+ final ProcessRetriggeredEvent event = new
ProcessRetriggeredEventImpl(instance, kruntime, identityProvider.getName());
+ notifyAllListeners(l -> l.onProcessRetriggered(event));
+ }
+
}
diff --git
a/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessNodeTriggeredEventImpl.java
b/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessNodeTriggeredEventImpl.java
index f47ae40765..7f31f2a77d 100644
---
a/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessNodeTriggeredEventImpl.java
+++
b/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessNodeTriggeredEventImpl.java
@@ -20,21 +20,28 @@ package org.jbpm.process.instance.event;
import org.kie.api.event.process.ProcessNodeTriggeredEvent;
import org.kie.api.runtime.KieRuntime;
-import org.kie.api.runtime.process.NodeInstance;
import org.kie.kogito.internal.process.runtime.KogitoNodeInstance;
public class KogitoProcessNodeTriggeredEventImpl extends
AbstractProcessNodeEvent implements ProcessNodeTriggeredEvent {
private static final long serialVersionUID = 510l;
- public KogitoProcessNodeTriggeredEventImpl(NodeInstance nodeInstance,
KieRuntime kruntime, String identity) {
+ private boolean isRetrigger;
+
+ public KogitoProcessNodeTriggeredEventImpl(KogitoNodeInstance
nodeInstance, KieRuntime kruntime, String identity) {
super(nodeInstance, nodeInstance.getProcessInstance(), kruntime,
identity);
+ this.isRetrigger = nodeInstance.isRetrigger();
+ }
+ @Override
+ public boolean isRetrigger() {
+ return isRetrigger;
}
@Override
public String toString() {
return "==>[ProcessNodeTriggered(nodeId=" +
getNodeInstance().getNodeId() + "; id=" + ((KogitoNodeInstance)
getNodeInstance()).getStringId()
- + "; nodeName=" + getNodeInstance().getNodeName() + ";
processName=" + getProcessInstance().getProcessName() + "; processId=" +
getProcessInstance().getProcessId() + ")]";
+ + "; nodeName=" + getNodeInstance().getNodeName() + ";
processName=" + getProcessInstance().getProcessName() + "; processId=" +
getProcessInstance().getProcessId()
+ + "; isRetrigger=" + isRetrigger + ")]";
}
}
diff --git
a/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessNodeTriggeredEventImpl.java
b/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/ProcessRetriggeredEventImpl.java
similarity index 54%
copy from
jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessNodeTriggeredEventImpl.java
copy to
jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/ProcessRetriggeredEventImpl.java
index f47ae40765..aad85feb8d 100644
---
a/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/KogitoProcessNodeTriggeredEventImpl.java
+++
b/jbpm/jbpm-flow/src/main/java/org/jbpm/process/instance/event/ProcessRetriggeredEventImpl.java
@@ -18,23 +18,21 @@
*/
package org.jbpm.process.instance.event;
-import org.kie.api.event.process.ProcessNodeTriggeredEvent;
+import org.kie.api.event.process.ProcessRetriggeredEvent;
import org.kie.api.runtime.KieRuntime;
-import org.kie.api.runtime.process.NodeInstance;
-import org.kie.kogito.internal.process.runtime.KogitoNodeInstance;
+import org.kie.api.runtime.process.ProcessInstance;
-public class KogitoProcessNodeTriggeredEventImpl extends
AbstractProcessNodeEvent implements ProcessNodeTriggeredEvent {
+public class ProcessRetriggeredEventImpl extends ProcessEvent implements
ProcessRetriggeredEvent {
private static final long serialVersionUID = 510l;
- public KogitoProcessNodeTriggeredEventImpl(NodeInstance nodeInstance,
KieRuntime kruntime, String identity) {
- super(nodeInstance, nodeInstance.getProcessInstance(), kruntime,
identity);
-
+ public ProcessRetriggeredEventImpl(ProcessInstance instance, KieRuntime
kruntime, String identity) {
+ super(instance, kruntime, identity);
}
@Override
public String toString() {
- return "==>[ProcessNodeTriggered(nodeId=" +
getNodeInstance().getNodeId() + "; id=" + ((KogitoNodeInstance)
getNodeInstance()).getStringId()
- + "; nodeName=" + getNodeInstance().getNodeName() + ";
processName=" + getProcessInstance().getProcessName() + "; processId=" +
getProcessInstance().getProcessId() + ")]";
+ return "==>[ProcessRetriggered(name=" +
getProcessInstance().getProcessName() + "; id=" +
getProcessInstance().getProcessId() + ")]";
}
-}
+
+}
\ No newline at end of file
diff --git
a/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/NodeInstance.java
b/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/NodeInstance.java
index bb4109242f..62aafe6eaf 100755
--- a/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/NodeInstance.java
+++ b/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/NodeInstance.java
@@ -37,6 +37,8 @@ public interface NodeInstance extends KogitoNodeInstance {
void trigger(KogitoNodeInstance from, String type);
+ void retrigger(boolean remove);
+
void cancel();
void cancel(CancelType type);
diff --git
a/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/impl/NodeInstanceImpl.java
b/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/impl/NodeInstanceImpl.java
index b7e6e07307..b9698aacc2 100755
---
a/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/impl/NodeInstanceImpl.java
+++
b/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/impl/NodeInstanceImpl.java
@@ -93,6 +93,7 @@ public abstract class NodeInstanceImpl implements
org.jbpm.workflow.instance.Nod
protected String slaTimerId;
protected Date triggerTime;
protected Date leaveTime;
+ protected boolean isRetrigger;
protected transient CancelType cancelType;
@@ -112,6 +113,11 @@ public abstract class NodeInstanceImpl implements
org.jbpm.workflow.instance.Nod
return this.id;
}
+ @Override
+ public boolean isRetrigger() {
+ return isRetrigger;
+ }
+
public void setNodeId(WorkflowElementIdentifier nodeId) {
this.nodeId = nodeId;
}
@@ -257,7 +263,7 @@ public abstract class NodeInstanceImpl implements
org.jbpm.workflow.instance.Nod
return;
} else {
logger.error("Node instance causing process instance error in
id {} in a transactional environment (Wrapping)", this.getStringId());
- throw new
ProcessInstanceExecutionException(this.getProcessInstance().getId(),
this.getNodeDefinitionId(), e.getMessage(), e);
+ throw new
ProcessInstanceExecutionException(this.getProcessInstance().getId(),
this.getNodeDefinitionId(), this.getId(), e.getMessage(), e);
}
// stop after capturing error
}
@@ -482,10 +488,12 @@ public abstract class NodeInstanceImpl implements
org.jbpm.workflow.instance.Nod
triggerNodeInstance(followConnection(connection),
connection.getToType());
}
+ @Override
public void retrigger(boolean remove) {
if (remove) {
cancel();
}
+ isRetrigger = true;
triggerNode(getNodeId(), !remove);
}
@@ -743,4 +751,9 @@ public abstract class NodeInstanceImpl implements
org.jbpm.workflow.instance.Nod
}
}
}
+
+ public void internalSetRetrigger(boolean isRetrigger) {
+ this.isRetrigger = isRetrigger;
+
+ }
}
diff --git
a/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/impl/WorkflowProcessInstanceImpl.java
b/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/impl/WorkflowProcessInstanceImpl.java
index 905d2f7092..8dc6e80822 100755
---
a/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/impl/WorkflowProcessInstanceImpl.java
+++
b/jbpm/jbpm-flow/src/main/java/org/jbpm/workflow/instance/impl/WorkflowProcessInstanceImpl.java
@@ -1323,6 +1323,10 @@ public abstract class WorkflowProcessInstanceImpl
extends ProcessInstanceImpl im
this.nodeIdInError = errorNodeId;
}
+ public void internalSetErrorNodeInstanceId(String errorNodeInstanceId) {
+ this.nodeInstanceIdInError = errorNodeInstanceId;
+ }
+
public void internalSetErrorMessage(String errorMessage) {
this.errorMessage = errorMessage;
this.errorCause = Optional.empty();
@@ -1330,6 +1334,7 @@ public abstract class WorkflowProcessInstanceImpl extends
ProcessInstanceImpl im
public void internalSetError(ProcessInstanceExecutionException e) {
this.nodeIdInError = e.getFailedNodeId();
+ this.nodeInstanceIdInError = e.getFailedNodeInstanceId();
Throwable rootException = getRootException(e);
this.errorMessage = rootException instanceof MessageException ?
rootException.getMessage() : rootException.getClass().getCanonicalName() + " -
" + rootException.getMessage();
this.errorCause = Optional.of(e);
diff --git
a/jbpm/jbpm-flow/src/main/java/org/kie/kogito/process/impl/AbstractProcessInstance.java
b/jbpm/jbpm-flow/src/main/java/org/kie/kogito/process/impl/AbstractProcessInstance.java
index 106208afb0..2c49befddf 100644
---
a/jbpm/jbpm-flow/src/main/java/org/kie/kogito/process/impl/AbstractProcessInstance.java
+++
b/jbpm/jbpm-flow/src/main/java/org/kie/kogito/process/impl/AbstractProcessInstance.java
@@ -470,7 +470,6 @@ public abstract class AbstractProcessInstance<T extends
Model> implements Proces
.filter(ni -> ni.getStringId().equals(nodeInstanceId))
.findFirst()
.orElseThrow(() -> new NodeInstanceNotFoundException(this.id,
nodeInstanceId));
-
((NodeInstanceImpl) nodeInstance).retrigger(true);
removeOnFinish();
}
@@ -698,6 +697,7 @@ public abstract class AbstractProcessInstance<T extends
Model> implements Proces
final String errorMessage = pi.getErrorMessage();
final String nodeInError = pi.getNodeIdInError();
+ final String nodeInstanceInError = pi.getNodeInstanceIdInError();
final Throwable errorCause = pi.getErrorCause().orElse(null);
return new ProcessError() {
@@ -706,6 +706,11 @@ public abstract class AbstractProcessInstance<T extends
Model> implements Proces
return nodeInError;
}
+ @Override
+ public String failedNodeInstanceId() {
+ return nodeInstanceInError;
+ }
+
@Override
public String errorMessage() {
return errorMessage;
@@ -719,14 +724,14 @@ public abstract class AbstractProcessInstance<T extends
Model> implements Proces
@Override
public void retrigger() {
WorkflowProcessInstanceImpl pInstance =
(WorkflowProcessInstanceImpl) processInstance();
- NodeInstance ni = pInstance.getByNodeDefinitionId(nodeInError,
pInstance.getNodeContainer());
- pInstance.setState(STATE_ACTIVE);
- pInstance.internalSetErrorNodeId(null);
- pInstance.internalSetErrorMessage(null);
+ NodeInstanceImpl ni = (NodeInstanceImpl)
pInstance.getByNodeDefinitionId(nodeInError, pInstance.getNodeContainer());
+ clearError(pInstance);
+
getProcessRuntime().getProcessEventSupport().fireProcessRetriggered(pInstance,
pInstance.getKnowledgeRuntime());
org.kie.api.runtime.process.NodeInstanceContainer
nodeInstanceContainer = ni.getNodeInstanceContainer();
if (nodeInstanceContainer instanceof NodeInstance) {
((NodeInstance)
nodeInstanceContainer).internalSetTriggerTime(new Date());
}
+ ni.internalSetRetrigger(true);
ni.trigger(null, Node.CONNECTION_DEFAULT_TYPE);
removeOnFinish();
}
@@ -734,12 +739,17 @@ public abstract class AbstractProcessInstance<T extends
Model> implements Proces
@Override
public void skip() {
WorkflowProcessInstanceImpl pInstance =
(WorkflowProcessInstanceImpl) processInstance();
- NodeInstance ni = pInstance.getByNodeDefinitionId(nodeInError,
pInstance.getNodeContainer());
+ NodeInstanceImpl ni = (NodeInstanceImpl)
pInstance.getByNodeDefinitionId(nodeInError, pInstance.getNodeContainer());
+ clearError(pInstance);
+ ni.triggerCompleted(Node.CONNECTION_DEFAULT_TYPE, true);
+ removeOnFinish();
+ }
+
+ private void clearError(WorkflowProcessInstanceImpl pInstance) {
pInstance.setState(STATE_ACTIVE);
pInstance.internalSetErrorNodeId(null);
+ pInstance.internalSetErrorNodeInstanceId(null);
pInstance.internalSetErrorMessage(null);
- ((NodeInstanceImpl)
ni).triggerCompleted(Node.CONNECTION_DEFAULT_TYPE, true);
- removeOnFinish();
}
};
}
diff --git
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/impl/ProtobufProcessInstanceReader.java
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/impl/ProtobufProcessInstanceReader.java
index e42bf3c0a5..1b4594767e 100644
---
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/impl/ProtobufProcessInstanceReader.java
+++
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/impl/ProtobufProcessInstanceReader.java
@@ -155,6 +155,10 @@ public class ProtobufProcessInstanceReader {
processInstance.internalSetErrorNodeId(processInstanceProtobuf.getErrorNodeId());
}
+ if (processInstanceProtobuf.hasErrorNodeInstanceId()) {
+
processInstance.internalSetErrorNodeInstanceId(processInstanceProtobuf.getErrorNodeInstanceId());
+ }
+
if (processInstanceProtobuf.hasErrorMessage()) {
processInstance.internalSetErrorMessage(processInstanceProtobuf.getErrorMessage());
}
@@ -195,6 +199,9 @@ public class ProtobufProcessInstanceReader {
nodeInstanceImpl.setProcessInstance(processInstance);
}
+ if (nodeInstanceProtobuf.hasRetrigger())
+
nodeInstanceImpl.internalSetRetrigger(nodeInstanceProtobuf.getRetrigger());
+
nodeInstanceImpl.setLevel(nodeInstanceProtobuf.getLevel() == 0 ? 1 :
nodeInstanceProtobuf.getLevel());
}
diff --git
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/impl/ProtobufProcessInstanceWriter.java
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/impl/ProtobufProcessInstanceWriter.java
index 700d7abd42..334cc9e2c3 100644
---
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/impl/ProtobufProcessInstanceWriter.java
+++
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/impl/ProtobufProcessInstanceWriter.java
@@ -125,6 +125,9 @@ public class ProtobufProcessInstanceWriter {
if (workFlow.getNodeIdInError() != null) {
instance.setErrorNodeId(workFlow.getNodeIdInError());
}
+ if (workFlow.getNodeInstanceIdInError() != null) {
+
instance.setErrorNodeInstanceId(workFlow.getNodeInstanceIdInError());
+ }
if (workFlow.getErrorMessage() != null) {
instance.setErrorMessage(workFlow.getErrorMessage());
}
@@ -198,7 +201,8 @@ public class ProtobufProcessInstanceWriter {
KogitoTypesProtobuf.NodeInstance.Builder node =
KogitoTypesProtobuf.NodeInstance.newBuilder()
.setId(((KogitoNodeInstance) nodeInstance).getStringId())
.setNodeId(nodeInstance.getNodeId().toExternalFormat())
- .setLevel(((org.jbpm.workflow.instance.NodeInstance)
nodeInstance).getLevel());
+ .setLevel(((org.jbpm.workflow.instance.NodeInstance)
nodeInstance).getLevel())
+ .setRetrigger(((org.jbpm.workflow.instance.NodeInstance)
nodeInstance).isRetrigger());
Date triggerDate = ((org.jbpm.workflow.instance.NodeInstance)
nodeInstance).getTriggerTime();
if (triggerDate != null) {
diff --git
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoNodeInstanceContentsProtobuf.java
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoNodeInstanceContentsProtobuf.java
index 28878ffc32..d8cbb511db 100644
---
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoNodeInstanceContentsProtobuf.java
+++
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoNodeInstanceContentsProtobuf.java
@@ -19,7 +19,7 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source:
org/jbpm/flow/serialization/protobuf/kogito_node_instance_contents.proto
-// Protobuf Java Version: 3.25.0
+// Protobuf Java Version: 3.25.5
package org.jbpm.flow.serialization.protobuf;
public final class KogitoNodeInstanceContentsProtobuf {
diff --git
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoProcessInstanceProtobuf.java
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoProcessInstanceProtobuf.java
index 1e09647188..5b28d9c7aa 100644
---
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoProcessInstanceProtobuf.java
+++
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoProcessInstanceProtobuf.java
@@ -19,7 +19,7 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: org/jbpm/flow/serialization/protobuf/kogito_process_instance.proto
-// Protobuf Java Version: 3.25.0
+// Protobuf Java Version: 3.25.5
package org.jbpm.flow.serialization.protobuf;
public final class KogitoProcessInstanceProtobuf {
@@ -296,6 +296,28 @@ public final class KogitoProcessInstanceProtobuf {
com.google.protobuf.ByteString
getErrorNodeIdBytes();
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return Whether the errorNodeInstanceId field is set.
+ */
+ boolean hasErrorNodeInstanceId();
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return The errorNodeInstanceId.
+ */
+ java.lang.String getErrorNodeInstanceId();
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return The bytes for errorNodeInstanceId.
+ */
+ com.google.protobuf.ByteString
+ getErrorNodeInstanceIdBytes();
+
/**
* <code>optional string error_message = 15;</code>
*
@@ -487,6 +509,7 @@ public final class KogitoProcessInstanceProtobuf {
rootProcessInstanceId_ = "";
rootProcessId_ = "";
errorNodeId_ = "";
+ errorNodeInstanceId_ = "";
errorMessage_ = "";
referenceId_ = "";
swimlaneContext_ = java.util.Collections.emptyList();
@@ -1132,6 +1155,59 @@ public final class KogitoProcessInstanceProtobuf {
}
}
+ public static final int ERROR_NODE_INSTANCE_ID_FIELD_NUMBER = 23;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object errorNodeInstanceId_ = "";
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return Whether the errorNodeInstanceId field is set.
+ */
+ @java.lang.Override
+ public boolean hasErrorNodeInstanceId() {
+ return ((bitField0_ & 0x00000200) != 0);
+ }
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return The errorNodeInstanceId.
+ */
+ @java.lang.Override
+ public java.lang.String getErrorNodeInstanceId() {
+ java.lang.Object ref = errorNodeInstanceId_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ errorNodeInstanceId_ = s;
+ return s;
+ }
+ }
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return The bytes for errorNodeInstanceId.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getErrorNodeInstanceIdBytes() {
+ java.lang.Object ref = errorNodeInstanceId_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ errorNodeInstanceId_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
public static final int ERROR_MESSAGE_FIELD_NUMBER = 15;
@SuppressWarnings("serial")
private volatile java.lang.Object errorMessage_ = "";
@@ -1143,7 +1219,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
@java.lang.Override
public boolean hasErrorMessage() {
- return ((bitField0_ & 0x00000200) != 0);
+ return ((bitField0_ & 0x00000400) != 0);
}
/**
@@ -1196,7 +1272,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
@java.lang.Override
public boolean hasReferenceId() {
- return ((bitField0_ & 0x00000400) != 0);
+ return ((bitField0_ & 0x00000800) != 0);
}
/**
@@ -1248,7 +1324,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
@java.lang.Override
public boolean hasSla() {
- return ((bitField0_ & 0x00000800) != 0);
+ return ((bitField0_ & 0x00001000) != 0);
}
/**
@@ -1279,7 +1355,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
@java.lang.Override
public boolean hasContext() {
- return ((bitField0_ & 0x00001000) != 0);
+ return ((bitField0_ & 0x00002000) != 0);
}
/**
@@ -1402,7 +1478,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
@java.lang.Override
public boolean hasCancelTimerId() {
- return ((bitField0_ & 0x00002000) != 0);
+ return ((bitField0_ & 0x00004000) != 0);
}
/**
@@ -1503,16 +1579,16 @@ public final class KogitoProcessInstanceProtobuf {
if (((bitField0_ & 0x00000100) != 0)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 14,
errorNodeId_);
}
- if (((bitField0_ & 0x00000200) != 0)) {
+ if (((bitField0_ & 0x00000400) != 0)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 15,
errorMessage_);
}
- if (((bitField0_ & 0x00000400) != 0)) {
+ if (((bitField0_ & 0x00000800) != 0)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 16,
referenceId_);
}
- if (((bitField0_ & 0x00000800) != 0)) {
+ if (((bitField0_ & 0x00001000) != 0)) {
output.writeMessage(17, getSla());
}
- if (((bitField0_ & 0x00001000) != 0)) {
+ if (((bitField0_ & 0x00002000) != 0)) {
output.writeMessage(18, getContext());
}
for (int i = 0; i < swimlaneContext_.size(); i++) {
@@ -1521,12 +1597,15 @@ public final class KogitoProcessInstanceProtobuf {
for (int i = 0; i < completedNodeIds_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 20,
completedNodeIds_.getRaw(i));
}
- if (((bitField0_ & 0x00002000) != 0)) {
+ if (((bitField0_ & 0x00004000) != 0)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 21,
cancelTimerId_);
}
if
(!com.google.protobuf.GeneratedMessageV3.isStringEmpty(processVersion_)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 22,
processVersion_);
}
+ if (((bitField0_ & 0x00000200) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 23,
errorNodeInstanceId_);
+ }
getUnknownFields().writeTo(output);
}
@@ -1583,17 +1662,17 @@ public final class KogitoProcessInstanceProtobuf {
if (((bitField0_ & 0x00000100) != 0)) {
size +=
com.google.protobuf.GeneratedMessageV3.computeStringSize(14, errorNodeId_);
}
- if (((bitField0_ & 0x00000200) != 0)) {
+ if (((bitField0_ & 0x00000400) != 0)) {
size +=
com.google.protobuf.GeneratedMessageV3.computeStringSize(15, errorMessage_);
}
- if (((bitField0_ & 0x00000400) != 0)) {
+ if (((bitField0_ & 0x00000800) != 0)) {
size +=
com.google.protobuf.GeneratedMessageV3.computeStringSize(16, referenceId_);
}
- if (((bitField0_ & 0x00000800) != 0)) {
+ if (((bitField0_ & 0x00001000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(17, getSla());
}
- if (((bitField0_ & 0x00001000) != 0)) {
+ if (((bitField0_ & 0x00002000) != 0)) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(18, getContext());
}
@@ -1609,12 +1688,15 @@ public final class KogitoProcessInstanceProtobuf {
size += dataSize;
size += 2 * getCompletedNodeIdsList().size();
}
- if (((bitField0_ & 0x00002000) != 0)) {
+ if (((bitField0_ & 0x00004000) != 0)) {
size +=
com.google.protobuf.GeneratedMessageV3.computeStringSize(21, cancelTimerId_);
}
if
(!com.google.protobuf.GeneratedMessageV3.isStringEmpty(processVersion_)) {
size +=
com.google.protobuf.GeneratedMessageV3.computeStringSize(22, processVersion_);
}
+ if (((bitField0_ & 0x00000200) != 0)) {
+ size +=
com.google.protobuf.GeneratedMessageV3.computeStringSize(23,
errorNodeInstanceId_);
+ }
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
@@ -1707,6 +1789,13 @@ public final class KogitoProcessInstanceProtobuf {
.equals(other.getErrorNodeId()))
return false;
}
+ if (hasErrorNodeInstanceId() != other.hasErrorNodeInstanceId())
+ return false;
+ if (hasErrorNodeInstanceId()) {
+ if (!getErrorNodeInstanceId()
+ .equals(other.getErrorNodeInstanceId()))
+ return false;
+ }
if (hasErrorMessage() != other.hasErrorMessage())
return false;
if (hasErrorMessage()) {
@@ -1811,6 +1900,10 @@ public final class KogitoProcessInstanceProtobuf {
hash = (37 * hash) + ERROR_NODE_ID_FIELD_NUMBER;
hash = (53 * hash) + getErrorNodeId().hashCode();
}
+ if (hasErrorNodeInstanceId()) {
+ hash = (37 * hash) + ERROR_NODE_INSTANCE_ID_FIELD_NUMBER;
+ hash = (53 * hash) + getErrorNodeInstanceId().hashCode();
+ }
if (hasErrorMessage()) {
hash = (37 * hash) + ERROR_MESSAGE_FIELD_NUMBER;
hash = (53 * hash) + getErrorMessage().hashCode();
@@ -2011,6 +2104,7 @@ public final class KogitoProcessInstanceProtobuf {
rootProcessInstanceId_ = "";
rootProcessId_ = "";
errorNodeId_ = "";
+ errorNodeInstanceId_ = "";
errorMessage_ = "";
referenceId_ = "";
sla_ = null;
@@ -2029,7 +2123,7 @@ public final class KogitoProcessInstanceProtobuf {
swimlaneContext_ = null;
swimlaneContextBuilder_.clear();
}
- bitField0_ = (bitField0_ & ~0x00080000);
+ bitField0_ = (bitField0_ & ~0x00100000);
completedNodeIds_ =
com.google.protobuf.LazyStringArrayList.emptyList();
cancelTimerId_ = "";
@@ -2070,9 +2164,9 @@ public final class KogitoProcessInstanceProtobuf {
private void
buildPartialRepeatedFields(org.jbpm.flow.serialization.protobuf.KogitoProcessInstanceProtobuf.ProcessInstance
result) {
if (swimlaneContextBuilder_ == null) {
- if (((bitField0_ & 0x00080000) != 0)) {
+ if (((bitField0_ & 0x00100000) != 0)) {
swimlaneContext_ =
java.util.Collections.unmodifiableList(swimlaneContext_);
- bitField0_ = (bitField0_ & ~0x00080000);
+ bitField0_ = (bitField0_ & ~0x00100000);
}
result.swimlaneContext_ = swimlaneContext_;
} else {
@@ -2138,32 +2232,36 @@ public final class KogitoProcessInstanceProtobuf {
to_bitField0_ |= 0x00000100;
}
if (((from_bitField0_ & 0x00008000) != 0)) {
- result.errorMessage_ = errorMessage_;
+ result.errorNodeInstanceId_ = errorNodeInstanceId_;
to_bitField0_ |= 0x00000200;
}
if (((from_bitField0_ & 0x00010000) != 0)) {
- result.referenceId_ = referenceId_;
+ result.errorMessage_ = errorMessage_;
to_bitField0_ |= 0x00000400;
}
if (((from_bitField0_ & 0x00020000) != 0)) {
+ result.referenceId_ = referenceId_;
+ to_bitField0_ |= 0x00000800;
+ }
+ if (((from_bitField0_ & 0x00040000) != 0)) {
result.sla_ = slaBuilder_ == null
? sla_
: slaBuilder_.build();
- to_bitField0_ |= 0x00000800;
+ to_bitField0_ |= 0x00001000;
}
- if (((from_bitField0_ & 0x00040000) != 0)) {
+ if (((from_bitField0_ & 0x00080000) != 0)) {
result.context_ = contextBuilder_ == null
? context_
: contextBuilder_.build();
- to_bitField0_ |= 0x00001000;
+ to_bitField0_ |= 0x00002000;
}
- if (((from_bitField0_ & 0x00100000) != 0)) {
+ if (((from_bitField0_ & 0x00200000) != 0)) {
completedNodeIds_.makeImmutable();
result.completedNodeIds_ = completedNodeIds_;
}
- if (((from_bitField0_ & 0x00200000) != 0)) {
+ if (((from_bitField0_ & 0x00400000) != 0)) {
result.cancelTimerId_ = cancelTimerId_;
- to_bitField0_ |= 0x00002000;
+ to_bitField0_ |= 0x00004000;
}
result.bitField0_ |= to_bitField0_;
}
@@ -2286,14 +2384,19 @@ public final class KogitoProcessInstanceProtobuf {
bitField0_ |= 0x00004000;
onChanged();
}
+ if (other.hasErrorNodeInstanceId()) {
+ errorNodeInstanceId_ = other.errorNodeInstanceId_;
+ bitField0_ |= 0x00008000;
+ onChanged();
+ }
if (other.hasErrorMessage()) {
errorMessage_ = other.errorMessage_;
- bitField0_ |= 0x00008000;
+ bitField0_ |= 0x00010000;
onChanged();
}
if (other.hasReferenceId()) {
referenceId_ = other.referenceId_;
- bitField0_ |= 0x00010000;
+ bitField0_ |= 0x00020000;
onChanged();
}
if (other.hasSla()) {
@@ -2306,7 +2409,7 @@ public final class KogitoProcessInstanceProtobuf {
if (!other.swimlaneContext_.isEmpty()) {
if (swimlaneContext_.isEmpty()) {
swimlaneContext_ = other.swimlaneContext_;
- bitField0_ = (bitField0_ & ~0x00080000);
+ bitField0_ = (bitField0_ & ~0x00100000);
} else {
ensureSwimlaneContextIsMutable();
swimlaneContext_.addAll(other.swimlaneContext_);
@@ -2319,7 +2422,7 @@ public final class KogitoProcessInstanceProtobuf {
swimlaneContextBuilder_.dispose();
swimlaneContextBuilder_ = null;
swimlaneContext_ = other.swimlaneContext_;
- bitField0_ = (bitField0_ & ~0x00080000);
+ bitField0_ = (bitField0_ & ~0x00100000);
swimlaneContextBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getSwimlaneContextFieldBuilder() : null;
} else {
@@ -2330,7 +2433,7 @@ public final class KogitoProcessInstanceProtobuf {
if (!other.completedNodeIds_.isEmpty()) {
if (completedNodeIds_.isEmpty()) {
completedNodeIds_ = other.completedNodeIds_;
- bitField0_ |= 0x00100000;
+ bitField0_ |= 0x00200000;
} else {
ensureCompletedNodeIdsIsMutable();
completedNodeIds_.addAll(other.completedNodeIds_);
@@ -2339,7 +2442,7 @@ public final class KogitoProcessInstanceProtobuf {
}
if (other.hasCancelTimerId()) {
cancelTimerId_ = other.cancelTimerId_;
- bitField0_ |= 0x00200000;
+ bitField0_ |= 0x00400000;
onChanged();
}
this.mergeUnknownFields(other.getUnknownFields());
@@ -2440,26 +2543,26 @@ public final class KogitoProcessInstanceProtobuf {
} // case 114
case 122: {
errorMessage_ = input.readStringRequireUtf8();
- bitField0_ |= 0x00008000;
+ bitField0_ |= 0x00010000;
break;
} // case 122
case 130: {
referenceId_ = input.readStringRequireUtf8();
- bitField0_ |= 0x00010000;
+ bitField0_ |= 0x00020000;
break;
} // case 130
case 138: {
input.readMessage(
getSlaFieldBuilder().getBuilder(),
extensionRegistry);
- bitField0_ |= 0x00020000;
+ bitField0_ |= 0x00040000;
break;
} // case 138
case 146: {
input.readMessage(
getContextFieldBuilder().getBuilder(),
extensionRegistry);
- bitField0_ |= 0x00040000;
+ bitField0_ |= 0x00080000;
break;
} // case 146
case 154: {
@@ -2483,7 +2586,7 @@ public final class KogitoProcessInstanceProtobuf {
} // case 162
case 170: {
cancelTimerId_ = input.readStringRequireUtf8();
- bitField0_ |= 0x00200000;
+ bitField0_ |= 0x00400000;
break;
} // case 170
case 178: {
@@ -2491,6 +2594,11 @@ public final class KogitoProcessInstanceProtobuf {
bitField0_ |= 0x00000004;
break;
} // case 178
+ case 186: {
+ errorNodeInstanceId_ =
input.readStringRequireUtf8();
+ bitField0_ |= 0x00008000;
+ break;
+ } // case 186
default: {
if (!super.parseUnknownField(input,
extensionRegistry, tag)) {
done = true; // was an endgroup tag
@@ -3690,6 +3798,101 @@ public final class KogitoProcessInstanceProtobuf {
return this;
}
+ private java.lang.Object errorNodeInstanceId_ = "";
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return Whether the errorNodeInstanceId field is set.
+ */
+ public boolean hasErrorNodeInstanceId() {
+ return ((bitField0_ & 0x00008000) != 0);
+ }
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return The errorNodeInstanceId.
+ */
+ public java.lang.String getErrorNodeInstanceId() {
+ java.lang.Object ref = errorNodeInstanceId_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ errorNodeInstanceId_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return The bytes for errorNodeInstanceId.
+ */
+ public com.google.protobuf.ByteString
+ getErrorNodeInstanceIdBytes() {
+ java.lang.Object ref = errorNodeInstanceId_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ errorNodeInstanceId_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @param value The errorNodeInstanceId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setErrorNodeInstanceId(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ errorNodeInstanceId_ = value;
+ bitField0_ |= 0x00008000;
+ onChanged();
+ return this;
+ }
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearErrorNodeInstanceId() {
+ errorNodeInstanceId_ =
getDefaultInstance().getErrorNodeInstanceId();
+ bitField0_ = (bitField0_ & ~0x00008000);
+ onChanged();
+ return this;
+ }
+
+ /**
+ * <code>optional string error_node_instance_id = 23;</code>
+ *
+ * @param value The bytes for errorNodeInstanceId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setErrorNodeInstanceIdBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ errorNodeInstanceId_ = value;
+ bitField0_ |= 0x00008000;
+ onChanged();
+ return this;
+ }
+
private java.lang.Object errorMessage_ = "";
/**
@@ -3698,7 +3901,7 @@ public final class KogitoProcessInstanceProtobuf {
* @return Whether the errorMessage field is set.
*/
public boolean hasErrorMessage() {
- return ((bitField0_ & 0x00008000) != 0);
+ return ((bitField0_ & 0x00010000) != 0);
}
/**
@@ -3750,7 +3953,7 @@ public final class KogitoProcessInstanceProtobuf {
throw new NullPointerException();
}
errorMessage_ = value;
- bitField0_ |= 0x00008000;
+ bitField0_ |= 0x00010000;
onChanged();
return this;
}
@@ -3762,7 +3965,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
public Builder clearErrorMessage() {
errorMessage_ = getDefaultInstance().getErrorMessage();
- bitField0_ = (bitField0_ & ~0x00008000);
+ bitField0_ = (bitField0_ & ~0x00010000);
onChanged();
return this;
}
@@ -3780,7 +3983,7 @@ public final class KogitoProcessInstanceProtobuf {
}
checkByteStringIsUtf8(value);
errorMessage_ = value;
- bitField0_ |= 0x00008000;
+ bitField0_ |= 0x00010000;
onChanged();
return this;
}
@@ -3793,7 +3996,7 @@ public final class KogitoProcessInstanceProtobuf {
* @return Whether the referenceId field is set.
*/
public boolean hasReferenceId() {
- return ((bitField0_ & 0x00010000) != 0);
+ return ((bitField0_ & 0x00020000) != 0);
}
/**
@@ -3845,7 +4048,7 @@ public final class KogitoProcessInstanceProtobuf {
throw new NullPointerException();
}
referenceId_ = value;
- bitField0_ |= 0x00010000;
+ bitField0_ |= 0x00020000;
onChanged();
return this;
}
@@ -3857,7 +4060,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
public Builder clearReferenceId() {
referenceId_ = getDefaultInstance().getReferenceId();
- bitField0_ = (bitField0_ & ~0x00010000);
+ bitField0_ = (bitField0_ & ~0x00020000);
onChanged();
return this;
}
@@ -3875,7 +4078,7 @@ public final class KogitoProcessInstanceProtobuf {
}
checkByteStringIsUtf8(value);
referenceId_ = value;
- bitField0_ |= 0x00010000;
+ bitField0_ |= 0x00020000;
onChanged();
return this;
}
@@ -3889,7 +4092,7 @@ public final class KogitoProcessInstanceProtobuf {
* @return Whether the sla field is set.
*/
public boolean hasSla() {
- return ((bitField0_ & 0x00020000) != 0);
+ return ((bitField0_ & 0x00040000) != 0);
}
/**
@@ -3917,7 +4120,7 @@ public final class KogitoProcessInstanceProtobuf {
} else {
slaBuilder_.setMessage(value);
}
- bitField0_ |= 0x00020000;
+ bitField0_ |= 0x00040000;
onChanged();
return this;
}
@@ -3932,7 +4135,7 @@ public final class KogitoProcessInstanceProtobuf {
} else {
slaBuilder_.setMessage(builderForValue.build());
}
- bitField0_ |= 0x00020000;
+ bitField0_ |= 0x00040000;
onChanged();
return this;
}
@@ -3942,7 +4145,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
public Builder
mergeSla(org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SLAContext
value) {
if (slaBuilder_ == null) {
- if (((bitField0_ & 0x00020000) != 0) &&
+ if (((bitField0_ & 0x00040000) != 0) &&
sla_ != null &&
sla_ !=
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SLAContext.getDefaultInstance())
{
getSlaBuilder().mergeFrom(value);
@@ -3953,7 +4156,7 @@ public final class KogitoProcessInstanceProtobuf {
slaBuilder_.mergeFrom(value);
}
if (sla_ != null) {
- bitField0_ |= 0x00020000;
+ bitField0_ |= 0x00040000;
onChanged();
}
return this;
@@ -3963,7 +4166,7 @@ public final class KogitoProcessInstanceProtobuf {
* <code>optional .org.jbpm.flow.serialization.protobuf.SLAContext
sla = 17;</code>
*/
public Builder clearSla() {
- bitField0_ = (bitField0_ & ~0x00020000);
+ bitField0_ = (bitField0_ & ~0x00040000);
sla_ = null;
if (slaBuilder_ != null) {
slaBuilder_.dispose();
@@ -3977,7 +4180,7 @@ public final class KogitoProcessInstanceProtobuf {
* <code>optional .org.jbpm.flow.serialization.protobuf.SLAContext
sla = 17;</code>
*/
public
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SLAContext.Builder
getSlaBuilder() {
- bitField0_ |= 0x00020000;
+ bitField0_ |= 0x00040000;
onChanged();
return getSlaFieldBuilder().getBuilder();
}
@@ -4018,7 +4221,7 @@ public final class KogitoProcessInstanceProtobuf {
* @return Whether the context field is set.
*/
public boolean hasContext() {
- return ((bitField0_ & 0x00040000) != 0);
+ return ((bitField0_ & 0x00080000) != 0);
}
/**
@@ -4046,7 +4249,7 @@ public final class KogitoProcessInstanceProtobuf {
} else {
contextBuilder_.setMessage(value);
}
- bitField0_ |= 0x00040000;
+ bitField0_ |= 0x00080000;
onChanged();
return this;
}
@@ -4061,7 +4264,7 @@ public final class KogitoProcessInstanceProtobuf {
} else {
contextBuilder_.setMessage(builderForValue.build());
}
- bitField0_ |= 0x00040000;
+ bitField0_ |= 0x00080000;
onChanged();
return this;
}
@@ -4071,7 +4274,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
public Builder
mergeContext(org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.WorkflowContext
value) {
if (contextBuilder_ == null) {
- if (((bitField0_ & 0x00040000) != 0) &&
+ if (((bitField0_ & 0x00080000) != 0) &&
context_ != null &&
context_ !=
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.WorkflowContext.getDefaultInstance())
{
getContextBuilder().mergeFrom(value);
@@ -4082,7 +4285,7 @@ public final class KogitoProcessInstanceProtobuf {
contextBuilder_.mergeFrom(value);
}
if (context_ != null) {
- bitField0_ |= 0x00040000;
+ bitField0_ |= 0x00080000;
onChanged();
}
return this;
@@ -4092,7 +4295,7 @@ public final class KogitoProcessInstanceProtobuf {
* <code>optional
.org.jbpm.flow.serialization.protobuf.WorkflowContext context = 18;</code>
*/
public Builder clearContext() {
- bitField0_ = (bitField0_ & ~0x00040000);
+ bitField0_ = (bitField0_ & ~0x00080000);
context_ = null;
if (contextBuilder_ != null) {
contextBuilder_.dispose();
@@ -4106,7 +4309,7 @@ public final class KogitoProcessInstanceProtobuf {
* <code>optional
.org.jbpm.flow.serialization.protobuf.WorkflowContext context = 18;</code>
*/
public
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.WorkflowContext.Builder
getContextBuilder() {
- bitField0_ |= 0x00040000;
+ bitField0_ |= 0x00080000;
onChanged();
return getContextFieldBuilder().getBuilder();
}
@@ -4142,9 +4345,9 @@ public final class KogitoProcessInstanceProtobuf {
java.util.Collections.emptyList();
private void ensureSwimlaneContextIsMutable() {
- if (!((bitField0_ & 0x00080000) != 0)) {
+ if (!((bitField0_ & 0x00100000) != 0)) {
swimlaneContext_ = new
java.util.ArrayList<org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SwimlaneContext>(swimlaneContext_);
- bitField0_ |= 0x00080000;
+ bitField0_ |= 0x00100000;
}
}
@@ -4303,7 +4506,7 @@ public final class KogitoProcessInstanceProtobuf {
public Builder clearSwimlaneContext() {
if (swimlaneContextBuilder_ == null) {
swimlaneContext_ = java.util.Collections.emptyList();
- bitField0_ = (bitField0_ & ~0x00080000);
+ bitField0_ = (bitField0_ & ~0x00100000);
onChanged();
} else {
swimlaneContextBuilder_.clear();
@@ -4388,7 +4591,7 @@ public final class KogitoProcessInstanceProtobuf {
swimlaneContextBuilder_ =
new
com.google.protobuf.RepeatedFieldBuilderV3<org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SwimlaneContext,
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SwimlaneContext.Builder,
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SwimlaneContextOrBuilder>(
swimlaneContext_,
- ((bitField0_ & 0x00080000) != 0),
+ ((bitField0_ & 0x00100000) != 0),
getParentForChildren(),
isClean());
swimlaneContext_ = null;
@@ -4403,7 +4606,7 @@ public final class KogitoProcessInstanceProtobuf {
if (!completedNodeIds_.isModifiable()) {
completedNodeIds_ = new
com.google.protobuf.LazyStringArrayList(completedNodeIds_);
}
- bitField0_ |= 0x00100000;
+ bitField0_ |= 0x00200000;
}
/**
@@ -4461,7 +4664,7 @@ public final class KogitoProcessInstanceProtobuf {
}
ensureCompletedNodeIdsIsMutable();
completedNodeIds_.set(index, value);
- bitField0_ |= 0x00100000;
+ bitField0_ |= 0x00200000;
onChanged();
return this;
}
@@ -4479,7 +4682,7 @@ public final class KogitoProcessInstanceProtobuf {
}
ensureCompletedNodeIdsIsMutable();
completedNodeIds_.add(value);
- bitField0_ |= 0x00100000;
+ bitField0_ |= 0x00200000;
onChanged();
return this;
}
@@ -4495,7 +4698,7 @@ public final class KogitoProcessInstanceProtobuf {
ensureCompletedNodeIdsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, completedNodeIds_);
- bitField0_ |= 0x00100000;
+ bitField0_ |= 0x00200000;
onChanged();
return this;
}
@@ -4508,7 +4711,7 @@ public final class KogitoProcessInstanceProtobuf {
public Builder clearCompletedNodeIds() {
completedNodeIds_ =
com.google.protobuf.LazyStringArrayList.emptyList();
- bitField0_ = (bitField0_ & ~0x00100000);
+ bitField0_ = (bitField0_ & ~0x00200000);
;
onChanged();
return this;
@@ -4528,7 +4731,7 @@ public final class KogitoProcessInstanceProtobuf {
checkByteStringIsUtf8(value);
ensureCompletedNodeIdsIsMutable();
completedNodeIds_.add(value);
- bitField0_ |= 0x00100000;
+ bitField0_ |= 0x00200000;
onChanged();
return this;
}
@@ -4541,7 +4744,7 @@ public final class KogitoProcessInstanceProtobuf {
* @return Whether the cancelTimerId field is set.
*/
public boolean hasCancelTimerId() {
- return ((bitField0_ & 0x00200000) != 0);
+ return ((bitField0_ & 0x00400000) != 0);
}
/**
@@ -4593,7 +4796,7 @@ public final class KogitoProcessInstanceProtobuf {
throw new NullPointerException();
}
cancelTimerId_ = value;
- bitField0_ |= 0x00200000;
+ bitField0_ |= 0x00400000;
onChanged();
return this;
}
@@ -4605,7 +4808,7 @@ public final class KogitoProcessInstanceProtobuf {
*/
public Builder clearCancelTimerId() {
cancelTimerId_ = getDefaultInstance().getCancelTimerId();
- bitField0_ = (bitField0_ & ~0x00200000);
+ bitField0_ = (bitField0_ & ~0x00400000);
onChanged();
return this;
}
@@ -4623,7 +4826,7 @@ public final class KogitoProcessInstanceProtobuf {
}
checkByteStringIsUtf8(value);
cancelTimerId_ = value;
- bitField0_ |= 0x00200000;
+ bitField0_ |= 0x00400000;
onChanged();
return this;
}
@@ -4705,7 +4908,7 @@ public final class KogitoProcessInstanceProtobuf {
"ogito_process_instance.proto\022$org.jbpm.f" +
"low.serialization.protobuf\0327org/jbpm/flo" +
"w/serialization/protobuf/kogito_types.pr" +
-
"oto\"\372\007\n\017ProcessInstance\022\024\n\014process_type\030" +
+
"oto\"\272\010\n\017ProcessInstance\022\024\n\014process_type\030" +
"\001 \001(\t\022\022\n\nprocess_id\030\002
\001(\t\022\027\n\017process_ver" +
"sion\030\026 \001(\t\022\n\n\002id\030\003
\001(\t\022\'\n\032parent_process" +
"_instance_id\030\004
\001(\tH\000\210\001\001\022\031\n\014business_key\030" +
@@ -4715,23 +4918,25 @@ public final class KogitoProcessInstanceProtobuf {
"_counter\030\n
\001(\003H\005\210\001\001\022\031\n\021signal_completion" +
"\030\013
\001(\010\022%\n\030root_process_instance_id\030\014 \001(\t" +
"H\006\210\001\001\022\034\n\017root_process_id\030\r
\001(\tH\007\210\001\001\022\032\n\re" +
- "rror_node_id\030\016
\001(\tH\010\210\001\001\022\032\n\rerror_message" +
- "\030\017
\001(\tH\t\210\001\001\022\031\n\014reference_id\030\020
\001(\tH\n\210\001\001\022B" +
- "\n\003sla\030\021
\001(\01320.org.jbpm.flow.serializatio" +
-
"n.protobuf.SLAContextH\013\210\001\001\022K\n\007context\030\022 " +
- "\001(\01325.org.jbpm.flow.serialization.protob" +
-
"uf.WorkflowContextH\014\210\001\001\022O\n\020swimlane_cont" +
- "ext\030\023 \003(\01325.org.jbpm.flow.serialization."
+
- "protobuf.SwimlaneContext\022\030\n\020completedNod" +
- "eIds\030\024
\003(\t\022\034\n\017cancel_timer_id\030\025 \001(\tH\r\210\001\001" +
- "B\035\n\033_parent_process_instance_idB\017\n\r_busi"
+
- "ness_keyB\017\n\r_deploymentIdB\016\n\014_descriptio"
+
- "nB\r\n\013_start_dateB\030\n\026_node_instance_count"
+
-
"erB\033\n\031_root_process_instance_idB\022\n\020_root" +
-
"_process_idB\020\n\016_error_node_idB\020\n\016_error_" +
-
"messageB\017\n\r_reference_idB\006\n\004_slaB\n\n\010_con" +
-
"textB\022\n\020_cancel_timer_idB\037B\035KogitoProces" +
- "sInstanceProtobufb\006proto3"
+ "rror_node_id\030\016
\001(\tH\010\210\001\001\022#\n\026error_node_in" +
+ "stance_id\030\027
\001(\tH\t\210\001\001\022\032\n\rerror_message\030\017 " +
+
"\001(\tH\n\210\001\001\022\031\n\014reference_id\030\020
\001(\tH\013\210\001\001\022B\n\003s" +
+ "la\030\021 \001(\01320.org.jbpm.flow.serialization.p"
+
+
"rotobuf.SLAContextH\014\210\001\001\022K\n\007context\030\022 \001(\013" +
+ "25.org.jbpm.flow.serialization.protobuf." +
+
"WorkflowContextH\r\210\001\001\022O\n\020swimlane_context" +
+ "\030\023 \003(\01325.org.jbpm.flow.serialization.pro"
+
+ "tobuf.SwimlaneContext\022\030\n\020completedNodeId" +
+ "s\030\024
\003(\t\022\034\n\017cancel_timer_id\030\025 \001(\tH\016\210\001\001B\035\n" +
+ "\033_parent_process_instance_idB\017\n\r_busines" +
+
"s_keyB\017\n\r_deploymentIdB\016\n\014_descriptionB\r" +
+ "\n\013_start_dateB\030\n\026_node_instance_counterB" +
+
"\033\n\031_root_process_instance_idB\022\n\020_root_pr" +
+
"ocess_idB\020\n\016_error_node_idB\031\n\027_error_nod" +
+ "e_instance_idB\020\n\016_error_messageB\017\n\r_refe"
+
+
"rence_idB\006\n\004_slaB\n\n\010_contextB\022\n\020_cancel_" +
+ "timer_idB\037B\035KogitoProcessInstanceProtobu" +
+ "fb\006proto3"
};
descriptor = com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
@@ -4743,8 +4948,8 @@ public final class KogitoProcessInstanceProtobuf {
internal_static_org_jbpm_flow_serialization_protobuf_ProcessInstance_fieldAccessorTable
= new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_org_jbpm_flow_serialization_protobuf_ProcessInstance_descriptor,
new java.lang.String[] { "ProcessType", "ProcessId",
"ProcessVersion", "Id", "ParentProcessInstanceId", "BusinessKey",
"DeploymentId", "Description", "State", "StartDate",
- "NodeInstanceCounter", "SignalCompletion",
"RootProcessInstanceId", "RootProcessId", "ErrorNodeId", "ErrorMessage",
"ReferenceId", "Sla", "Context", "SwimlaneContext",
- "CompletedNodeIds", "CancelTimerId", });
+ "NodeInstanceCounter", "SignalCompletion",
"RootProcessInstanceId", "RootProcessId", "ErrorNodeId", "ErrorNodeInstanceId",
"ErrorMessage", "ReferenceId", "Sla", "Context",
+ "SwimlaneContext", "CompletedNodeIds",
"CancelTimerId", });
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.getDescriptor();
}
diff --git
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoTypesProtobuf.java
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoTypesProtobuf.java
index 51922a02ed..9b9fee6326 100644
---
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoTypesProtobuf.java
+++
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoTypesProtobuf.java
@@ -19,7 +19,7 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: org/jbpm/flow/serialization/protobuf/kogito_types.proto
-// Protobuf Java Version: 3.25.0
+// Protobuf Java Version: 3.25.5
package org.jbpm.flow.serialization.protobuf;
public final class KogitoTypesProtobuf {
@@ -2355,6 +2355,20 @@ public final class KogitoTypesProtobuf {
* <code>optional .org.jbpm.flow.serialization.protobuf.SLAContext sla
= 6;</code>
*/
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SLAContextOrBuilder
getSlaOrBuilder();
+
+ /**
+ * <code>optional bool retrigger = 7;</code>
+ *
+ * @return Whether the retrigger field is set.
+ */
+ boolean hasRetrigger();
+
+ /**
+ * <code>optional bool retrigger = 7;</code>
+ *
+ * @return The retrigger.
+ */
+ boolean getRetrigger();
}
/**
@@ -2591,6 +2605,29 @@ public final class KogitoTypesProtobuf {
return sla_ == null ?
org.jbpm.flow.serialization.protobuf.KogitoTypesProtobuf.SLAContext.getDefaultInstance()
: sla_;
}
+ public static final int RETRIGGER_FIELD_NUMBER = 7;
+ private boolean retrigger_ = false;
+
+ /**
+ * <code>optional bool retrigger = 7;</code>
+ *
+ * @return Whether the retrigger field is set.
+ */
+ @java.lang.Override
+ public boolean hasRetrigger() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+
+ /**
+ * <code>optional bool retrigger = 7;</code>
+ *
+ * @return The retrigger.
+ */
+ @java.lang.Override
+ public boolean getRetrigger() {
+ return retrigger_;
+ }
+
private byte memoizedIsInitialized = -1;
@java.lang.Override
@@ -2626,6 +2663,9 @@ public final class KogitoTypesProtobuf {
if (((bitField0_ & 0x00000008) != 0)) {
output.writeMessage(6, getSla());
}
+ if (((bitField0_ & 0x00000010) != 0)) {
+ output.writeBool(7, retrigger_);
+ }
getUnknownFields().writeTo(output);
}
@@ -2658,6 +2698,10 @@ public final class KogitoTypesProtobuf {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(6, getSla());
}
+ if (((bitField0_ & 0x00000010) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBoolSize(7, retrigger_);
+ }
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
@@ -2705,6 +2749,12 @@ public final class KogitoTypesProtobuf {
.equals(other.getSla()))
return false;
}
+ if (hasRetrigger() != other.hasRetrigger())
+ return false;
+ if (hasRetrigger()) {
+ if (getRetrigger() != other.getRetrigger())
+ return false;
+ }
if (!getUnknownFields().equals(other.getUnknownFields()))
return false;
return true;
@@ -2738,6 +2788,11 @@ public final class KogitoTypesProtobuf {
hash = (37 * hash) + SLA_FIELD_NUMBER;
hash = (53 * hash) + getSla().hashCode();
}
+ if (hasRetrigger()) {
+ hash = (37 * hash) + RETRIGGER_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
+ getRetrigger());
+ }
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
@@ -2907,6 +2962,7 @@ public final class KogitoTypesProtobuf {
slaBuilder_.dispose();
slaBuilder_ = null;
}
+ retrigger_ = false;
return this;
}
@@ -2969,6 +3025,10 @@ public final class KogitoTypesProtobuf {
: slaBuilder_.build();
to_bitField0_ |= 0x00000008;
}
+ if (((from_bitField0_ & 0x00000040) != 0)) {
+ result.retrigger_ = retrigger_;
+ to_bitField0_ |= 0x00000010;
+ }
result.bitField0_ |= to_bitField0_;
}
@@ -3045,6 +3105,9 @@ public final class KogitoTypesProtobuf {
if (other.hasSla()) {
mergeSla(other.getSla());
}
+ if (other.hasRetrigger()) {
+ setRetrigger(other.getRetrigger());
+ }
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
@@ -3105,6 +3168,11 @@ public final class KogitoTypesProtobuf {
bitField0_ |= 0x00000020;
break;
} // case 50
+ case 56: {
+ retrigger_ = input.readBool();
+ bitField0_ |= 0x00000040;
+ break;
+ } // case 56
default: {
if (!super.parseUnknownField(input,
extensionRegistry, tag)) {
done = true; // was an endgroup tag
@@ -3648,6 +3716,54 @@ public final class KogitoTypesProtobuf {
return slaBuilder_;
}
+ private boolean retrigger_;
+
+ /**
+ * <code>optional bool retrigger = 7;</code>
+ *
+ * @return Whether the retrigger field is set.
+ */
+ @java.lang.Override
+ public boolean hasRetrigger() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+
+ /**
+ * <code>optional bool retrigger = 7;</code>
+ *
+ * @return The retrigger.
+ */
+ @java.lang.Override
+ public boolean getRetrigger() {
+ return retrigger_;
+ }
+
+ /**
+ * <code>optional bool retrigger = 7;</code>
+ *
+ * @param value The retrigger to set.
+ * @return This builder for chaining.
+ */
+ public Builder setRetrigger(boolean value) {
+
+ retrigger_ = value;
+ bitField0_ |= 0x00000040;
+ onChanged();
+ return this;
+ }
+
+ /**
+ * <code>optional bool retrigger = 7;</code>
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearRetrigger() {
+ bitField0_ = (bitField0_ & ~0x00000040);
+ retrigger_ = false;
+ onChanged();
+ return this;
+ }
+
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
@@ -8965,31 +9081,32 @@ public final class KogitoTypesProtobuf {
"to\"\033\n\010JsonNode\022\017\n\007content\030\001
\001(\t\"\033\n\010Docum" +
"ent\022\017\n\007content\030\001
\001(\t\"_\n\010Variable\022\014\n\004name" +
"\030\001 \001(\t\022\021\n\tdata_type\030\002
\001(\t\022(\n\005value\030\003 \001(\013" +
-
"2\024.google.protobuf.AnyH\000\210\001\001B\010\n\006_value\"\350\001" +
+
"2\024.google.protobuf.AnyH\000\210\001\001B\010\n\006_value\"\216\002" +
"\n\014NodeInstance\022\n\n\002id\030\001
\001(\t\022\017\n\007node_id\030\002 " +
"\001(\t\022%\n\007content\030\003
\001(\0132\024.google.protobuf.A" +
"ny\022\022\n\005level\030\004
\001(\005H\000\210\001\001\022\031\n\014trigger_date\030\005" +
" \001(\003H\001\210\001\001\022B\n\003sla\030\006
\001(\01320.org.jbpm.flow.s" +
-
"erialization.protobuf.SLAContextH\002\210\001\001B\010\n" +
-
"\006_levelB\017\n\r_trigger_dateB\006\n\004_sla\"\277\002\n\017Wor" +
- "kflowContext\022@\n\010variable\030\001
\003(\0132..org.jbp" +
- "m.flow.serialization.protobuf.Variable\022I" +
- "\n\rnode_instance\030\002
\003(\01322.org.jbpm.flow.se" +
- "rialization.protobuf.NodeInstance\022P\n\017exc" +
- "lusive_group\030\003 \003(\01327.org.jbpm.flow.seria"
+
- "lization.protobuf.NodeInstanceGroup\022M\n\017i" +
- "terationLevels\030\004 \003(\01324.org.jbpm.flow.ser"
+
- "ialization.protobuf.IterationLevel\"Y\n\017Sw" +
- "imlaneContext\022\025\n\010swimlane\030\001
\001(\tH\000\210\001\001\022\025\n\010" +
- "actor_id\030\002
\001(\tH\001\210\001\001B\013\n\t_swimlaneB\013\n\t_act" +
-
"or_id\"\224\001\n\nSLAContext\022\031\n\014sla_timer_id\030\001 \001" +
-
"(\tH\000\210\001\001\022\031\n\014sla_due_date\030\002
\001(\003H\001\210\001\001\022\033\n\016sl" +
- "a_compliance\030\003
\001(\005H\002\210\001\001B\017\n\r_sla_timer_id" +
-
"B\017\n\r_sla_due_dateB\021\n\017_sla_compliance\"F\n\016" +
- "IterationLevel\022\017\n\002id\030\001
\001(\tH\000\210\001\001\022\022\n\005level" +
- "\030\002
\001(\005H\001\210\001\001B\005\n\003_idB\010\n\006_level\"3\n\021NodeInst" +
- "anceGroup\022\036\n\026group_node_instance_id\030\001
\003(" +
- "\tB\025B\023KogitoTypesProtobufb\006proto3"
+
"erialization.protobuf.SLAContextH\002\210\001\001\022\026\n" +
+ "\tretrigger\030\007
\001(\010H\003\210\001\001B\010\n\006_levelB\017\n\r_trig" +
+
"ger_dateB\006\n\004_slaB\014\n\n_retrigger\"\277\002\n\017Workf" +
+ "lowContext\022@\n\010variable\030\001
\003(\0132..org.jbpm." +
+ "flow.serialization.protobuf.Variable\022I\n\r" +
+ "node_instance\030\002 \003(\01322.org.jbpm.flow.seri"
+
+ "alization.protobuf.NodeInstance\022P\n\017exclu" +
+ "sive_group\030\003 \003(\01327.org.jbpm.flow.seriali"
+
+ "zation.protobuf.NodeInstanceGroup\022M\n\017ite" +
+ "rationLevels\030\004 \003(\01324.org.jbpm.flow.seria"
+
+ "lization.protobuf.IterationLevel\"Y\n\017Swim" +
+ "laneContext\022\025\n\010swimlane\030\001
\001(\tH\000\210\001\001\022\025\n\010ac" +
+ "tor_id\030\002
\001(\tH\001\210\001\001B\013\n\t_swimlaneB\013\n\t_actor" +
+
"_id\"\224\001\n\nSLAContext\022\031\n\014sla_timer_id\030\001 \001(\t" +
+ "H\000\210\001\001\022\031\n\014sla_due_date\030\002
\001(\003H\001\210\001\001\022\033\n\016sla_" +
+ "compliance\030\003
\001(\005H\002\210\001\001B\017\n\r_sla_timer_idB\017" +
+
"\n\r_sla_due_dateB\021\n\017_sla_compliance\"F\n\016It" +
+ "erationLevel\022\017\n\002id\030\001
\001(\tH\000\210\001\001\022\022\n\005level\030\002" +
+ "
\001(\005H\001\210\001\001B\005\n\003_idB\010\n\006_level\"3\n\021NodeInstan" +
+ "ceGroup\022\036\n\026group_node_instance_id\030\001
\003(\tB" +
+ "\025B\023KogitoTypesProtobufb\006proto3"
};
descriptor = com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
@@ -9015,7 +9132,7 @@ public final class KogitoTypesProtobuf {
getDescriptor().getMessageTypes().get(3);
internal_static_org_jbpm_flow_serialization_protobuf_NodeInstance_fieldAccessorTable
= new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_org_jbpm_flow_serialization_protobuf_NodeInstance_descriptor,
- new java.lang.String[] { "Id", "NodeId", "Content", "Level",
"TriggerDate", "Sla", });
+ new java.lang.String[] { "Id", "NodeId", "Content", "Level",
"TriggerDate", "Sla", "Retrigger", });
internal_static_org_jbpm_flow_serialization_protobuf_WorkflowContext_descriptor
=
getDescriptor().getMessageTypes().get(4);
internal_static_org_jbpm_flow_serialization_protobuf_WorkflowContext_fieldAccessorTable
= new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
diff --git
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoWorkItemsProtobuf.java
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoWorkItemsProtobuf.java
index a48b5b9306..878e4fcd34 100644
---
a/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoWorkItemsProtobuf.java
+++
b/jbpm/process-serialization-protobuf/src/main/java/org/jbpm/flow/serialization/protobuf/KogitoWorkItemsProtobuf.java
@@ -19,7 +19,7 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: org/jbpm/flow/serialization/protobuf/kogito_work_items.proto
-// Protobuf Java Version: 3.25.0
+// Protobuf Java Version: 3.25.5
package org.jbpm.flow.serialization.protobuf;
public final class KogitoWorkItemsProtobuf {
diff --git
a/jbpm/process-serialization-protobuf/src/main/resources/org/jbpm/flow/serialization/protobuf/kogito_process_instance.proto
b/jbpm/process-serialization-protobuf/src/main/resources/org/jbpm/flow/serialization/protobuf/kogito_process_instance.proto
index f6a8f1d7d5..8ca359d98b 100644
---
a/jbpm/process-serialization-protobuf/src/main/resources/org/jbpm/flow/serialization/protobuf/kogito_process_instance.proto
+++
b/jbpm/process-serialization-protobuf/src/main/resources/org/jbpm/flow/serialization/protobuf/kogito_process_instance.proto
@@ -47,6 +47,7 @@ message ProcessInstance {
optional string root_process_id = 13;
optional string error_node_id = 14;
+ optional string error_node_instance_id=23;
optional string error_message = 15;
optional string reference_id = 16;
diff --git
a/jbpm/process-serialization-protobuf/src/main/resources/org/jbpm/flow/serialization/protobuf/kogito_types.proto
b/jbpm/process-serialization-protobuf/src/main/resources/org/jbpm/flow/serialization/protobuf/kogito_types.proto
index 2bde059971..caafd2aa66 100644
---
a/jbpm/process-serialization-protobuf/src/main/resources/org/jbpm/flow/serialization/protobuf/kogito_types.proto
+++
b/jbpm/process-serialization-protobuf/src/main/resources/org/jbpm/flow/serialization/protobuf/kogito_types.proto
@@ -48,6 +48,7 @@ message NodeInstance {
optional int64 trigger_date = 5;
optional SLAContext sla = 6;
+ optional bool retrigger= 7;
}
message WorkflowContext {
diff --git
a/kogito-codegen-modules/kogito-codegen-processes-integration-tests/src/test/java/org/kie/kogito/codegen/tests/PublishEventIT.java
b/kogito-codegen-modules/kogito-codegen-processes-integration-tests/src/test/java/org/kie/kogito/codegen/tests/PublishEventIT.java
index 5284672e0a..956323277a 100644
---
a/kogito-codegen-modules/kogito-codegen-processes-integration-tests/src/test/java/org/kie/kogito/codegen/tests/PublishEventIT.java
+++
b/kogito-codegen-modules/kogito-codegen-processes-integration-tests/src/test/java/org/kie/kogito/codegen/tests/PublishEventIT.java
@@ -497,15 +497,20 @@ public class PublishEventIT extends AbstractCodegenIT {
uow = app.unitOfWorkManager().newUnitOfWork();
uow.start();
+ int stateEventCount;
if (processInstance.error().isPresent()) {
+ stateEventCount = 2;
((ProcessError) processInstance.error().get()).retrigger();
+ } else {
+ stateEventCount = 1;
}
+
uow.end();
events =
publisher.extract().stream().filter(ProcessInstanceStateDataEvent.class::isInstance).collect(Collectors.toList());
- assertThat(events).hasSize(1);
+ assertThat(events).hasSize(stateEventCount);
- assertProcessInstanceEvent(events.get(0),
"ServiceProcessDifferentOperations", "Service Process", 2);
+ assertProcessInstanceEvent(events.get(stateEventCount - 1),
"ServiceProcessDifferentOperations", "Service Process", 2);
assertThat(processInstance.status()).isEqualTo(ProcessInstance.STATE_COMPLETED);
Model result = (Model) processInstance.variables();
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]