private ProgressEvent handleCanaryInStateReady()

in aws-synthetics-canary/src/main/java/com/amazon/synthetics/canary/CreateHandler.java [61:77]


    private ProgressEvent<ResourceModel, CallbackContext> handleCanaryInStateReady(Canary canary) {
        log("Canary is in state READY.");
        if (model.getStartCanaryAfterCreation()) {
            // There is a race condition here. We will get an exception if someone calls
            // DeleteCanary, StartCanary, or UpdateCanary before we call StartCanary.

            proxy.injectCredentialsAndInvokeV2(
                StartCanaryRequest.builder()
                    .name(canary.name())
                    .build(),
                syntheticsClient::startCanary);

            return waitingForCanaryStateTransition("Starting canary", MAX_RETRY_TIMES, "READY");
        } else {
            return ProgressEvent.defaultSuccessHandler(ModelHelper.constructModel(canary, model));
        }
    }