/* * Copyright 2010-2020 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. */ package com.amazonaws.services.simpleemail.model; import java.io.Serializable; /** *
* Represents the raw data of the message. *
*/ public class RawMessage implements Serializable { /** ** The raw data of the message. This data needs to base64-encoded if you are * accessing Amazon SES directly through the HTTPS interface. If you are * accessing Amazon SES using an AWS SDK, the SDK takes care of the base * 64-encoding for you. In all cases, the client must ensure that the * message format complies with Internet email standards regarding email * header fields, MIME types, and MIME encoding. *
** The To:, CC:, and BCC: headers in the raw message can contain a group * list. *
*
* If you are using SendRawEmail
with sending authorization,
* you can include X-headers in the raw message to specify the "Source,"
* "From," and "Return-Path" addresses. For more information, see the
* documentation for SendRawEmail
.
*
* Do not include these X-headers in the DKIM signature, because they are * removed by Amazon SES before sending the email. *
** For more information, go to the Amazon SES Developer Guide. *
*/ private java.nio.ByteBuffer data; /** * Default constructor for RawMessage object. Callers should use the setter * or fluent setter (with...) methods to initialize any additional object * members. */ public RawMessage() { } /** * Constructs a new RawMessage object. Callers should use the setter or * fluent setter (with...) methods to initialize any additional object * members. * * @param data* The raw data of the message. This data needs to base64-encoded * if you are accessing Amazon SES directly through the HTTPS * interface. If you are accessing Amazon SES using an AWS SDK, * the SDK takes care of the base 64-encoding for you. In all * cases, the client must ensure that the message format complies * with Internet email standards regarding email header fields, * MIME types, and MIME encoding. *
** The To:, CC:, and BCC: headers in the raw message can contain * a group list. *
*
* If you are using SendRawEmail
with sending
* authorization, you can include X-headers in the raw message to
* specify the "Source," "From," and "Return-Path" addresses. For
* more information, see the documentation for
* SendRawEmail
.
*
* Do not include these X-headers in the DKIM signature, because * they are removed by Amazon SES before sending the email. *
** For more information, go to the Amazon SES Developer Guide. *
*/ public RawMessage(java.nio.ByteBuffer data) { setData(data); } /** ** The raw data of the message. This data needs to base64-encoded if you are * accessing Amazon SES directly through the HTTPS interface. If you are * accessing Amazon SES using an AWS SDK, the SDK takes care of the base * 64-encoding for you. In all cases, the client must ensure that the * message format complies with Internet email standards regarding email * header fields, MIME types, and MIME encoding. *
** The To:, CC:, and BCC: headers in the raw message can contain a group * list. *
*
* If you are using SendRawEmail
with sending authorization,
* you can include X-headers in the raw message to specify the "Source,"
* "From," and "Return-Path" addresses. For more information, see the
* documentation for SendRawEmail
.
*
* Do not include these X-headers in the DKIM signature, because they are * removed by Amazon SES before sending the email. *
** For more information, go to the Amazon SES Developer Guide. *
* * @return* The raw data of the message. This data needs to base64-encoded if * you are accessing Amazon SES directly through the HTTPS * interface. If you are accessing Amazon SES using an AWS SDK, the * SDK takes care of the base 64-encoding for you. In all cases, the * client must ensure that the message format complies with Internet * email standards regarding email header fields, MIME types, and * MIME encoding. *
** The To:, CC:, and BCC: headers in the raw message can contain a * group list. *
*
* If you are using SendRawEmail
with sending
* authorization, you can include X-headers in the raw message to
* specify the "Source," "From," and "Return-Path" addresses. For
* more information, see the documentation for
* SendRawEmail
.
*
* Do not include these X-headers in the DKIM signature, because * they are removed by Amazon SES before sending the email. *
** For more information, go to the Amazon SES Developer Guide. *
*/ public java.nio.ByteBuffer getData() { return data; } /** ** The raw data of the message. This data needs to base64-encoded if you are * accessing Amazon SES directly through the HTTPS interface. If you are * accessing Amazon SES using an AWS SDK, the SDK takes care of the base * 64-encoding for you. In all cases, the client must ensure that the * message format complies with Internet email standards regarding email * header fields, MIME types, and MIME encoding. *
** The To:, CC:, and BCC: headers in the raw message can contain a group * list. *
*
* If you are using SendRawEmail
with sending authorization,
* you can include X-headers in the raw message to specify the "Source,"
* "From," and "Return-Path" addresses. For more information, see the
* documentation for SendRawEmail
.
*
* Do not include these X-headers in the DKIM signature, because they are * removed by Amazon SES before sending the email. *
** For more information, go to the Amazon SES Developer Guide. *
* * @param data* The raw data of the message. This data needs to base64-encoded * if you are accessing Amazon SES directly through the HTTPS * interface. If you are accessing Amazon SES using an AWS SDK, * the SDK takes care of the base 64-encoding for you. In all * cases, the client must ensure that the message format complies * with Internet email standards regarding email header fields, * MIME types, and MIME encoding. *
** The To:, CC:, and BCC: headers in the raw message can contain * a group list. *
*
* If you are using SendRawEmail
with sending
* authorization, you can include X-headers in the raw message to
* specify the "Source," "From," and "Return-Path" addresses. For
* more information, see the documentation for
* SendRawEmail
.
*
* Do not include these X-headers in the DKIM signature, because * they are removed by Amazon SES before sending the email. *
** For more information, go to the Amazon SES Developer Guide. *
*/ public void setData(java.nio.ByteBuffer data) { this.data = data; } /** ** The raw data of the message. This data needs to base64-encoded if you are * accessing Amazon SES directly through the HTTPS interface. If you are * accessing Amazon SES using an AWS SDK, the SDK takes care of the base * 64-encoding for you. In all cases, the client must ensure that the * message format complies with Internet email standards regarding email * header fields, MIME types, and MIME encoding. *
** The To:, CC:, and BCC: headers in the raw message can contain a group * list. *
*
* If you are using SendRawEmail
with sending authorization,
* you can include X-headers in the raw message to specify the "Source,"
* "From," and "Return-Path" addresses. For more information, see the
* documentation for SendRawEmail
.
*
* Do not include these X-headers in the DKIM signature, because they are * removed by Amazon SES before sending the email. *
** For more information, go to the Amazon SES Developer Guide. *
** Returns a reference to this object so that method calls can be chained * together. * * @param data
* The raw data of the message. This data needs to base64-encoded * if you are accessing Amazon SES directly through the HTTPS * interface. If you are accessing Amazon SES using an AWS SDK, * the SDK takes care of the base 64-encoding for you. In all * cases, the client must ensure that the message format complies * with Internet email standards regarding email header fields, * MIME types, and MIME encoding. *
** The To:, CC:, and BCC: headers in the raw message can contain * a group list. *
*
* If you are using SendRawEmail
with sending
* authorization, you can include X-headers in the raw message to
* specify the "Source," "From," and "Return-Path" addresses. For
* more information, see the documentation for
* SendRawEmail
.
*
* Do not include these X-headers in the DKIM signature, because * they are removed by Amazon SES before sending the email. *
** For more information, go to the Amazon SES Developer Guide. *
* @return A reference to this updated object so that method calls can be * chained together. */ public RawMessage withData(java.nio.ByteBuffer data) { this.data = data; return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getData() != null) sb.append("Data: " + getData()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getData() == null) ? 0 : getData().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof RawMessage == false) return false; RawMessage other = (RawMessage) obj; if (other.getData() == null ^ this.getData() == null) return false; if (other.getData() != null && other.getData().equals(this.getData()) == false) return false; return true; } }