protected abstract ProgressEvent handleRequest()

in aws-devopsguru-resourcecollection/src/main/java/software/amazon/devopsguru/resourcecollection/BaseHandlerStd.java [58:87]


    protected abstract ProgressEvent<ResourceModel, CallbackContext> handleRequest(
            final AmazonWebServicesClientProxy proxy,
            final ResourceHandlerRequest<ResourceModel> request,
            final CallbackContext callbackContext,
            final ProxyClient<DevOpsGuruClient> proxyClient,
            final Logger logger);

    protected GetResourceCollectionResponse getSingleResourceCollection(
            final GetResourceCollectionRequest getResourceCollectionRequest,
            final ProxyClient<DevOpsGuruClient> proxyClient,
            final ResourceModel model) {
        GetResourceCollectionRequest awsRequest = getResourceCollectionRequest;

        try {
            GetResourceCollectionResponse awsResponse = proxyClient.injectCredentialsAndInvokeV2(awsRequest,
                    proxyClient.client()::getResourceCollection);
            if (awsResponse.resourceCollection().cloudFormation() == null) {
                throw new CfnNotFoundException(ResourceModel.TYPE_NAME, model.getResourceCollectionType());
            }
            return awsResponse;
        } catch (final AccessDeniedException e) {
            throw new CfnAccessDeniedException(ResourceModel.TYPE_NAME, e);
        } catch (final ThrottlingException e) {
            throw new CfnThrottlingException(ResourceModel.TYPE_NAME, e);
        } catch (final InternalServerException e) {
            throw new CfnServiceInternalErrorException(ResourceModel.TYPE_NAME, e);
        } catch (final ResourceNotFoundException e) {
            throw new CfnNotFoundException(ResourceModel.TYPE_NAME, model.getResourceCollectionType(), e);
        }
    }