in aws-iotwireless-wirelessdevice/src/main/java/software/amazon/iotwireless/wirelessdevice/ListHandler.java [23:56]
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 ListWirelessDevicesRequest listWirelessDevicesRequest = Translator.translateToListRequest(request.getNextToken());
try {
ListWirelessDevicesResponse listWirelessDevicesResponse = proxy.injectCredentialsAndInvokeV2(listWirelessDevicesRequest, proxyClient.client()::listWirelessDevices);
final List<ResourceModel> models = listWirelessDevicesResponse.wirelessDeviceList().stream()
.map(device -> ResourceModel.builder()
.type(device.typeAsString())
.name(device.name())
.id(device.id())
.destinationName(device.destinationName())
.loRaWAN(Translator.translateToLoRaWAN(device.loRaWAN()))
.arn(device.arn())
.lastUplinkReceivedAt(device.lastUplinkReceivedAt())
.build())
.collect(Collectors.toList());
return ProgressEvent.<ResourceModel, CallbackContext>builder()
.resourceModels(models)
.nextToken(listWirelessDevicesResponse.nextToken())
.status(OperationStatus.SUCCESS)
.build();
} catch (final Exception e) {
throw handleException(e, listWirelessDevicesRequest);
}
}