public ProgressEvent handleRequest()

in anomalymonitor/src/main/java/software/amazon/ce/anomalymonitor/CreateHandler.java [17:47]


    public ProgressEvent<ResourceModel, CallbackContext> handleRequest(
        final AmazonWebServicesClientProxy proxy,
        final ResourceHandlerRequest<ResourceModel> request,
        final CallbackContext callbackContext,
        final Logger logger) {

        final ResourceModel model = request.getDesiredResourceState();

        /**
         * Make sure user is not trying to assign values to readOnlyProperties
         * */
        if (hasReadOnlyProperties(model)) {
            return ProgressEvent.<ResourceModel, CallbackContext>builder()
                    .resourceModel(model)
                    .status(OperationStatus.FAILED)
                    .errorCode(HandlerErrorCode.InvalidRequest)
                    .message("Attempting to set a ReadOnly Property.")
                    .build();
        }
        CreateAnomalyMonitorResponse response = proxy.injectCredentialsAndInvokeV2(
                RequestBuilder.buildCreateAnomalyMonitorRequest(model),
                costExplorerClient::createAnomalyMonitor
        );

        model.setMonitorArn(response.monitorArn());

        return ProgressEvent.<ResourceModel, CallbackContext>builder()
            .resourceModel(model)
            .status(OperationStatus.SUCCESS)
            .build();
    }