in flux/src/main/java/software/amazon/aws/clients/swf/flux/poller/WorkflowState.java [509:537]
static Map<String, String> getStepData(HistoryEvent event) {
String data;
switch (event.eventType()) {
case WORKFLOW_EXECUTION_STARTED:
data = event.workflowExecutionStartedEventAttributes().input();
break;
case ACTIVITY_TASK_SCHEDULED:
data = event.activityTaskScheduledEventAttributes().input();
break;
case ACTIVITY_TASK_COMPLETED:
data = event.activityTaskCompletedEventAttributes().result();
break;
case ACTIVITY_TASK_TIMED_OUT:
data = event.activityTaskTimedOutEventAttributes().details();
break;
case ACTIVITY_TASK_CANCELED:
data = event.activityTaskCanceledEventAttributes().details();
break;
case ACTIVITY_TASK_FAILED:
data = null; // retries don't produce any step data.
break;
default:
// If we get here, then someone added an entry to ACTIVITY_START_EVENTS or ACTIVITY_CLOSED_EVENTS
// but didn't handle it here.
throw new RuntimeException("Unable to retrieve step data for event of type " + event.eventTypeAsString());
}
return StepAttributes.decode(Map.class, data);
}