protected ProgressEvent handleRequest()

in aws-networkfirewall-firewall/src/main/java/software/amazon/networkfirewall/firewall/ReadHandler.java [21:49]


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

        this.logger = logger;

        return proxy.initiate("AWS-NetworkFirewall-Firewall::Read", proxyClient, request.getDesiredResourceState(), callbackContext)
            .translateToServiceRequest(Translator::translateToDescribeFirewallRequest)
            .makeServiceCall((describeFirewallRequest, client) -> {
                DescribeFirewallResponse response;
                try {
                    response = client.injectCredentialsAndInvokeV2(describeFirewallRequest, client.client()::describeFirewall);
                } catch (final ResourceNotFoundException e) {
                    throw new CfnNotFoundException(e);
                } catch (final InvalidRequestException e) {
                    throw new CfnInvalidRequestException(e.getMessage(), e);
                } catch (final InternalServerErrorException e) {
                    throw new CfnServiceInternalErrorException(e.getMessage(), e);
                } catch (final Exception e) {
                    throw new CfnGeneralServiceException(e.getMessage(), e);
                }

                return response;
            })
            .done(response -> ProgressEvent.defaultSuccessHandler(Translator.translateFromDescribeFirewallResponse(response)));
    }