Package io.temporal.common.interceptors
Interface WorkflowOutboundCallsInterceptor
-
- All Known Implementing Classes:
WorkflowOutboundCallsInterceptorBase
public interface WorkflowOutboundCallsInterceptor
Can be used to intercept workflow code calls to the Temporal APIs. An instance should be created throughWorkerInterceptor.interceptWorkflow(WorkflowInboundCallsInterceptor)
. An interceptor instance must forward all the calls to the next interceptor passed to the interceptExecuteWorkflow call.The calls to the interceptor are executed in the context of a workflow and must follow the same rules all the other workflow code follows.
-
-
Nested Class Summary
-
Method Summary
-
-
-
Method Detail
-
executeActivity
<R> WorkflowOutboundCallsInterceptor.ActivityOutput<R> executeActivity(WorkflowOutboundCallsInterceptor.ActivityInput<R> input)
-
executeLocalActivity
<R> WorkflowOutboundCallsInterceptor.LocalActivityOutput<R> executeLocalActivity(WorkflowOutboundCallsInterceptor.LocalActivityInput<R> input)
-
executeChildWorkflow
<R> WorkflowOutboundCallsInterceptor.ChildWorkflowOutput<R> executeChildWorkflow(WorkflowOutboundCallsInterceptor.ChildWorkflowInput<R> input)
-
newRandom
java.util.Random newRandom()
-
signalExternalWorkflow
WorkflowOutboundCallsInterceptor.SignalExternalOutput signalExternalWorkflow(WorkflowOutboundCallsInterceptor.SignalExternalInput input)
-
cancelWorkflow
WorkflowOutboundCallsInterceptor.CancelWorkflowOutput cancelWorkflow(WorkflowOutboundCallsInterceptor.CancelWorkflowInput input)
-
sleep
void sleep(java.time.Duration duration)
-
await
boolean await(java.time.Duration timeout, java.lang.String reason, java.util.function.Supplier<java.lang.Boolean> unblockCondition)
-
await
void await(java.lang.String reason, java.util.function.Supplier<java.lang.Boolean> unblockCondition)
-
newTimer
Promise<java.lang.Void> newTimer(java.time.Duration duration)
-
sideEffect
<R> R sideEffect(java.lang.Class<R> resultClass, java.lang.reflect.Type resultType, Functions.Func<R> func)
-
mutableSideEffect
<R> R mutableSideEffect(java.lang.String id, java.lang.Class<R> resultClass, java.lang.reflect.Type resultType, java.util.function.BiPredicate<R,R> updated, Functions.Func<R> func)
-
getVersion
int getVersion(java.lang.String changeId, int minSupported, int maxSupported)
-
continueAsNew
void continueAsNew(WorkflowOutboundCallsInterceptor.ContinueAsNewInput input)
-
registerQuery
void registerQuery(WorkflowOutboundCallsInterceptor.RegisterQueryInput input)
-
registerSignalHandlers
void registerSignalHandlers(WorkflowOutboundCallsInterceptor.RegisterSignalHandlersInput input)
-
registerDynamicSignalHandler
void registerDynamicSignalHandler(WorkflowOutboundCallsInterceptor.RegisterDynamicSignalHandlerInput handler)
-
registerDynamicQueryHandler
void registerDynamicQueryHandler(WorkflowOutboundCallsInterceptor.RegisterDynamicQueryHandlerInput input)
-
randomUUID
java.util.UUID randomUUID()
-
upsertSearchAttributes
void upsertSearchAttributes(java.util.Map<java.lang.String,?> searchAttributes)
-
newChildThread
java.lang.Object newChildThread(java.lang.Runnable runnable, boolean detached, java.lang.String name)
Intercepts creation of the workflow child thread.Please note, that "workflow child thread" and "child workflow" are different and independent concepts.
- Parameters:
runnable
- thread function to rundetached
- if this thread is detached from the parentCancellationScope
name
- name of the thread- Returns:
- created WorkflowThread
-
currentTimeMillis
long currentTimeMillis()
-
-