protected ProgressEvent handleRequest()

in aws-panorama-package/src/main/java/software/amazon/panorama/package_/ReadHandler.java [19:51]


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

        this.logger = new LoggerWrapper(logger);

        final ResourceModel model = request.getDesiredResourceState();
        final DescribePackageRequest describePackageRequest = Translator.translateToReadRequest(model);

        DescribePackageResponse describePackageResponse;

        try {
            describePackageResponse = proxyClient.injectCredentialsAndInvokeV2(describePackageRequest,
                    proxyClient.client()::describePackage);
        } catch (PanoramaException e) {
            this.logger.error(String.format("API Exception is thrown from Panorama service. PackageId: %s. Request: %s",
                    describePackageRequest.packageId(), describePackageRequest.toString()));
            throw PanoramaExceptionTranslator.translateForAPIException(e,
                    OPERATION,
                    ResourceModel.TYPE_NAME,
                    describePackageRequest.packageId(),
                    describePackageRequest.toString());
        } catch(AwsServiceException e) {
            this.logger.error(String.format("Exception happened during DescribePackage. PackageId: %s. Request: %s",
                    model.getPackageId(), describePackageRequest.toString()));
            throw new CfnGeneralServiceException(OPERATION, e);
        }

        return ProgressEvent.defaultSuccessHandler(Translator.translateFromReadResponse(describePackageResponse));
    }