in src/main/java/com/amazonaws/services/simpleworkflow/flow/worker/DecisionTaskPoller.java [258:287]
private PollForDecisionTaskResponse poll(String nextResultToken) {
validate();
PollForDecisionTaskRequest.Builder pollRequestBuilder = PollForDecisionTaskRequest.builder()
.domain(domain).identity(identity).nextPageToken(nextResultToken);
pollRequestBuilder.taskList(TaskList.builder().name(taskListToPoll).build());
// Set startAtPreviousStartedEvent to true for pollers of an affinity workflow worker
if (decisionTaskHandler.getAffinityHelper() != null) {
pollRequestBuilder.startAtPreviousStartedEvent(decisionTaskHandler.getAffinityHelper().isAffinityWorker());
}
PollForDecisionTaskRequest pollRequest = pollRequestBuilder.build();
if (log.isDebugEnabled()) {
log.debug("poll request begin: " + pollRequest);
}
pollRequest = RequestTimeoutHelper.overridePollRequestTimeout(pollRequest, config);
PollForDecisionTaskResponse result = service.pollForDecisionTask(pollRequest);
if (log.isDebugEnabled() && result != null) {
log.debug("poll request returned decision task: workflowType=" + result.workflowType() + ", workflowExecution="
+ result.workflowExecution() + ", startedEventId=" + result.startedEventId()
+ ", previousStartedEventId=" + result.previousStartedEventId());
}
if (result == null || result.taskToken() == null) {
result = null;
}
return result;
}