Class SmtpManager

  • All Implemented Interfaces:
    java.lang.AutoCloseable

    public class SmtpManager
    extends MailManager
    Manager for sending SMTP events.
    • Constructor Detail

      • SmtpManager

        protected SmtpManager​(java.lang.String name,
                              jakarta.mail.Session session,
                              jakarta.mail.internet.MimeMessage message,
                              MailManager.FactoryData data)
    • Method Detail

      • createMimeMessage

        private static jakarta.mail.internet.MimeMessage createMimeMessage​(MailManager.FactoryData data,
                                                                           jakarta.mail.Session session,
                                                                           LogEvent appendEvent)
                                                                    throws jakarta.mail.MessagingException
        Throws:
        jakarta.mail.MessagingException
      • add

        public void add​(LogEvent event)
        Description copied from class: MailManager
        Adds an event to the cyclic buffer.
        Specified by:
        add in class MailManager
        Parameters:
        event - The event to add.
      • sendEvents

        public void sendEvents​(Layout<?> layout,
                               LogEvent appendEvent)
        Description copied from class: MailManager
        Send the contents of the cyclic buffer as an e-mail message.
        Specified by:
        sendEvents in class MailManager
        Parameters:
        layout - The layout for formatting the events.
        appendEvent - The event that triggered the send.
      • removeAllBufferedEvents

        LogEvent[] removeAllBufferedEvents()
      • formatContentToBytes

        protected byte[] formatContentToBytes​(LogEvent[] priorEvents,
                                              LogEvent appendEvent,
                                              Layout<?> layout)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • writeContent

        private void writeContent​(LogEvent[] priorEvents,
                                  LogEvent appendEvent,
                                  Layout<?> layout,
                                  java.io.ByteArrayOutputStream out)
                           throws java.io.IOException
        Throws:
        java.io.IOException
      • writeHeader

        protected void writeHeader​(Layout<?> layout,
                                   java.io.OutputStream out)
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • writeBuffer

        protected void writeBuffer​(LogEvent[] priorEvents,
                                   LogEvent appendEvent,
                                   Layout<?> layout,
                                   java.io.OutputStream out)
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • writeFooter

        protected void writeFooter​(Layout<?> layout,
                                   java.io.OutputStream out)
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • getEncoding

        protected java.lang.String getEncoding​(byte[] rawBytes,
                                               java.lang.String contentType)
      • encodeContentToBytes

        protected byte[] encodeContentToBytes​(byte[] rawBytes,
                                              java.lang.String encoding)
                                       throws jakarta.mail.MessagingException,
                                              java.io.IOException
        Throws:
        jakarta.mail.MessagingException
        java.io.IOException
      • encodeContent

        protected void encodeContent​(byte[] bytes,
                                     java.lang.String encoding,
                                     java.io.ByteArrayOutputStream out)
                              throws jakarta.mail.MessagingException,
                                     java.io.IOException
        Throws:
        jakarta.mail.MessagingException
        java.io.IOException
      • getHeaders

        protected jakarta.mail.internet.InternetHeaders getHeaders​(java.lang.String contentType,
                                                                   java.lang.String encoding)
      • getMimeMultipart

        protected jakarta.mail.internet.MimeMultipart getMimeMultipart​(byte[] encodedBytes,
                                                                       jakarta.mail.internet.InternetHeaders headers)
                                                                throws jakarta.mail.MessagingException
        Throws:
        jakarta.mail.MessagingException
      • sendMultipartMessage

        @Deprecated
        protected void sendMultipartMessage​(jakarta.mail.internet.MimeMessage msg,
                                            jakarta.mail.internet.MimeMultipart mp)
                                     throws jakarta.mail.MessagingException
        Deprecated.
        Throws:
        jakarta.mail.MessagingException
      • sendMultipartMessage

        protected void sendMultipartMessage​(jakarta.mail.internet.MimeMessage msg,
                                            jakarta.mail.internet.MimeMultipart mp,
                                            java.lang.String subject)
                                     throws jakarta.mail.MessagingException
        Throws:
        jakarta.mail.MessagingException
      • connect

        private void connect​(LogEvent appendEvent)