static Map getStepData()

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);
    }