ErrorAware
, LogTarget
, Closeable
public class SMTPOutputLogTarget extends AbstractOutputTarget
Modifier and Type | Field | Description |
---|---|---|
private java.lang.StringBuffer |
m_buffer |
|
private long |
m_bufferTime |
The time that the first log entry in the current buffer arrived.
|
private boolean |
m_debug |
Flag which controls whether debug is enabled for each message.
|
private javax.mail.Address |
m_fromAddress |
|
private long |
m_maxDelayTime |
The maximun delay that a message will be allowed to wait in the queue
before being sent.
|
private int |
m_maxMsgSize |
|
private javax.mail.Message |
m_message |
|
private int |
m_msgSize |
|
private java.lang.Thread |
m_runner |
Runner thread which is responsible for sending batched log entries in
the background.
|
private javax.mail.Session |
m_session |
|
private boolean |
m_shutdown |
Flag which will be set in the close method when it is time to shutdown.
|
private java.lang.String |
m_subject |
|
private javax.mail.Address[] |
m_toAddresses |
Constructor | Description |
---|---|
SMTPOutputLogTarget(javax.mail.Session session,
javax.mail.Address[] toAddresses,
javax.mail.Address fromAddress,
java.lang.String subject,
int maxMsgSize,
int maxDelayTime,
Formatter formatter) |
SMTPOutputLogTarget constructor.
|
SMTPOutputLogTarget(javax.mail.Session session,
javax.mail.Address[] toAddresses,
javax.mail.Address fromAddress,
java.lang.String subject,
int maxMsgSize,
Formatter formatter) |
SMTPOutputLogTarget constructor.
|
Modifier and Type | Method | Description |
---|---|---|
void |
close() |
Closes this log target.
|
private void |
send() |
Helper method to send the currently buffered message,
if existing.
|
void |
setDebug(boolean flag) |
Method to enable/disable debugging on the mail session.
|
protected void |
write(java.lang.String data) |
Method to write data to the log target.
|
doProcessEvent, getFormatter, open
getErrorHandler, isOpen, processEvent, setErrorHandler
private final javax.mail.Session m_session
private javax.mail.Message m_message
private final javax.mail.Address[] m_toAddresses
private final javax.mail.Address m_fromAddress
private final java.lang.String m_subject
private int m_msgSize
private final int m_maxMsgSize
private java.lang.StringBuffer m_buffer
private long m_bufferTime
private long m_maxDelayTime
private java.lang.Thread m_runner
private boolean m_shutdown
private boolean m_debug
public SMTPOutputLogTarget(javax.mail.Session session, javax.mail.Address[] toAddresses, javax.mail.Address fromAddress, java.lang.String subject, int maxMsgSize, int maxDelayTime, Formatter formatter)
session
- mail session to be usedtoAddresses
- addresses logs should be sent tofromAddress
- address logs say they come fromsubject
- subject line logs should usemaxMsgSize
- maximum size of any log mail, in units of log events.
If this is greater than one but maxDelayTime is 0 then
log events may stay queued for a long period of time
if less than the specified number of messages are
logged. Any unset messages will be sent when the
target is closed.maxDelayTime
- specifies the longest delay in seconds that a log
entry will be queued before being sent. Setting
this to a value larger than 0 will cause a
background thread to be used to queue up and send
messages. Ignored if maxMsgSize is 1 or less.formatter
- log formatter to usepublic SMTPOutputLogTarget(javax.mail.Session session, javax.mail.Address[] toAddresses, javax.mail.Address fromAddress, java.lang.String subject, int maxMsgSize, Formatter formatter)
session
- mail session to be usedtoAddresses
- addresses logs should be sent tofromAddress
- address logs say they come fromsubject
- subject line logs should usemaxMsgSize
- maximum size of any log mail, in units of log events.
Log events may stay queued for a long period of time
if less than the specified number of messages are
logged. Any unset messages will be sent when the
target is closed.formatter
- log formatter to useprotected void write(java.lang.String data)
write
in class AbstractOutputTarget
data
- logging data to be written to targetpublic void close()
close
in interface Closeable
close
in class AbstractOutputTarget
public void setDebug(boolean flag)
flag
- true to enable debugging, false to disable itprivate void send()
Copyright © 2003-2004 The Apache Software Foundation. All Rights Reserved.