Class JavaMailer2.LoggingTransportListener

  • All Implemented Interfaces:
    EventListener, javax.mail.event.TransportListener
    Enclosing class:
    JavaMailer2

    public static class JavaMailer2.LoggingTransportListener
    extends Object
    implements javax.mail.event.TransportListener
    • Constructor Detail

      • LoggingTransportListener

        public LoggingTransportListener()
    • Method Detail

      • messageDelivered

        public void messageDelivered​(javax.mail.event.TransportEvent event)
        Specified by:
        messageDelivered in interface javax.mail.event.TransportListener
      • messageNotDelivered

        public void messageNotDelivered​(javax.mail.event.TransportEvent event)
        Specified by:
        messageNotDelivered in interface javax.mail.event.TransportListener
      • messagePartiallyDelivered

        public void messagePartiallyDelivered​(javax.mail.event.TransportEvent event)
        Specified by:
        messagePartiallyDelivered in interface javax.mail.event.TransportListener
      • hasAnythingBeenReceived

        public boolean hasAnythingBeenReceived()
      • assertAllMessagesDelivered

        public void assertAllMessagesDelivered()
                                        throws JavaMailerException
        We sleep up to ten times for 10ms, checking to see if anything has been received because the notifications are done by a separate thread. We also wait another 50ms after we see the first notification come in, just to see if anything else trickles in. This isn't perfect, but it's somewhat of a shot in the dark to hope that we catch most things, to try to catch as many errors as possible so we can fairly reliably report if anything had problems.
        Throws:
        JavaMailerException