in aws-databrew-recipe/src/main/java/software/amazon/databrew/recipe/ListHandler.java [22:60]
public ProgressEvent<ResourceModel, CallbackContext> handleRequest(
final AmazonWebServicesClientProxy proxy,
final ResourceHandlerRequest<ResourceModel> request,
final CallbackContext callbackContext,
final Logger logger) {
final ResourceModel m = request.getDesiredResourceState();
final DataBrewClient databrewClient = ClientBuilder.getClient();
final ListRecipesRequest listRecipesRequest = ListRecipesRequest.builder()
.maxResults(MAX_RESULTS)
.nextToken(request.getNextToken())
.recipeVersion(LATEST_WORKING)
.build();
final ListRecipesResponse listRecipesResponse;
try {
listRecipesResponse = proxy.injectCredentialsAndInvokeV2(listRecipesRequest, databrewClient::listRecipes);
List<ResourceModel> outputModels = new ArrayList<>();
if (listRecipesResponse.recipes() != null){
listRecipesResponse.recipes().forEach(recipe ->{
ResourceModel outputModel = ModelHelper.constructModel(recipe);
outputModels.add(outputModel);
});
}
logger.log(String.format("%s List Successfully", ResourceModel.TYPE_NAME));
return ProgressEvent.<ResourceModel, CallbackContext>builder()
.resourceModels(outputModels)
.nextToken(request.getNextToken())
.status(OperationStatus.SUCCESS)
.build();
} catch (DataBrewException ex) {
logger.log(String.format("%s List Failed", ResourceModel.TYPE_NAME));
return ProgressEvent.defaultFailureHandler(ex, HandlerErrorCode.ServiceInternalError);
}
}