Example usage for com.amazonaws.services.config AmazonConfig putEvaluations

List of usage examples for com.amazonaws.services.config AmazonConfig putEvaluations

Introduction

In this page you can find the example usage for com.amazonaws.services.config AmazonConfig putEvaluations.

Prototype

PutEvaluationsResult putEvaluations(PutEvaluationsRequest putEvaluationsRequest);

Source Link

Document

Used by an AWS Lambda function to deliver evaluation results to AWS Config.

Usage

From source file:com.vb.aws.services.mt.config.EBSVolumesAvailable.java

/**
 * This method puts the evaluations on config rule.
 * @param awsConfig/*from   w ww.j  a va2  s  .  c  o  m*/
 * @param event
 * @param evaluations 
 */
private void doPutEvaluations(AmazonConfig awsConfig, ConfigEvent event, List<Evaluation> evaluations)
        throws InvalidParameterValueException, InvalidResultTokenException, NoSuchConfigRuleException {

    //Currently number of evaluations we can put is 100 at a time. So we need to put evaluations in batches.

    for (int i = 0; i < evaluations.size(); i += 100) {
        List<Evaluation> subListEvaluations = evaluations.subList(i, Math.min(evaluations.size(), i + 100));
        System.out.println("INFO : ITERATION : " + String.valueOf(i + 1)
                + ". Number of evaluations put in this iteration : " + subListEvaluations.size());

        PutEvaluationsRequest putEvaluationsRequest = new PutEvaluationsRequest();
        putEvaluationsRequest.setEvaluations(subListEvaluations);
        putEvaluationsRequest.setResultToken(event.getResultToken());

        try {
            PutEvaluationsResult putEvaluationsResult = awsConfig.putEvaluations(putEvaluationsRequest);
            System.out.println("INFO : Number of failed evaluations : "
                    + putEvaluationsResult.getFailedEvaluations().size());
            System.out.println("INFO : Failed evaluations : " + putEvaluationsResult.getFailedEvaluations());
        } catch (InvalidParameterValueException e) {
            System.out.println("ERROR : InvalidParameterValueException caught while putting evaluations.");
            e.printStackTrace();
            throw e;
        } catch (InvalidResultTokenException e) {
            System.out.println("ERROR : InvalidResultTokenException caught while putting evaluations.");
            e.printStackTrace();
            throw e;
        } catch (NoSuchConfigRuleException e) {
            System.out.println("ERROR : NoSuchConfigRuleException caught while putting evaluations.");
            e.printStackTrace();
            throw e;
        }
    }
}