protected ProgressEvent handleRequest()

in aws-iotwireless-wirelessgateway/src/main/java/software/amazon/iotwireless/wirelessgateway/ReadHandler.java [14:41]


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

        final ResourceModel model = request.getDesiredResourceState();

        return ProgressEvent.progress(request.getDesiredResourceState(), callbackContext)
                .then(progress -> proxy.initiate("AWS-IoTWireless-WirelessGateway::Read", proxyClient, model, callbackContext)
                        .translateToServiceRequest(Translator::translateToReadRequest)
                        .makeServiceCall(this::getResource)
                        .done(getResponse -> {
                            model.setId(getResponse.id());
                            model.setArn(getResponse.arn());
                            model.setName(getResponse.name());
                            model.setDescription(getResponse.description());
                            model.setLoRaWAN(Translator.translateToLoRaWAN(getResponse.loRaWAN()));
                            model.setThingArn(getResponse.thingArn());
                            model.setThingName(getResponse.thingName());
                            return ProgressEvent.progress(model, callbackContext);
                        })
                )
                .then(progress -> {
                    return ProgressEvent.defaultSuccessHandler(model);
                });
    }