public ProgressEvent handleRequest()

in aws-iotwireless-taskdefinition/src/main/java/software/amazon/iotwireless/taskdefinition/ListHandler.java [23:55]


    public 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();

        final ListWirelessGatewayTaskDefinitionsRequest listWirelessGatewayTaskDefinitionsRequest =
                Translator.translateToListRequest(model, request.getNextToken());

        try {
            ListWirelessGatewayTaskDefinitionsResponse listWirelessGatewayTaskDefinitionsResponse =
                    proxy.injectCredentialsAndInvokeV2(listWirelessGatewayTaskDefinitionsRequest, proxyClient.client()::listWirelessGatewayTaskDefinitions);

            final List<ResourceModel> models = listWirelessGatewayTaskDefinitionsResponse.taskDefinitions().stream()
                    .map(taskdefinition -> ResourceModel.builder()
                            .id(taskdefinition.id())
                            .arn(taskdefinition.arn())
                            .loRaWANUpdateGatewayTaskEntry(Translator.translateLoRaWANUpdateGatewayTaskEntry(taskdefinition.loRaWAN()))
                            .build())
                    .collect(Collectors.toList());

            return ProgressEvent.<ResourceModel, CallbackContext>builder()
                    .resourceModels(models)
                    .nextToken(listWirelessGatewayTaskDefinitionsResponse.nextToken())
                    .status(OperationStatus.SUCCESS)
                    .build();
        } catch (final Exception e) {
            throw handleException(e, listWirelessGatewayTaskDefinitionsRequest);
        }
    }