59
59
attrValidator * decisionAttrValidator
60
60
sizeLimitChecker * workflowSizeChecker
61
61
62
+ tokenSerializer common.TaskTokenSerializer
63
+
62
64
logger log.Logger
63
65
domainCache cache.DomainCache
64
66
metricsClient metrics.Client
@@ -77,6 +79,7 @@ func newDecisionTaskHandler(
77
79
mutableState execution.MutableState ,
78
80
attrValidator * decisionAttrValidator ,
79
81
sizeLimitChecker * workflowSizeChecker ,
82
+ tokenSerializer common.TaskTokenSerializer ,
80
83
logger log.Logger ,
81
84
domainCache cache.DomainCache ,
82
85
metricsClient metrics.Client ,
@@ -102,6 +105,8 @@ func newDecisionTaskHandler(
102
105
attrValidator : attrValidator ,
103
106
sizeLimitChecker : sizeLimitChecker ,
104
107
108
+ tokenSerializer : tokenSerializer ,
109
+
105
110
logger : logger ,
106
111
domainCache : domainCache ,
107
112
metricsClient : metricsClient ,
@@ -249,6 +254,20 @@ func (handler *decisionTaskHandlerImpl) handleDecisionScheduleActivity(
249
254
if _ , err1 := handler .mutableState .AddActivityTaskStartedEvent (ai , event .GetEventId (), uuid .New (), handler .identity ); err1 != nil {
250
255
return nil , err1
251
256
}
257
+ token := & common.TaskToken {
258
+ DomainID : executionInfo .DomainID ,
259
+ WorkflowID : executionInfo .WorkflowID ,
260
+ WorkflowType : executionInfo .WorkflowTypeName ,
261
+ RunID : executionInfo .RunID ,
262
+ ScheduleID : ai .ScheduleID ,
263
+ ScheduleAttempt : 0 ,
264
+ ActivityID : ai .ActivityID ,
265
+ ActivityType : attr .ActivityType .GetName (),
266
+ }
267
+ activityDispatchInfo .TaskToken , err = handler .tokenSerializer .Serialize (token )
268
+ if err != nil {
269
+ return nil , ErrSerializingToken
270
+ }
252
271
activityDispatchInfo .ScheduledTimestamp = common .Int64Ptr (ai .ScheduledTime .UnixNano ())
253
272
activityDispatchInfo .ScheduledTimestampOfThisAttempt = common .Int64Ptr (ai .ScheduledTime .UnixNano ())
254
273
activityDispatchInfo .StartedTimestamp = common .Int64Ptr (ai .StartedTime .UnixNano ())
0 commit comments