public ProgressEvent handleRequest()

in aws-timestream-scheduledquery/src/main/java/software/amazon/timestream/scheduledquery/ListHandler.java [31:71]


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

        AmazonTimestreamQuery timestreamClient = TimestreamClientFactory.get(proxy, logger);

        ListScheduledQueriesResult listScheduledQueriesResult;
        ListScheduledQueriesRequest listScheduledQueriesRequest =
                new ListScheduledQueriesRequest()
                        .withNextToken(request.getNextToken())
                        .withMaxResults(MAX_ITEMS);

        try {
            listScheduledQueriesResult =
                    proxy.injectCredentialsAndInvoke(listScheduledQueriesRequest, timestreamClient::listScheduledQueries);
        } catch(InternalServerException ex) {
            throw new CfnInternalFailureException(ex);
        } catch (ThrottlingException ex) {
            throw new CfnThrottlingException(LIST_SCHEDULED_QUERIES, ex);
        } catch (ValidationException | InvalidEndpointException ex) {
            throw new CfnInvalidRequestException(request.toString(), ex);
        } catch (AccessDeniedException ex) {
            throw new CfnAccessDeniedException(LIST_SCHEDULED_QUERIES, ex);
        }

        final List<ResourceModel> models = listScheduledQueriesResult.getScheduledQueries()
                .stream()
                .map(scheduledQuery ->
                        ResourceModel.builder()
                                .arn(scheduledQuery.getArn())
                                .build())
                .collect(Collectors.toList());

        return ProgressEvent.<ResourceModel, CallbackContext>builder()
                .resourceModels(models)
                .nextToken(listScheduledQueriesResult.getNextToken())
                .status(OperationStatus.SUCCESS)
                .build();
    }