in aws-applicationinsights-application/src/main/java/software/amazon/applicationinsights/application/ListHandler.java [19:53]
public ProgressEvent<ResourceModel, CallbackContext> handleRequest(
final AmazonWebServicesClientProxy proxy,
final ResourceHandlerRequest<ResourceModel> request,
final CallbackContext callbackContext,
final Logger logger) {
final List<ResourceModel> models = new ArrayList<>();
logger.log("List Handler called");
ListApplicationsResponse listApplicationsResponse;
try {
listApplicationsResponse = HandlerHelper.listApplicationInsightsApplications(request.getNextToken(), proxy, applicationInsightsClient);
} catch (Exception ex) {
logger.log(String.format("listApplicationInsightsApplications failed with exception %s", ex.getMessage()));
return ProgressEvent.defaultFailureHandler(ex, ExceptionMapper.mapToHandlerErrorCode(ex));
}
request.setNextToken(listApplicationsResponse.nextToken());
try {
listApplicationsResponse.applicationInfoList().stream()
.forEach(applicationInfo ->
models.add(HandlerHelper.generateReadModel(applicationInfo.resourceGroupName(), null, request, proxy, applicationInsightsClient)));
} catch (Exception ex) {
logger.log(String.format("generateReadModel failed with exception %s", ex.getMessage()));
return ProgressEvent.defaultFailureHandler(ex, ExceptionMapper.mapToHandlerErrorCode(ex));
}
return ProgressEvent.<ResourceModel, CallbackContext>builder()
.resourceModels(models)
.nextToken(request.getNextToken())
.status(OperationStatus.SUCCESS)
.build();
}