com.sun.mail.dsn

## Class DeliveryStatus

- java.lang.Object
- - com.sun.mail.dsn.Report
  - - com.sun.mail.dsn.DeliveryStatus

-     public class DeliveryStatus
      extends Report

  A message/delivery-status message content, as defined in RFC 3464.
  Since:
    JavaMail 1.4

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected InternetHeaders` | `messageDSN` The DSN fields for the message.
    `protected InternetHeaders[]` | `recipientDSN` The DSN fields for each recipient.

    - ### Fields inherited from class com.sun.mail.dsn.Report

      `type`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DeliveryStatus()` Construct a delivery status notification with no content.
    `DeliveryStatus(InputStream is)` Construct a delivery status notification by parsing the supplied input stream.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addRecipientDSN(InternetHeaders h)` Add deliver status notification information for another recipient.
    `InternetHeaders` | `getMessageDSN()` Return all the per-message fields in the delivery status notification.
    `InternetHeaders` | `getRecipientDSN(int n)` Return the delivery status notification information for the specified recipient.
    `int` | `getRecipientDSNCount()` Return the number of recipients for which we have per-recipient delivery status notification information.
    `void` | `setMessageDSN(InternetHeaders messageDSN)` Set the per-message fields in the delivery status notification.
    `String` | `toString()`
    `void` | `writeTo(OutputStream os)`

    - ### Methods inherited from class com.sun.mail.dsn.Report

      `getType`

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### messageDSN

          protected InternetHeaders messageDSN

      The DSN fields for the message.

    - #### recipientDSN

          protected InternetHeaders[] recipientDSN

      The DSN fields for each recipient.

  - ### Constructor Detail

    - #### DeliveryStatus

          public DeliveryStatus()
                         throws MessagingException

      Construct a delivery status notification with no content.
      Throws:
        `MessagingException` - for failures

    - #### DeliveryStatus

          public DeliveryStatus(InputStream is)
                         throws MessagingException,
                                IOException

      Construct a delivery status notification by parsing the supplied input stream.
      Parameters:
        `is` - the input stream
      Throws:
        `IOException` - for I/O errors reading the stream
        `MessagingException` - for other failures

  - ### Method Detail

    - #### getMessageDSN

          public InternetHeaders getMessageDSN()

      Return all the per-message fields in the delivery status notification. The fields are defined as:

              per-message-fields =
                    [ original-envelope-id-field CRLF ]
                    reporting-mta-field CRLF
                    [ dsn-gateway-field CRLF ]
                    [ received-from-mta-field CRLF ]
                    [ arrival-date-field CRLF ]
                    *( extension-field CRLF )

      Returns:
        the per-message DSN fields

    - #### setMessageDSN

          public void setMessageDSN(InternetHeaders messageDSN)

      Set the per-message fields in the delivery status notification.
      Parameters:
        `messageDSN` - the per-message DSN fields

    - #### getRecipientDSNCount

          public int getRecipientDSNCount()

      Return the number of recipients for which we have per-recipient delivery status notification information.
      Returns:
        the number of recipients

    - #### getRecipientDSN

          public InternetHeaders getRecipientDSN(int n)

      Return the delivery status notification information for the specified recipient.
      Parameters:
        `n` - the recipient number
      Returns:
        the DSN fields for the recipient

    - #### addRecipientDSN

          public void addRecipientDSN(InternetHeaders h)

      Add deliver status notification information for another recipient.
      Parameters:
        `h` - the DSN fields for the recipient

    - #### writeTo

          public void writeTo(OutputStream os)
                       throws IOException

      Throws:
        `IOException`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2016 Oracle. All rights reserved.