Package org.apache.log.output.db
Class AbstractJDBCTarget
- java.lang.Object
-
- org.apache.log.output.AbstractTarget
-
- org.apache.log.output.db.AbstractJDBCTarget
-
- All Implemented Interfaces:
ErrorAware,LogTarget,Closeable
- Direct Known Subclasses:
DefaultJDBCTarget
public abstract class AbstractJDBCTarget extends AbstractTarget
Abstract JDBC target.- Author:
- Avalon Development Team, Peter Donald
-
-
Field Summary
Fields Modifier and Type Field Description private java.sql.Connectionm_connectionprivate javax.sql.DataSourcem_dataSource
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractJDBCTarget(javax.sql.DataSource dataSource)Creation of a new instance of the AbstractJDBCTarget.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidcheckConnection()Utility method to check connection and bring it back up if necessary.voidclose()Shutdown target.protected voidcloseConnection()Close connection to underlying database.protected voiddoProcessEvent(LogEvent event)Process a log event, via formatting and outputting it.protected java.sql.ConnectiongetConnection()Utility method for subclasses to access connection.protected booleanisStale()Detect if connection is stale and should be reopened.protected voidopen()Startup log session.protected voidopenConnection()Open connection to underlying database.protected abstract voidoutput(LogEvent event)Output a log event to DB.-
Methods inherited from class org.apache.log.output.AbstractTarget
getErrorHandler, isOpen, processEvent, setErrorHandler
-
-
-
-
Method Detail
-
doProcessEvent
protected void doProcessEvent(LogEvent event) throws java.lang.Exception
Process a log event, via formatting and outputting it.- Specified by:
doProcessEventin classAbstractTarget- Parameters:
event- the log event- Throws:
java.lang.Exception- if an event processing error occurs
-
output
protected abstract void output(LogEvent event)
Output a log event to DB. This must be implemented by subclasses.- Parameters:
event- the log event.
-
open
protected void open()
Startup log session.- Overrides:
openin classAbstractTarget
-
openConnection
protected void openConnection()
Open connection to underlying database.
-
getConnection
protected final java.sql.Connection getConnection()
Utility method for subclasses to access connection.- Returns:
- the Connection
-
checkConnection
protected final void checkConnection()
Utility method to check connection and bring it back up if necessary.
-
isStale
protected boolean isStale()
Detect if connection is stale and should be reopened.- Returns:
- true if connection is stale, false otherwise
-
close
public void close()
Shutdown target. Attempting to write to target after close() will cause errors to be logged.- Specified by:
closein interfaceCloseable- Overrides:
closein classAbstractTarget
-
closeConnection
protected void closeConnection()
Close connection to underlying database.
-
-