Class MovingMessage


  • public class MovingMessage
    extends java.lang.Object
    Contains information for delivering a mime email.

    Since a MovingMessage many be passed through many queues and handlers before it can be safely deleted, destruction it handled by reference counting. When an object first obtains a reference to a MovingMessage, it should immediately call acquire(). As soon as it has finished processing, that object must call releaseContent(). For example usage, see foedus.processing.OutgoingImpl.

    • Constructor Detail

      • MovingMessage

        public MovingMessage​(Workspace workspace)
    • Method Detail

      • getMessage

        public javax.mail.internet.MimeMessage getMessage()
      • getContent

        public java.io.Reader getContent()
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • acquire

        public void acquire()
      • releaseContent

        public void releaseContent()
      • setReturnPath

        public void setReturnPath​(MailAddress fromAddress)
      • addRecipient

        public void addRecipient​(MailAddress s)
      • removeRecipient

        public void removeRecipient​(MailAddress s)
      • getRecipientIterator

        public java.util.Iterator getRecipientIterator()
      • readDotTerminatedContent

        public void readDotTerminatedContent​(java.io.BufferedReader in)
                                      throws java.io.IOException
        Reads the contents of the stream until <CRLF>.<CRLF> is encountered.

        It would be possible and prehaps desirable to prevent the adding of an unnecessary CRLF at the end of the message, but it hardly seems worth 30 seconds of effort.

        Throws:
        java.io.IOException