Class CreateProcessInstanceCommandImpl
java.lang.Object
io.camunda.zeebe.client.impl.command.CreateProcessInstanceCommandImpl
- All Implemented Interfaces:
CreateProcessInstanceCommandStep1
,CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep2
,CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
,FinalCommandStep<ProcessInstanceEvent>
public final class CreateProcessInstanceCommandImpl
extends Object
implements CreateProcessInstanceCommandStep1, CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep2, CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.camunda.zeebe.client.api.command.CreateProcessInstanceCommandStep1
CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep2, CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3, CreateProcessInstanceCommandStep1.CreateProcessInstanceWithResultCommandStep1
-
Field Summary
Fields inherited from interface io.camunda.zeebe.client.api.command.CreateProcessInstanceCommandStep1
LATEST_VERSION
-
Constructor Summary
ConstructorDescriptionCreateProcessInstanceCommandImpl
(GatewayGrpc.GatewayStub asyncStub, JsonMapper jsonMapper, Duration requestTimeout, Predicate<Throwable> retryPredicate) -
Method Summary
Modifier and TypeMethodDescriptionbpmnProcessId
(String id) Set the BPMN process id of the process to create an instance of.Use the latest version of the process to create an instance of.processDefinitionKey
(long processDefinitionKey) Set the key of the process to create an instance of.requestTimeout
(Duration requestTimeout) Sets the request timeout for the command.send()
Sends the command to the Zeebe broker.startBeforeElement
(String elementId) Overrides the default start position of the process.variables
(InputStream variables) Set the initial variables of the process instance.Set the initial variables of the process instance.Set the initial variables of the process instance.Set the initial variables of the process instance.version
(int version) Set the version of the process to create an instance of.When this method is called, the response to the command will be received after the process is completed.
-
Constructor Details
-
CreateProcessInstanceCommandImpl
public CreateProcessInstanceCommandImpl(GatewayGrpc.GatewayStub asyncStub, JsonMapper jsonMapper, Duration requestTimeout, Predicate<Throwable> retryPredicate)
-
-
Method Details
-
variables
public CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3 variables(InputStream variables) Description copied from interface:CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
Set the initial variables of the process instance.- Specified by:
variables
in interfaceCreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
- Parameters:
variables
- the variables JSON document as stream- Returns:
- the builder for this command. Call
FinalCommandStep.send()
to complete the command and send it to the broker.
-
variables
public CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3 variables(String variables) Description copied from interface:CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
Set the initial variables of the process instance.- Specified by:
variables
in interfaceCreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
- Parameters:
variables
- the variables JSON document as String- Returns:
- the builder for this command. Call
FinalCommandStep.send()
to complete the command and send it to the broker.
-
variables
public CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3 variables(Map<String, Object> variables) Description copied from interface:CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
Set the initial variables of the process instance.- Specified by:
variables
in interfaceCreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
- Parameters:
variables
- the variables document as map- Returns:
- the builder for this command. Call
FinalCommandStep.send()
to complete the command and send it to the broker.
-
variables
public CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3 variables(Object variables) Description copied from interface:CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
Set the initial variables of the process instance.- Specified by:
variables
in interfaceCreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
- Parameters:
variables
- the variables document as object to be serialized to JSON- Returns:
- the builder for this command. Call
FinalCommandStep.send()
to complete the command and send it to the broker.
-
startBeforeElement
public CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3 startBeforeElement(String elementId) Description copied from interface:CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
Overrides the default start position of the process. Calling this method will make the process start at the givenelementId
, if possible. This method can be called more than once to simultaneously start at different elements in different branches of the process.- Specified by:
startBeforeElement
in interfaceCreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
- Parameters:
elementId
- the id of the BPMN element where to start the process instance- Returns:
- the builder for this command. Call
FinalCommandStep.send()
to complete the command and send * it to the broker.
-
withResult
Description copied from interface:CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
When this method is called, the response to the command will be received after the process is completed. The response consists of a set of variables.- Specified by:
withResult
in interfaceCreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3
- Returns:
- the builder for this command. Call
FinalCommandStep.send()
to complete the command and send it to the broker
-
bpmnProcessId
Description copied from interface:CreateProcessInstanceCommandStep1
Set the BPMN process id of the process to create an instance of. This is the static id of the process in the BPMN XML (i.e. "<bpmn:process id='my-process'>").- Specified by:
bpmnProcessId
in interfaceCreateProcessInstanceCommandStep1
- Parameters:
id
- the BPMN process id of the process- Returns:
- the builder for this command
-
processDefinitionKey
public CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep3 processDefinitionKey(long processDefinitionKey) Description copied from interface:CreateProcessInstanceCommandStep1
Set the key of the process to create an instance of. The key is assigned by the broker while deploying the process. It can be picked from the deployment or process event.- Specified by:
processDefinitionKey
in interfaceCreateProcessInstanceCommandStep1
- Parameters:
processDefinitionKey
- the key of the process- Returns:
- the builder for this command
-
version
Description copied from interface:CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep2
Set the version of the process to create an instance of. The version is assigned by the broker while deploying the process. It can be picked from the deployment or process event.- Specified by:
version
in interfaceCreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep2
- Parameters:
version
- the version of the process- Returns:
- the builder for this command
-
latestVersion
Description copied from interface:CreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep2
Use the latest version of the process to create an instance of.If the latest version was deployed few moments before then it can happen that the new instance is created of the previous version.
- Specified by:
latestVersion
in interfaceCreateProcessInstanceCommandStep1.CreateProcessInstanceCommandStep2
- Returns:
- the builder for this command
-
requestTimeout
Description copied from interface:FinalCommandStep
Sets the request timeout for the command. The default request timeout can be configured usingZeebeClientBuilder.defaultRequestTimeout(Duration)
.- Specified by:
requestTimeout
in interfaceFinalCommandStep<ProcessInstanceEvent>
- Parameters:
requestTimeout
- the request timeout- Returns:
- the configured command
-
send
Description copied from interface:FinalCommandStep
Sends the command to the Zeebe broker. This operation is asynchronous. In case of success, the future returns the event that was generated by the Zeebe broker in response to the command.Call
ZeebeFuture.join()
to wait until the response is available.Future<JobEvent> future = command.send(); JobEvent event = future.join();
- Specified by:
send
in interfaceFinalCommandStep<ProcessInstanceEvent>
- Returns:
- a future tracking state of success/failure of the command.
-