public ProgressEvent handleRequest()

in costcategory/src/main/java/software/amazon/ce/costcategory/ListHandler.java [28:52]


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

        ListCostCategoryDefinitionsResponse response = proxy.injectCredentialsAndInvokeV2(
                CostCategoryRequestBuilder.buildListRequest(request.getNextToken()),
                costExplorerClient::listCostCategoryDefinitions
        );

        List<ResourceModel> models = response.costCategoryReferences().stream()
                .map(c -> ResourceModel.builder()
                        .arn(c.costCategoryArn())
                        .effectiveStart(c.effectiveStart())
                        .name(c.name())
                        .build()
                ).collect(Collectors.toList());

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