Details
-
Bug Report
-
Resolution: None
-
L3 - Default
-
None
-
None
-
None
Description
When I try to upgrade camunda engine from 7.8.X to the version after 7.9.0. The following code breaks.
public class RuntimeServiceMock implements RuntimeService { private final DelegateExecution execution; public RuntimeServiceMock(DelegateExecution execution) { this.execution = execution; } @Override public void setVariable(String executionId, String variableName, Object value) { this.execution.setVariable(variableName, value); } @Override public void setVariables(String executionId, Map<String, ? extends Object> execution) { this.execution.setVariables(execution); } @Override public void setVariableLocal(String executionId, String variableName, Object value) { this.execution.setVariableLocal(variableName, value); } @Override public void setVariablesLocal(String executionId, Map<String, ? extends Object> execution) { this.execution.setVariablesLocal(execution); } @Override public Object getVariable(String executionId, String variableName) { return this.execution.getVariable(variableName); } @Override public <T extends TypedValue> T getVariableTyped(String executionId, String variableName) { return this.execution.getVariableTyped(variableName); } @Override public <T extends TypedValue> T getVariableTyped(String executionId, String variableName, boolean deserializeValue) { return this.execution.getVariableTyped(variableName, deserializeValue); } @Override public Object getVariableLocal(String executionId, String variableName) { return this.execution.getVariableLocal(variableName); } @Override public <T extends TypedValue> T getVariableLocalTyped(String executionId, String variableName) { return this.execution.getVariableLocalTyped(variableName); } @Override public <T extends TypedValue> T getVariableLocalTyped(String executionId, String variableName, boolean deserializeValue) { return this.execution.getVariableLocalTyped(variableName, deserializeValue); } @Override public Map<String, Object> getVariables(String executionId) { return this.execution.getVariables(); } @Override public VariableMap getVariablesTyped(String executionId) { return this.execution.getVariablesTyped(); } @Override public VariableMap getVariablesTyped(String executionId, boolean deserializeValues) { return this.execution.getVariablesTyped(deserializeValues); } @Override public Map<String, Object> getVariablesLocal(String executionId) { return this.execution.getVariablesLocal(); } @Override public VariableMap getVariablesLocalTyped(String executionId) { return this.execution.getVariablesLocalTyped(); } @Override public VariableMap getVariablesLocalTyped(String executionId, boolean deserializeValues) { return this.execution.getVariablesLocalTyped(deserializeValues); } @Override public Map<String, Object> getVariables(String executionId, Collection<String> variableNames) { Map<String, Object> vars = this.execution.getVariables(); Map<String, Object> result = new HashMap<>(); for (String string : variableNames) { result.put(string, vars.get(string)); } return result; } @Override public VariableMap getVariablesTyped(String executionId, Collection<String> variableNames, boolean deserializeValues) { Map<String, Object> vars = this.execution.getVariablesTyped(deserializeValues); Map<String, Object> result = new HashMap<>(); for (String string : variableNames) { result.put(string, vars.get(string)); } return (VariableMap) result; } @Override public Map<String, Object> getVariablesLocal(String executionId, Collection<String> variableNames) { Map<String, Object> vars = this.execution.getVariablesLocal(); Map<String, Object> result = new HashMap<>(); for (String string : variableNames) { result.put(string, vars.get(string)); } return result; } @Override public VariableMap getVariablesLocalTyped(String executionId, Collection<String> variableNames, boolean deserializeValues) { Map<String, Object> vars = this.execution.getVariablesLocalTyped(); Map<String, Object> result = new HashMap<>(); for (String string : variableNames) { result.put(string, vars.get(string)); } return (VariableMap) result; } @Override public void removeVariable(String executionId, String variableName) { this.execution.removeVariable(variableName); } @Override public void removeVariableLocal(String executionId, String variableName) { this.execution.removeVariableLocal(variableName); } @Override public void removeVariables(String executionId, Collection<String> variableNames) { this.execution.removeVariables(variableNames); } @Override public void removeVariablesLocal(String executionId, Collection<String> variableNames) { this.execution.removeVariablesLocal(variableNames); } // ********************************************* // NOT RECOMMENDED // ********************************************* @Override public ProcessInstance startProcessInstanceByKey(String processDefinitionKey) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByKey(String processDefinitionKey, String businessKey) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByKey(String processDefinitionKey, String businessKey, String caseInstanceId) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByKey(String processDefinitionKey, Map<String, Object> variables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByKey(String processDefinitionKey, String businessKey, Map<String, Object> variables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByKey(String processDefinitionKey, String businessKey, String caseInstanceId, Map<String, Object> variables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceById(String processDefinitionId) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceById(String processDefinitionId, String businessKey) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceById(String processDefinitionId, String businessKey, String caseInstanceId) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceById(String processDefinitionId, Map<String, Object> variables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceById(String processDefinitionId, String businessKey, Map<String, Object> variables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceById(String processDefinitionId, String businessKey, String caseInstanceId, Map<String, Object> variables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByMessage(String messageName) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByMessage(String messageName, String businessKey) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByMessage(String messageName, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByMessage(String messageName, String businessKey, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByMessageAndProcessDefinitionId(String messageName, String processDefinitionId) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByMessageAndProcessDefinitionId(String messageName, String processDefinitionId, String businessKey) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByMessageAndProcessDefinitionId(String messageName, String processDefinitionId, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public ProcessInstance startProcessInstanceByMessageAndProcessDefinitionId(String messageName, String processDefinitionId, String businessKey, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public void deleteProcessInstance(String processInstanceId, String deleteReason) { throw new RuntimeException(); } @Override public Batch deleteProcessInstancesAsync(List<String> processInstanceIds, ProcessInstanceQuery processInstanceQuery, String deleteReason) { throw new RuntimeException(); } @Override public Batch deleteProcessInstancesAsync(List<String> processInstanceIds, ProcessInstanceQuery processInstanceQuery, String deleteReason, boolean skipCustomListeners) { throw new RuntimeException(); } @Override public Batch deleteProcessInstancesAsync(List<String> processInstanceIds, ProcessInstanceQuery processInstanceQuery, String deleteReason, boolean skipCustomListeners, boolean skipSubprocesses) { throw new RuntimeException(); } @Override public Batch deleteProcessInstancesAsync(ProcessInstanceQuery processInstanceQuery, String deleteReason) { throw new RuntimeException(); } @Override public Batch deleteProcessInstancesAsync(List<String> processInstanceIds, String deleteReason) { throw new RuntimeException(); } @Override public void deleteProcessInstance(String processInstanceId, String deleteReason, boolean skipCustomListeners) { throw new RuntimeException(); } @Override public void deleteProcessInstance(String processInstanceId, String deleteReason, boolean skipCustomListeners, boolean externallyTerminated) { throw new RuntimeException(); } @Override public void deleteProcessInstances(List<String> processInstanceIds, String deleteReason, boolean skipCustomListeners, boolean externallyTerminated) { throw new RuntimeException(); } @Override public void deleteProcessInstances(List<String> processInstanceIds, String deleteReason, boolean skipCustomListeners, boolean externallyTerminated, boolean skipSubprocesses) { throw new RuntimeException(); } @Override public void deleteProcessInstance(String processInstanceId, String deleteReason, boolean skipCustomListeners, boolean externallyTerminated, boolean skipIoMappings) { throw new RuntimeException(); } @Override public void deleteProcessInstance(String processInstanceId, String deleteReason, boolean skipCustomListeners, boolean externallyTerminated, boolean skipIoMappings, boolean skipSubprocesses) { throw new RuntimeException(); } @Override public List<String> getActiveActivityIds(String executionId) { throw new RuntimeException(); } @Override public ActivityInstance getActivityInstance(String processInstanceId) { throw new RuntimeException(); } @Override public void signal(String executionId) { throw new RuntimeException(); } @Override public void signal(String executionId, String signalName, Object signalData, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public void signal(String executionId, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public ExecutionQuery createExecutionQuery() { throw new RuntimeException(); } @Override public NativeExecutionQuery createNativeExecutionQuery() { throw new RuntimeException(); } @Override public ProcessInstanceQuery createProcessInstanceQuery() { throw new RuntimeException(); } @Override public NativeProcessInstanceQuery createNativeProcessInstanceQuery() { throw new RuntimeException(); } @Override public IncidentQuery createIncidentQuery() { throw new RuntimeException(); } @Override public EventSubscriptionQuery createEventSubscriptionQuery() { throw new RuntimeException(); } @Override public VariableInstanceQuery createVariableInstanceQuery() { throw new RuntimeException(); } @Override public void suspendProcessInstanceById(String processInstanceId) { throw new RuntimeException(); } @Override public void suspendProcessInstanceByProcessDefinitionId(String processDefinitionId) { throw new RuntimeException(); } @Override public void suspendProcessInstanceByProcessDefinitionKey(String processDefinitionKey) { throw new RuntimeException(); } @Override public void activateProcessInstanceById(String processInstanceId) { throw new RuntimeException(); } @Override public void activateProcessInstanceByProcessDefinitionId(String processDefinitionId) { throw new RuntimeException(); } @Override public void activateProcessInstanceByProcessDefinitionKey(String processDefinitionKey) { throw new RuntimeException(); } @Override public UpdateProcessInstanceSuspensionStateSelectBuilder updateProcessInstanceSuspensionState() { throw new RuntimeException(); } @Override public void signalEventReceived(String signalName) { throw new RuntimeException(); } @Override public void signalEventReceived(String signalName, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public void signalEventReceived(String signalName, String executionId) { throw new RuntimeException(); } @Override public void signalEventReceived(String signalName, String executionId, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public SignalEventReceivedBuilder createSignalEvent(String signalName) { throw new RuntimeException(); } @Override public void messageEventReceived(String messageName, String executionId) { throw new RuntimeException(); } @Override public void messageEventReceived(String messageName, String executionId, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public MessageCorrelationBuilder createMessageCorrelation(String messageName) { throw new RuntimeException(); } @Override public void correlateMessage(String messageName) { throw new RuntimeException(); } @Override public void correlateMessage(String messageName, String businessKey) { throw new RuntimeException(); } @Override public void correlateMessage(String messageName, Map<String, Object> correlationKeys) { throw new RuntimeException(); } @Override public void correlateMessage(String messageName, String businessKey, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public void correlateMessage(String messageName, Map<String, Object> correlationKeys, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public void correlateMessage(String messageName, String businessKey, Map<String, Object> correlationKeys, Map<String, Object> processVariables) { throw new RuntimeException(); } @Override public ProcessInstanceModificationBuilder createProcessInstanceModification(String processInstanceId) { throw new RuntimeException(); } @Override public ProcessInstantiationBuilder createProcessInstanceById(String processDefinitionId) { throw new RuntimeException(); } @Override public ProcessInstantiationBuilder createProcessInstanceByKey(String processDefinitionKey) { throw new RuntimeException(); } @Override public MigrationPlanBuilder createMigrationPlan(String sourceProcessDefinitionId, String targetProcessDefinitionId) { throw new RuntimeException(); } @Override public MigrationPlanExecutionBuilder newMigration(MigrationPlan migrationPlan) { throw new RuntimeException(); } @Override public ModificationBuilder createModification(String processDefinitionId) { throw new RuntimeException(); } @Override public RestartProcessInstanceBuilder restartProcessInstances(String processDefinitionId) { throw new RuntimeException(); } @Override public Incident createIncident(String incidentType, String executionId, String configuration) { throw new RuntimeException(); } @Override public Incident createIncident(String incidentType, String executionId, String configuration, String message) { throw new RuntimeException(); } @Override public void resolveIncident(String incidentId) { throw new RuntimeException(); } }
The code should pass, but it throws an error:
RuntimeServiceMock is not abstract and does not override abstract method createConditionEvaluation() in org.camunda.bpm.engine.RuntimeService