class AbstractExternalDatabaseCreationAction extends AbstractStackAction<ExternalDatabaseCreationState, ExternalDatabaseCreationEvent, ExternalDatabaseContext, P> {

    @Override
    protected ExternalDatabaseContext createFlowContext(FlowParameters flowParameters,
            StateContext<ExternalDatabaseCreationState, ExternalDatabaseCreationEvent> stateContext, P payload) {

        Stack stack = stackService.getByIdWithClusterInTransaction(payload.getResourceId());
        MDCBuilder.buildMdcContext(stack);
        beforeReturnFlowContext(flowParameters, stateContext, payload);
        return new ExternalDatabaseContext(flowParameters, stack);
    }

    protected  AbstractExternalDatabaseCreationAction(Class<P> payloadClass);

}