Class SmtpManager
java.lang.Object
org.apache.logging.log4j.core.appender.AbstractManager
org.apache.logging.log4j.core.net.MailManager
org.apache.logging.log4j.core.net.SmtpManager
- All Implemented Interfaces:
AutoCloseable
Manager for sending SMTP events.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Factory to create the SMTP Manager.Nested classes/interfaces inherited from class org.apache.logging.log4j.core.net.MailManager
MailManager.FactoryData
Nested classes/interfaces inherited from class org.apache.logging.log4j.core.appender.AbstractManager
AbstractManager.AbstractFactoryData
-
Field Summary
Fields inherited from class org.apache.logging.log4j.core.appender.AbstractManager
count, LOGGER
-
Constructor Summary
ModifierConstructorDescriptionprotected
SmtpManager
(String name, javax.mail.Session session, javax.mail.internet.MimeMessage message, MailManager.FactoryData data) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds an event to the cyclic buffer.protected void
encodeContent
(byte[] bytes, String encoding, ByteArrayOutputStream out) protected byte[]
encodeContentToBytes
(byte[] rawBytes, String encoding) protected byte[]
formatContentToBytes
(LogEvent[] priorEvents, LogEvent appendEvent, Layout<?> layout) protected String
getEncoding
(byte[] rawBytes, String contentType) protected javax.mail.internet.InternetHeaders
getHeaders
(String contentType, String encoding) protected javax.mail.internet.MimeMultipart
getMimeMultipart
(byte[] encodedBytes, javax.mail.internet.InternetHeaders headers) static SmtpManager
getSmtpManager
(Configuration config, String to, String cc, String bcc, String from, String replyTo, String subject, String protocol, String host, int port, String username, String password, boolean isDebug, String filterName, int numElements, SslConfiguration sslConfiguration) Deprecated.void
sendEvents
(Layout<?> layout, LogEvent appendEvent) Send the contents of the cyclic buffer as an e-mail message.protected void
sendMultipartMessage
(javax.mail.internet.MimeMessage msg, javax.mail.internet.MimeMultipart mp) Deprecated.protected void
sendMultipartMessage
(javax.mail.internet.MimeMessage msg, javax.mail.internet.MimeMultipart mp, String subject) protected void
writeBuffer
(LogEvent[] priorEvents, LogEvent appendEvent, Layout<?> layout, OutputStream out) protected void
writeFooter
(Layout<?> layout, OutputStream out) protected void
writeHeader
(Layout<?> layout, OutputStream out) Methods inherited from class org.apache.logging.log4j.core.appender.AbstractManager
close, getContentFormat, getCount, getLoggerContext, getManager, getName, getStrSubstitutor, hasManager, log, logDebug, logError, logger, logWarn, narrow, release, releaseSub, stop, updateData
-
Field Details
-
FACTORY
-
-
Constructor Details
-
SmtpManager
protected SmtpManager(String name, javax.mail.Session session, javax.mail.internet.MimeMessage message, MailManager.FactoryData data)
-
-
Method Details
-
add
Description copied from class:MailManager
Adds an event to the cyclic buffer.- Specified by:
add
in classMailManager
- Parameters:
event
- The event to add.
-
getSmtpManager
@Deprecated public static SmtpManager getSmtpManager(Configuration config, String to, String cc, String bcc, String from, String replyTo, String subject, String protocol, String host, int port, String username, String password, boolean isDebug, String filterName, int numElements, SslConfiguration sslConfiguration) Deprecated. -
sendEvents
Description copied from class:MailManager
Send the contents of the cyclic buffer as an e-mail message.- Specified by:
sendEvents
in classMailManager
- Parameters:
layout
- The layout for formatting the events.appendEvent
- The event that triggered the send.
-
formatContentToBytes
protected byte[] formatContentToBytes(LogEvent[] priorEvents, LogEvent appendEvent, Layout<?> layout) throws IOException - Throws:
IOException
-
writeHeader
- Throws:
IOException
-
writeBuffer
protected void writeBuffer(LogEvent[] priorEvents, LogEvent appendEvent, Layout<?> layout, OutputStream out) throws IOException - Throws:
IOException
-
getEncoding
-
encodeContentToBytes
protected byte[] encodeContentToBytes(byte[] rawBytes, String encoding) throws javax.mail.MessagingException, IOException - Throws:
javax.mail.MessagingException
IOException
-
encodeContent
protected void encodeContent(byte[] bytes, String encoding, ByteArrayOutputStream out) throws javax.mail.MessagingException, IOException - Throws:
javax.mail.MessagingException
IOException
-
getHeaders
-
getMimeMultipart
protected javax.mail.internet.MimeMultipart getMimeMultipart(byte[] encodedBytes, javax.mail.internet.InternetHeaders headers) throws javax.mail.MessagingException - Throws:
javax.mail.MessagingException
-
sendMultipartMessage
@Deprecated protected void sendMultipartMessage(javax.mail.internet.MimeMessage msg, javax.mail.internet.MimeMultipart mp) throws javax.mail.MessagingException Deprecated.Please use thesendMultipartMessage(MimeMessage, MimeMultipart, String)
method instead.- Throws:
javax.mail.MessagingException
-
sendMultipartMessage
protected void sendMultipartMessage(javax.mail.internet.MimeMessage msg, javax.mail.internet.MimeMultipart mp, String subject) throws javax.mail.MessagingException - Throws:
javax.mail.MessagingException
-
sendMultipartMessage(MimeMessage, MimeMultipart, String)
method instead.