protected abstract ProgressEvent handleRequest()

in aws-devopsguru-notificationchannel/src/main/java/software/amazon/devopsguru/notificationchannel/BaseHandlerStd.java [40:67]


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

      protected ListNotificationChannelsResponse listNotificationChannel(
              ListNotificationChannelsRequest listNotificationChannelsRequest,
              final ProxyClient<DevOpsGuruClient> proxyClient){
        ListNotificationChannelsResponse awsResponse = null;

        try {
            awsResponse = proxyClient.injectCredentialsAndInvokeV2(listNotificationChannelsRequest, proxyClient.client()::listNotificationChannels);
        } catch (final AccessDeniedException e) {
            throw new CfnAccessDeniedException(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, listNotificationChannelsRequest.toString(), e);
        } catch (final ValidationException e) {
            throw new CfnInvalidRequestException(ResourceModel.TYPE_NAME, e);
        } catch (final ThrottlingException e) {
            throw new CfnThrottlingException(ResourceModel.TYPE_NAME, e);
        }

        return awsResponse;
    }