in aws-iotwireless-wirelessgateway/src/main/java/software/amazon/iotwireless/wirelessgateway/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) {
ResourceModel model = request.getDesiredResourceState();
final ListWirelessGatewaysRequest listWirelessGatewaysRequest = Translator.translateToListRequest(request.getNextToken());
try {
ListWirelessGatewaysResponse listWirelessGatewaysResponse = proxy.injectCredentialsAndInvokeV2(listWirelessGatewaysRequest, proxyClient.client()::listWirelessGateways);
final List<ResourceModel> models = listWirelessGatewaysResponse.wirelessGatewayList().stream()
.map(gateway -> ResourceModel.builder()
.name(gateway.name())
.id(gateway.id())
.description(gateway.description())
.loRaWAN(Translator.translateToLoRaWAN(gateway.loRaWAN()))
.lastUplinkReceivedAt(gateway.lastUplinkReceivedAt())
.arn(gateway.arn())
.build())
.collect(Collectors.toList());
return ProgressEvent.<ResourceModel, CallbackContext>builder()
.resourceModels(models)
.nextToken(listWirelessGatewaysResponse.nextToken())
.status(OperationStatus.SUCCESS)
.build();
} catch (final Exception e) {
throw handleException(e, listWirelessGatewaysRequest);
}
}