/* * Copyright 2010-2014 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the email-2010-12-01.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.SimpleEmail.Model { /// /// When included in a receipt rule, this action saves the received message to an Amazon /// Simple Storage Service (Amazon S3) bucket and, optionally, publishes a notification /// to Amazon Simple Notification Service (Amazon SNS). /// /// /// /// To enable Amazon SES to write emails to your Amazon S3 bucket, use an AWS KMS key /// to encrypt your emails, or publish to an Amazon SNS topic of another account, Amazon /// SES must have permission to access those resources. For information about giving permissions, /// see the Amazon /// SES Developer Guide. /// /// /// /// When you save your emails to an Amazon S3 bucket, the maximum email size (including /// headers) is 30 MB. Emails larger than that will bounce. /// /// /// /// For information about specifying Amazon S3 actions in receipt rules, see the Amazon /// SES Developer Guide. /// /// public partial class S3Action { private string _bucketName; private string _kmsKeyArn; private string _objectKeyPrefix; private string _topicArn; /// /// Gets and sets the property BucketName. /// /// The name of the Amazon S3 bucket that incoming email will be saved to. /// /// [AWSProperty(Required=true)] public string BucketName { get { return this._bucketName; } set { this._bucketName = value; } } // Check to see if BucketName property is set internal bool IsSetBucketName() { return this._bucketName != null; } /// /// Gets and sets the property KmsKeyArn. /// /// The customer master key that Amazon SES should use to encrypt your emails before saving /// them to the Amazon S3 bucket. You can use the default master key or a custom master /// key you created in AWS KMS as follows: /// /// /// /// For more information about key policies, see the AWS /// KMS Developer Guide. If you do not specify a master key, Amazon SES will not encrypt /// your emails. /// /// /// /// Your mail is encrypted by Amazon SES using the Amazon S3 encryption client before /// the mail is submitted to Amazon S3 for storage. It is not encrypted using Amazon S3 /// server-side encryption. This means that you must use the Amazon S3 encryption client /// to decrypt the email after retrieving it from Amazon S3, as the service has no access /// to use your AWS KMS keys for decryption. This encryption client is currently available /// with the AWS SDK for Java and AWS SDK for Ruby only. For more information /// about client-side encryption using AWS KMS master keys, see the Amazon /// S3 Developer Guide. /// /// /// public string KmsKeyArn { get { return this._kmsKeyArn; } set { this._kmsKeyArn = value; } } // Check to see if KmsKeyArn property is set internal bool IsSetKmsKeyArn() { return this._kmsKeyArn != null; } /// /// Gets and sets the property ObjectKeyPrefix. /// /// The key prefix of the Amazon S3 bucket. The key prefix is similar to a directory name /// that enables you to store similar data under the same directory in a bucket. /// /// public string ObjectKeyPrefix { get { return this._objectKeyPrefix; } set { this._objectKeyPrefix = value; } } // Check to see if ObjectKeyPrefix property is set internal bool IsSetObjectKeyPrefix() { return this._objectKeyPrefix != null; } /// /// Gets and sets the property TopicArn. /// /// The ARN of the Amazon SNS topic to notify when the message is saved to the Amazon /// S3 bucket. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic. /// For more information about Amazon SNS topics, see the Amazon /// SNS Developer Guide. /// /// public string TopicArn { get { return this._topicArn; } set { this._topicArn = value; } } // Check to see if TopicArn property is set internal bool IsSetTopicArn() { return this._topicArn != null; } } }