com.google.appengine.api.mail

## Class MailService.Message

- java.lang.Object
- - com.google.appengine.api.mail.MailService.Message

- Enclosing interface:
    MailService

      public static class MailService.Message
      extends java.lang.Object

  Messages are prepared by the caller, and then submitted to the Mail service for sending. Different fields are subject to different constraints, as enumerated in the `send` and `sendToAdmins` methods.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Message()`
    `Message(java.lang.String sender, java.lang.String to, java.lang.String subject, java.lang.String textBody)` Convenience constructor for simple messages

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getAmpHtmlBody()` Gets the AMP HTML body of this message.
    `java.util.Collection<MailService.Attachment>` | `getAttachments()` Gets the attachments of this message.
    `java.util.Collection<java.lang.String>` | `getBcc()` Gets the recipients in the 'bcc' field of this message.
    `java.util.Collection<java.lang.String>` | `getCc()` Gets the recipients in the 'cc' field of this message.
    `java.util.Collection<MailService.Header>` | `getHeaders()` Gets the headers of this message.
    `java.lang.String` | `getHtmlBody()` Gets the html body of this message.
    `java.lang.String` | `getReplyTo()` Gets the reply to field of this message.
    `java.lang.String` | `getSender()` Gets the sender of this message.
    `java.lang.String` | `getSubject()` Gets the subject of this message.
    `java.lang.String` | `getTextBody()` Gets the text body of this message.
    `java.util.Collection<java.lang.String>` | `getTo()` Gets the recipients in the 'to' field of this message.
    `void` | `setAmpHtmlBody(java.lang.String ampHtmlBody)` Sets the AMP HTML body of this message.
    `void` | `setAttachments(java.util.Collection<MailService.Attachment> attachments)` Sets the attachments of this message.
    `void` | `setAttachments(MailService.Attachment... attachments)` Sets the attachments of this message.
    `void` | `setBcc(java.util.Collection<java.lang.String> bcc)` Sets the 'bcc' field of this message.
    `void` | `setBcc(java.lang.String... bcc)` Sets the 'bcc' field of this message.
    `void` | `setCc(java.util.Collection<java.lang.String> cc)` Sets the 'cc' field of this message.
    `void` | `setCc(java.lang.String... cc)` Sets the 'cc' field of this message.
    `void` | `setHeaders(java.util.Collection<MailService.Header> headers)` Sets the headers of this message.
    `void` | `setHeaders(MailService.Header... headers)` Sets the headers of this message.
    `void` | `setHtmlBody(java.lang.String htmlBody)` Sets the html body of this message.
    `void` | `setReplyTo(java.lang.String replyTo)` `replyTo` may be `null`, or must be a valid email address otherwise.
    `void` | `setSender(java.lang.String sender)` `sender` must correspond to the valid email address of one of the admins for this application, or to the email address of the currently logged-in user.
    `void` | `setSubject(java.lang.String subject)` Sets the subject of this message.
    `void` | `setTextBody(java.lang.String textBody)` Sets the text body of this message.
    `void` | `setTo(java.util.Collection<java.lang.String> to)` Sets the 'to' field of this message.
    `void` | `setTo(java.lang.String... to)` Sets the 'to' field of this message.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Message

          public Message()

    - #### Message

          public Message(java.lang.String sender,
                         java.lang.String to,
                         java.lang.String subject,
                         java.lang.String textBody)

      Convenience constructor for simple messages
      Parameters:
        `sender` - The sender's email address.
        `to` - The recipient's email address or null for empty to address.
        `subject` - The message subject.
        `textBody` - The text body of the message.

  - ### Method Detail

    - #### getSender

          public java.lang.String getSender()

      Gets the sender of this message.
      Returns:
        The sender of this message.

    - #### setSender

          public void setSender(java.lang.String sender)

      `sender` must correspond to the valid email address of one of the admins for this application, or to the email address of the currently logged-in user. Sender is really the From: field of the email.

    - #### getReplyTo

          public java.lang.String getReplyTo()

      Gets the reply to field of this message.
      Returns:
        The reply to field of this message.

    - #### setReplyTo

          public void setReplyTo(java.lang.String replyTo)

      `replyTo` may be `null`, or must be a valid email address otherwise.

    - #### getTo

          public java.util.Collection<java.lang.String> getTo()

      Gets the recipients in the 'to' field of this message.
      Returns:
        A collection containing the 'to' field recipients.

    - #### setTo

          public void setTo(java.util.Collection<java.lang.String> to)

      Sets the 'to' field of this message. Each string in the collection represents exactly one email address. Having null (or invalid addresses) will lead to eventual failure during the send process.
      Parameters:
        `to` - A collection containing the email addresses to set as the 'to' field.

    - #### setTo

          public void setTo(java.lang.String... to)

      Sets the 'to' field of this message. Each string represents exactly one email address. Having null (or invalid addresses) will lead to eventual failure during the send process.
      Parameters:
        `to` - The email addresses to set as the 'to' field.

    - #### getCc

          public java.util.Collection<java.lang.String> getCc()

      Gets the recipients in the 'cc' field of this message.
      Returns:
        A collection containing the 'cc' field recipients.

    - #### setCc

          public void setCc(java.util.Collection<java.lang.String> cc)

      Sets the 'cc' field of this message. Each string in the collection represents exactly one email address. Having null (or invalid addresses) will lead cc eventual failure during the send process.
      Parameters:
        `cc` - A collection containing the email addresses cc set as the 'cc' field.

    - #### setCc

          public void setCc(java.lang.String... cc)

      Sets the 'cc' field of this message. Each string represents exactly one email address. Having null (or invalid addresses) will lead cc eventual failure during the send process.
      Parameters:
        `cc` - The email addresses cc set as the 'cc' field.

    - #### getBcc

          public java.util.Collection<java.lang.String> getBcc()

      Gets the recipients in the 'bcc' field of this message.
      Returns:
        A collection containing the 'bcc' field recipients.

    - #### setBcc

          public void setBcc(java.util.Collection<java.lang.String> bcc)

      Sets the 'bcc' field of this message. Each string in the collection represents exactly one email address. Having null (or invalid addresses) will lead bcc eventual failure during the send process.
      Parameters:
        `bcc` - A collection containing the email addresses bcc set as the 'bcc' field.

    - #### setBcc

          public void setBcc(java.lang.String... bcc)

      Sets the 'bcc' field of this message. Each string represents exactly one email address. Having null (or invalid addresses) will lead bcc eventual failure during the send process.
      Parameters:
        `bcc` - The email addresses bcc set as the 'bcc' field.

    - #### getSubject

          public java.lang.String getSubject()

      Gets the subject of this message.
      Returns:
        The subject of this message.

    - #### setSubject

          public void setSubject(java.lang.String subject)

      Sets the subject of this message. A null or empty subject will lead to eventual failure during the send process.
      Parameters:
        `subject` - A string containing the new subject of this message.

    - #### getTextBody

          public java.lang.String getTextBody()

      Gets the text body of this message.
      Returns:
        The text body.

    - #### setTextBody

          public void setTextBody(java.lang.String textBody)

      Sets the text body of this message. At least one of `textBody` and `htmlBody` must not be `null`.
      Parameters:
        `textBody` - A string containing the new text body of this message.

    - #### getHtmlBody

          public java.lang.String getHtmlBody()

      Gets the html body of this message.
      Returns:
        The html body.

    - #### setHtmlBody

          public void setHtmlBody(java.lang.String htmlBody)

      Sets the html body of this message. At least one of `textBody` and `htmlBody` must not be `null`.
      Parameters:
        `htmlBody` - A string containing the new html body of this message.

    - #### getAmpHtmlBody

          public java.lang.String getAmpHtmlBody()

      Gets the AMP HTML body of this message. See `setAmpHtmlBody(java.lang.String)` for more details.
      Returns:
        The AMP HTML body.

    - #### setAmpHtmlBody

          public void setAmpHtmlBody(java.lang.String ampHtmlBody)

      Sets the AMP HTML body of this message. This field is optional. Setting AMP HTML body makes the email an AMP Email. Plain text or HTML may become fallback content depending on the email client used.
      Parameters:
        `htmlBody` - A string containing the new AMP HTML body of this message.

    - #### getAttachments

          public java.util.Collection<MailService.Attachment> getAttachments()

      Gets the attachments of this message.
      Returns:
        A collection containing the attachments of this message.

    - #### setAttachments

          public void setAttachments(java.util.Collection<MailService.Attachment> attachments)

      Sets the attachments of this message. `attachments` may be `null`, otherwise each attachment must have a corresponding file name with one of the white-listed extensions.
      Parameters:
        `attachments` - A collection of attachments.

    - #### setAttachments

          public void setAttachments(MailService.Attachment... attachments)

      Sets the attachments of this message. `attachments` may be `null`, otherwise each attachment must have a corresponding file name with one of the white-listed extensions.
      Parameters:
        `attachments` - Attachments to attach to this message.

    - #### getHeaders

          public java.util.Collection<MailService.Header> getHeaders()

      Gets the headers of this message.
      Returns:
        A collection containing the headers of this message.

    - #### setHeaders

          public void setHeaders(java.util.Collection<MailService.Header> headers)

      Sets the headers of this message. `headers` may be `null`, otherwise each header name must be one of the white-listed names.
      Parameters:
        `headers` - A collection of headers.

    - #### setHeaders

          public void setHeaders(MailService.Header... headers)

      Sets the headers of this message. `headers` may be `null`, otherwise each header name must be one of the white-listed names.
      Parameters:
        `headers` - A collection of headers.