Class URLAttachment

java.lang.Object
de.aristaflow.adept2.model.mail.SerialisableAttachment
de.aristaflow.adept2.model.mail.URLAttachment
All Implemented Interfaces:
Closeable, Serializable, AutoCloseable

public class URLAttachment extends SerialisableAttachment
A SerialisableAttachment providing a URL for the content. Note that this can only be used if the URL is accessible by the mail service. Otherwise the content cannot be attached!
See Also:
  • Field Details

    • url

      protected final URL url
      The URL where to get the content to attach from.
  • Constructor Details

    • URLAttachment

      public URLAttachment(String name, String description, URL url)
      Creates an attachment having the designated name, description and URL providing the content. The content type is set to "application/octet-stream".
      Parameters:
      name - The name of the attachment.
      description - The description of the attachment.
      url - The URL where to get the content to attach from. This needs to be accessible from the MailService!
    • URLAttachment

      public URLAttachment(String name, String description, URL url, boolean inline)
      Creates an attachment having the designated name, description and URL providing the content. The content type is set to "application/octet-stream".
      Parameters:
      name - The name of the attachment.
      description - The description of the attachment.
      url - The URL where to get the content to attach from. This needs to be accessible from the MailService!
      inline - Whether to inline this attachment in case of an HTML message using the designated name.
    • URLAttachment

      public URLAttachment(String name, String description, URL url, String inlineName)
      Creates an attachment having the designated name, description and URL providing the content. The content type is set to "application/octet-stream".
      Parameters:
      name - The name of the attachment.
      description - The description of the attachment.
      url - The URL where to get the content to attach from. This needs to be accessible from the MailService!
      inlineName - The name used in the corresponding HTML message to refer to this attachment to be inlined. Use null to not inline the attachment.
    • URLAttachment

      public URLAttachment(String name, String description, String contentType, URL url)
      Creates an attachment having the designated name, description, content type (MIME) and URL providing the content.
      Parameters:
      name - The name of the attachment.
      description - The description of the attachment.
      contentType - The content type (MIME) of the attachment.
      url - The URL where to get the content to attach from. This needs to be accessible from the MailService!
    • URLAttachment

      public URLAttachment(String name, String description, String contentType, URL url, boolean inline)
      Creates an attachment having the designated name, description, content type (MIME) and URL providing the content.
      Parameters:
      name - The name of the attachment.
      description - The description of the attachment.
      contentType - The content type (MIME) of the attachment.
      url - The URL where to get the content to attach from. This needs to be accessible from the MailService!
      inline - Whether to inline this attachment in case of an HTML message using the designated name.
    • URLAttachment

      public URLAttachment(String name, String description, String contentType, URL url, String inlineName)
      Creates an attachment having the designated name, description, content type (MIME) and URL providing the content.
      Parameters:
      name - The name of the attachment.
      description - The description of the attachment.
      contentType - The content type (MIME) of the attachment.
      url - The URL where to get the content to attach from. This needs to be accessible from the MailService!
      inlineName - The name used in the corresponding HTML message to refer to this attachment to be inlined. Use null to not inline the attachment.
  • Method Details

    • getContent

      public InputStream getContent() throws IOException
      Description copied from class: SerialisableAttachment
      Gets the content of the attachment represented as InputStream.
      Note that this should only be called by the receiving service since the InputStream cannot be serialised.
      Specified by:
      getContent in class SerialisableAttachment
      Returns:
      The actual data of the attachment. The caller is responsible for closing.
      Throws:
      IOException - If there are problems retrieving the content, for instance converting the transferred serialisable data to an InputStream, an IOException will be thrown.