Example usage for com.amazonaws.services.simpleemail AmazonSimpleEmailServiceClient AmazonSimpleEmailServiceClient

List of usage examples for com.amazonaws.services.simpleemail AmazonSimpleEmailServiceClient AmazonSimpleEmailServiceClient

Introduction

In this page you can find the example usage for com.amazonaws.services.simpleemail AmazonSimpleEmailServiceClient AmazonSimpleEmailServiceClient.

Prototype

@Deprecated
public AmazonSimpleEmailServiceClient() 

Source Link

Document

Constructs a new client to invoke service methods on Amazon SES.

Usage

From source file:com.netflix.simianarmy.basic.BasicChaosMonkeyContext.java

License:Apache License

/**
 * Instantiates a new basic context./*from  www  .  ja v a  2  s  .c om*/
 */
public BasicChaosMonkeyContext() {
    super("simianarmy.properties", "client.properties", "chaos.properties");
    setChaosCrawler(new ASGChaosCrawler(awsClient()));
    setChaosInstanceSelector(new BasicChaosInstanceSelector());
    MonkeyConfiguration cfg = configuration();
    setChaosEmailNotifier(new BasicChaosEmailNotifier(cfg, new AmazonSimpleEmailServiceClient(), null));
}

From source file:com.netflix.simianarmy.basic.BasicSniperMonkeyContext.java

License:Apache License

/**
 * Instantiates a new basic context.//from  ww w  . j  av  a  2s .  com
 */
public BasicSniperMonkeyContext() {
    super("simianarmy.properties", "client.properties", "sniper.properties");
    setSniperCrawler(new ASGSniperCrawler(awsClient()));
    setSniperInstanceSelector(new BasicSniperInstanceSelector());
    MonkeyConfiguration cfg = configuration();
    setSniperEmailNotifier(new BasicSniperEmailNotifier(cfg, new AmazonSimpleEmailServiceClient(), null));
}

From source file:com.netflix.simianarmy.basic.conformity.BasicConformityMonkeyContext.java

License:Apache License

/**
 * The constructor.// w  w w  . ja  va 2  s .com
 */
public BasicConformityMonkeyContext() {
    super("simianarmy.properties", "client.properties", "conformity.properties");
    regions = Lists.newArrayList(region());

    // By default, the monkey is leashed
    leashed = configuration().getBoolOrElse("simianarmy.conformity.leashed", true);

    LOGGER.info(String.format("Conformity Monkey is running in: %s", regions));

    String sdbDomain = configuration().getStrOrElse("simianarmy.conformity.sdb.domain", "SIMIAN_ARMY");

    clusterTracker = new SimpleDBConformityClusterTracker(awsClient(), sdbDomain);

    ruleEngine = new ConformityRuleEngine();
    boolean eurekaEnabled = configuration().getBoolOrElse("simianarmy.conformity.Eureka.enabled", false);

    if (eurekaEnabled) {
        LOGGER.info("Initializing Discovery client.");
        DiscoveryClient discoveryClient = DiscoveryManager.getInstance().getDiscoveryClient();
        ConformityEurekaClient conformityEurekaClient = new BasicConformityEurekaClient(discoveryClient);
        if (configuration().getBoolOrElse("simianarmy.conformity.rule.InstanceIsHealthyInEureka.enabled",
                false)) {
            ruleEngine.addRule(new InstanceIsHealthyInEureka(conformityEurekaClient));
        }
        if (configuration().getBoolOrElse("simianarmy.conformity.rule.InstanceHasHealthCheckUrl.enabled",
                false)) {
            ruleEngine.addRule(new InstanceHasHealthCheckUrl(conformityEurekaClient));
        }
        if (configuration().getBoolOrElse("simianarmy.conformity.rule.InstanceHasStatusUrl.enabled", false)) {
            ruleEngine.addRule(new InstanceHasStatusUrl(conformityEurekaClient));
        }
    } else {
        LOGGER.info("Discovery/Eureka is not enabled, the conformity rules that need Eureka are not added.");
    }

    if (configuration().getBoolOrElse("simianarmy.conformity.rule.InstanceInSecurityGroup.enabled", false)) {
        String requiredSecurityGroups = configuration()
                .getStr("simianarmy.conformity.rule.InstanceInSecurityGroup.requiredSecurityGroups");
        if (!StringUtils.isBlank(requiredSecurityGroups)) {
            ruleEngine.addRule(new InstanceInSecurityGroup(getAwsCredentialsProvider(),
                    StringUtils.split(requiredSecurityGroups, ",")));
        } else {
            LOGGER.info("No required security groups is specified, "
                    + "the conformity rule InstanceInSecurityGroup is ignored.");
        }
    }

    if (configuration().getBoolOrElse("simianarmy.conformity.rule.InstanceTooOld.enabled", false)) {
        ruleEngine.addRule(new InstanceTooOld(getAwsCredentialsProvider(), (int) configuration()
                .getNumOrElse("simianarmy.conformity.rule.InstanceTooOld.instanceAgeThreshold", 180)));
    }

    if (configuration().getBoolOrElse("simianarmy.conformity.rule.SameZonesInElbAndAsg.enabled", false)) {
        ruleEngine().addRule(new SameZonesInElbAndAsg(getAwsCredentialsProvider()));
    }

    if (configuration().getBoolOrElse("simianarmy.conformity.rule.InstanceInVPC.enabled", false)) {
        ruleEngine.addRule(new InstanceInVPC(getAwsCredentialsProvider()));
    }

    if (configuration().getBoolOrElse("simianarmy.conformity.rule.CrossZoneLoadBalancing.enabled", false)) {
        ruleEngine().addRule(new CrossZoneLoadBalancing(getAwsCredentialsProvider()));
    }

    createClient(region());
    regionToAwsClient.put(region(), awsClient());

    clusterCrawler = new AWSClusterCrawler(regionToAwsClient, configuration());
    sesClient = new AmazonSimpleEmailServiceClient();
    defaultEmail = configuration().getStrOrElse("simianarmy.conformity.notification.defaultEmail", null);
    ccEmails = StringUtils
            .split(configuration().getStrOrElse("simianarmy.conformity.notification.ccEmails", ""), ",");
    sourceEmail = configuration().getStrOrElse("simianarmy.conformity.notification.sourceEmail", null);
    conformityEmailBuilder = new BasicConformityEmailBuilder();
    emailNotifier = new ConformityEmailNotifier(getConformityEmailNotifierContext());
}

From source file:com.netflix.simianarmy.basic.janitor.BasicJanitorMonkeyContext.java

License:Apache License

/**
 * The constructor.//from   ww w . jav  a  2s.c o m
 */
public BasicJanitorMonkeyContext() {
    super("simianarmy.properties", "client.properties", "janitor.properties");

    monkeyRegion = region();
    monkeyCalendar = calendar();

    String resourceDomain = configuration().getStrOrElse("simianarmy.janitor.resources.sdb.domain",
            "SIMIAN_ARMY");

    Set<String> enabledResourceSet = getEnabledResourceSet();

    janitorResourceTracker = new SimpleDBJanitorResourceTracker(awsClient(), resourceDomain);

    janitorEmailBuilder = new BasicJanitorEmailBuilder();
    sesClient = new AmazonSimpleEmailServiceClient();
    defaultEmail = configuration().getStrOrElse("simianarmy.janitor.notification.defaultEmail", "");
    ccEmails = StringUtils.split(configuration().getStrOrElse("simianarmy.janitor.notification.ccEmails", ""),
            ",");
    sourceEmail = configuration().getStrOrElse("simianarmy.janitor.notification.sourceEmail", "");
    ownerEmailDomain = configuration().getStrOrElse("simianarmy.janitor.notification.ownerEmailDomain", "");
    daysBeforeTermination = (int) configuration()
            .getNumOrElse("simianarmy.janitor.notification.daysBeforeTermination", 3);

    emailNotifier = new JanitorEmailNotifier(getJanitorEmailNotifierContext());

    janitors = new ArrayList<AbstractJanitor>();
    if (enabledResourceSet.contains("ASG")) {
        janitors.add(getASGJanitor());
    }

    if (enabledResourceSet.contains("INSTANCE")) {
        janitors.add(getInstanceJanitor());
    }

    if (enabledResourceSet.contains("EBS_VOLUME")) {
        janitors.add(getEBSVolumeJanitor());
    }

    if (enabledResourceSet.contains("EBS_SNAPSHOT")) {
        janitors.add(getEBSSnapshotJanitor());
    }

    if (enabledResourceSet.contains("LAUNCH_CONFIG")) {
        janitors.add(getLaunchConfigJanitor());
    }

    if (enabledResourceSet.contains("IMAGE")) {
        janitors.add(getImageJanitor());
    }
}

From source file:io.kodokojo.service.aws.SesEmailSender.java

License:Open Source License

@Override
public void send(List<String> to, List<String> cc, List<String> ci, String object, String content,
        boolean htmlContent) {
    if (CollectionUtils.isEmpty(to)) {
        throw new IllegalArgumentException("to must be defined.");
    }/*from   w  ww.j  a  v  a 2  s.c o m*/
    if (isBlank(content)) {
        throw new IllegalArgumentException("content must be defined.");
    }
    Destination destination = new Destination().withToAddresses(to).withBccAddresses(ci).withCcAddresses(cc);
    Content subject = new Content().withData(object);
    Content bodyContent = new Content().withData(content);
    Body body;
    if (htmlContent) {
        body = new Body().withHtml(bodyContent);
    } else {
        body = new Body().withText(bodyContent);
    }
    Message message = new Message().withSubject(subject).withBody(body);
    SendEmailRequest request = new SendEmailRequest().withSource(from).withDestination(destination)
            .withMessage(message);
    try {
        AmazonSimpleEmailServiceClient client = new AmazonSimpleEmailServiceClient();
        client.setRegion(region);
        client.sendEmail(request);
    } catch (Exception e) {
        LOGGER.error("Unable to send email to {} with subject '{}'", StringUtils.join(to, ","), subject, e);
    }
}

From source file:jp.co.hde.mail.ses.AmazonSESSample.java

License:Apache License

public static void main(String[] args) throws IOException {

    // Construct an object to contain the recipient address.
    Destination destination = new Destination().withToAddresses(new String[] { TO });

    // Create the subject and body of the message.
    Content subject = new Content().withData(SUBJECT);
    Content textBody = new Content().withData(TEXT_BODY);
    Content htmlBody = new Content().withData(HTML_BODY);
    Body body = new Body().withHtml(htmlBody);

    // Create a message with the specified subject and body.
    Message message = new Message().withSubject(subject).withBody(body);
    com.amazonaws.services.simpleemail.model.

    // Assemble the email.
            SendEmailRequest request = new SendEmailRequest().withSource(FROM).withDestination(destination)
                    .withMessage(message);

    try {/*  w  w w .jav  a 2  s.co  m*/
        System.out.println("Attempting to send an email through Amazon SES by using the AWS SDK for Java...");

        // Instantiate an Amazon SES client, which will make the service call. The service call requires your AWS credentials. 
        // Because we're not providing an argument when instantiating the client, the SDK will attempt to find your AWS credentials 
        // using the default credential provider chain. The first place the chain looks for the credentials is in environment variables 
        // AWS_ACCESS_KEY_ID and AWS_SECRET_KEY. 
        // For more information, see http://docs.aws.amazon.com/AWSSdkDocsJava/latest/DeveloperGuide/credentials.html
        AmazonSimpleEmailServiceClient client = new AmazonSimpleEmailServiceClient();

        // Choose the AWS region of the Amazon SES endpoint you want to connect to. Note that your sandbox 
        // status, sending limits, and Amazon SES identity-related settings are specific to a given AWS 
        // region, so be sure to select an AWS region in which you set up Amazon SES. Here, we are using 
        // the  region. Examples of other regions that Amazon SES supports are US_EAST_1 
        // and EU_WEST_1. For a complete list, see http://docs.aws.amazon.com/ses/latest/DeveloperGuide/regions.html 
        Region REGION = Region.getRegion(Regions.US_EAST_1);
        client.setRegion(REGION);

        // Send the email.
        client.sendEmail(request);
        System.out.println("Email sent!");
    } catch (Exception ex) {
        System.out.println("The email was not sent.");
        System.out.println("Error message: " + ex.getMessage());
    }
}

From source file:org.duracloud.mill.notification.SESNotificationManager.java

License:Apache License

/**
 * @param recipients
 */
public SESNotificationManager(String[] recipients) {
    this(recipients, new AmazonSimpleEmailServiceClient());
}