package com.sequenceiq.cloudbreak.core.flow2.stack.upscale; import com.sequenceiq.cloudbreak.core.flow2.FlowState; import com.sequenceiq.cloudbreak.core.flow2.RestartAction; import com.sequenceiq.cloudbreak.core.flow2.restart.DisableOnGCPRestartAction; import com.sequenceiq.cloudbreak.core.flow2.restart.FillInMemoryStateStoreRestartAction; public enum StackUpscaleState implements FlowState { INIT_STATE, UPSCALE_FAILED_STATE, ADD_INSTANCES_STATE(DisableOnGCPRestartAction.class), ADD_INSTANCES_FINISHED_STATE, EXTEND_METADATA_STATE, EXTEND_METADATA_FINISHED_STATE, GATEWAY_TLS_SETUP_STATE, BOOTSTRAP_NEW_NODES_STATE, EXTEND_HOST_METADATA_STATE, EXTEND_HOST_METADATA_FINISHED_STATE, FINAL_STATE; private Class<? extends RestartAction> restartAction = FillInMemoryStateStoreRestartAction.class; StackUpscaleState() { } StackUpscaleState(Class<? extends RestartAction> restartAction) { this.restartAction = restartAction; } @Override public Class<? extends RestartAction> restartAction() { return restartAction; } }