public boolean isStabilizedCreate()

in aws-lightsail-instance/src/main/java/software/amazon/lightsail/instance/helpers/resource/AddOns.java [115:132]


    public boolean isStabilizedCreate(final GetInstanceResponse awsResponse) {
        // now we have only one AddOn, so checking 0th index directly
        if (resourceModel.getAddOns() != null && resourceModel.getAddOns().size() > 0
                && resourceModel.getAddOns().get(0) != null
                && (Strings.isNullOrEmpty(resourceModel.getAddOns().get(0).getStatus()) ||
                "enabled".equalsIgnoreCase(resourceModel.getAddOns().get(0).getStatus()))) {
            val currentState = awsResponse.instance().addOns() == null || awsResponse.instance().addOns().size() == 0
                    ? "Pending" : awsResponse.instance().addOns().get(0).status();
            logger.log(String.format("Checking if AddOn has stabilized for Instance: %s. Current state %s",
                    resourceModel.getInstanceName(), currentState));

            // Enabling and Disabled are the terminal state, In stabilize all we do is wait for terminal state.
            return "enabled".equalsIgnoreCase(currentState);
        }

        // If there is no add-on in the request make it pass stabilize.
        return true;
    }