Class TopicSubscriptionBuilderImpl
- java.lang.Object
-
- org.camunda.bpm.client.topic.impl.TopicSubscriptionBuilderImpl
-
- All Implemented Interfaces:
TopicSubscriptionBuilder
public class TopicSubscriptionBuilderImpl extends java.lang.Object implements TopicSubscriptionBuilder
- Author:
- Tassilo Weidner
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.StringbusinessKeyprotected ExternalTaskHandlerexternalTaskHandlerprotected booleanincludeExtensionPropertiesprotected booleanlocalVariablesprotected java.lang.LonglockDurationprotected static ExternalTaskClientLoggerLOGprotected java.lang.StringprocessDefinitionIdprotected java.util.List<java.lang.String>processDefinitionIdsprotected java.lang.StringprocessDefinitionKeyprotected java.util.List<java.lang.String>processDefinitionKeysprotected java.lang.StringprocessDefinitionVersionTagprotected java.util.Map<java.lang.String,java.lang.Object>processVariablesprotected java.util.List<java.lang.String>tenantIdsprotected java.lang.StringtopicNameprotected TopicSubscriptionManagertopicSubscriptionManagerprotected java.util.List<java.lang.String>variableNamesprotected booleanwithoutTenantId
-
Constructor Summary
Constructors Constructor Description TopicSubscriptionBuilderImpl(java.lang.String topicName, TopicSubscriptionManager topicSubscriptionManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TopicSubscriptionBuilderbusinessKey(java.lang.String businessKey)protected voidensureNotNull(java.lang.Object tenantIds, java.lang.String parameterName)TopicSubscriptionBuilderhandler(ExternalTaskHandler externalTaskHandler)TopicSubscriptionBuilderincludeExtensionProperties(boolean includeExtensionProperties)TopicSubscriptionBuilderlocalVariables(boolean localVariables)TopicSubscriptionBuilderlockDuration(long lockDuration)TopicSubscriptionopen()Release the topic subscription for being executed asynchronouslyTopicSubscriptionBuilderprocessDefinitionId(java.lang.String processDefinitionId)TopicSubscriptionBuilderprocessDefinitionIdIn(java.lang.String... processDefinitionIds)TopicSubscriptionBuilderprocessDefinitionKey(java.lang.String processDefinitionKey)TopicSubscriptionBuilderprocessDefinitionKeyIn(java.lang.String... processDefinitionKeys)TopicSubscriptionBuilderprocessDefinitionVersionTag(java.lang.String processDefinitionVersionTag)TopicSubscriptionBuilderprocessVariableEquals(java.lang.String name, java.lang.Object value)TopicSubscriptionBuilderprocessVariablesEqualsIn(java.util.Map<java.lang.String,java.lang.Object> processVariables)TopicSubscriptionBuildertenantIdIn(java.lang.String... tenantIds)TopicSubscriptionBuildervariables(java.lang.String... variableNames)TopicSubscriptionBuilderwithoutTenantId()Filter for external tasks without tenant
-
-
-
Field Detail
-
LOG
protected static final ExternalTaskClientLogger LOG
-
topicName
protected java.lang.String topicName
-
lockDuration
protected java.lang.Long lockDuration
-
variableNames
protected java.util.List<java.lang.String> variableNames
-
localVariables
protected boolean localVariables
-
businessKey
protected java.lang.String businessKey
-
processDefinitionId
protected java.lang.String processDefinitionId
-
processDefinitionIds
protected java.util.List<java.lang.String> processDefinitionIds
-
processDefinitionKey
protected java.lang.String processDefinitionKey
-
processDefinitionKeys
protected java.util.List<java.lang.String> processDefinitionKeys
-
processDefinitionVersionTag
protected java.lang.String processDefinitionVersionTag
-
processVariables
protected java.util.Map<java.lang.String,java.lang.Object> processVariables
-
withoutTenantId
protected boolean withoutTenantId
-
tenantIds
protected java.util.List<java.lang.String> tenantIds
-
externalTaskHandler
protected ExternalTaskHandler externalTaskHandler
-
topicSubscriptionManager
protected TopicSubscriptionManager topicSubscriptionManager
-
includeExtensionProperties
protected boolean includeExtensionProperties
-
-
Constructor Detail
-
TopicSubscriptionBuilderImpl
public TopicSubscriptionBuilderImpl(java.lang.String topicName, TopicSubscriptionManager topicSubscriptionManager)
-
-
Method Detail
-
lockDuration
public TopicSubscriptionBuilder lockDuration(long lockDuration)
- Specified by:
lockDurationin interfaceTopicSubscriptionBuilder- Parameters:
lockDuration-- in milliseconds to lock the external tasks
- must be greater than zero
- the default lock duration is 20 seconds (20,000 milliseconds)
- overrides the lock duration configured on bootstrapping the client
- Returns:
- the builder
-
handler
public TopicSubscriptionBuilder handler(ExternalTaskHandler externalTaskHandler)
- Specified by:
handlerin interfaceTopicSubscriptionBuilder- Parameters:
externalTaskHandler- which will be executed for the external task- Returns:
- the builder
-
variables
public TopicSubscriptionBuilder variables(java.lang.String... variableNames)
- Specified by:
variablesin interfaceTopicSubscriptionBuilder- Parameters:
variableNames- of variables which are supposed to be retrieved- Returns:
- the builder
-
localVariables
public TopicSubscriptionBuilder localVariables(boolean localVariables)
- Specified by:
localVariablesin interfaceTopicSubscriptionBuilder- Parameters:
localVariables- whether or not variables from greater scope than the external task should be fetched.falsemeans all variables visible in the scope of the external task will be fetched,truemeans only local variables (to the scope of the external task) will be fetched- Returns:
- the builder
-
businessKey
public TopicSubscriptionBuilder businessKey(java.lang.String businessKey)
- Specified by:
businessKeyin interfaceTopicSubscriptionBuilder- Parameters:
businessKey- to filter for external tasks that are supposed to be fetched and locked- Returns:
- the builder
-
processDefinitionId
public TopicSubscriptionBuilder processDefinitionId(java.lang.String processDefinitionId)
- Specified by:
processDefinitionIdin interfaceTopicSubscriptionBuilder- Parameters:
processDefinitionId- to filter for external tasks that are supposed to be fetched and locked- Returns:
- the builder
-
processDefinitionIdIn
public TopicSubscriptionBuilder processDefinitionIdIn(java.lang.String... processDefinitionIds)
- Specified by:
processDefinitionIdInin interfaceTopicSubscriptionBuilder- Parameters:
processDefinitionIds- to filter for external tasks that are supposed to be fetched and locked- Returns:
- the builder
-
processDefinitionKey
public TopicSubscriptionBuilder processDefinitionKey(java.lang.String processDefinitionKey)
- Specified by:
processDefinitionKeyin interfaceTopicSubscriptionBuilder- Parameters:
processDefinitionKey- to filter for external tasks that are supposed to be fetched and locked- Returns:
- the builder
-
processDefinitionKeyIn
public TopicSubscriptionBuilder processDefinitionKeyIn(java.lang.String... processDefinitionKeys)
- Specified by:
processDefinitionKeyInin interfaceTopicSubscriptionBuilder- Parameters:
processDefinitionKeys- to filter for external tasks that are supposed to be fetched and locked- Returns:
- the builder
-
processDefinitionVersionTag
public TopicSubscriptionBuilder processDefinitionVersionTag(java.lang.String processDefinitionVersionTag)
- Specified by:
processDefinitionVersionTagin interfaceTopicSubscriptionBuilder- Returns:
- the builder
-
processVariablesEqualsIn
public TopicSubscriptionBuilder processVariablesEqualsIn(java.util.Map<java.lang.String,java.lang.Object> processVariables)
- Specified by:
processVariablesEqualsInin interfaceTopicSubscriptionBuilder- Parameters:
processVariables- of which the external tasks to be retrieved are related to- Returns:
- the builder
-
processVariableEquals
public TopicSubscriptionBuilder processVariableEquals(java.lang.String name, java.lang.Object value)
- Specified by:
processVariableEqualsin interfaceTopicSubscriptionBuilder- Returns:
- the builder
-
withoutTenantId
public TopicSubscriptionBuilder withoutTenantId()
Description copied from interface:TopicSubscriptionBuilderFilter for external tasks without tenant- Specified by:
withoutTenantIdin interfaceTopicSubscriptionBuilder- Returns:
- the builder
-
tenantIdIn
public TopicSubscriptionBuilder tenantIdIn(java.lang.String... tenantIds)
- Specified by:
tenantIdInin interfaceTopicSubscriptionBuilder- Parameters:
tenantIds- to filter for external tasks that are supposed to be fetched and locked- Returns:
- the builder
-
includeExtensionProperties
public TopicSubscriptionBuilder includeExtensionProperties(boolean includeExtensionProperties)
- Specified by:
includeExtensionPropertiesin interfaceTopicSubscriptionBuilder- Parameters:
includeExtensionProperties- whether or not to include custom extension properties for fetched external tasks.truemeans all extensionProperties defined in the external task activity will be provided.falsemeans custom extension properties are not available within the external-task-client. The default isfalse.- Returns:
- the builder
-
open
public TopicSubscription open()
Description copied from interface:TopicSubscriptionBuilderRelease the topic subscription for being executed asynchronously- Specified by:
openin interfaceTopicSubscriptionBuilder- Returns:
- the builder
-
ensureNotNull
protected void ensureNotNull(java.lang.Object tenantIds, java.lang.String parameterName)
-
-