Class FactoryMethodConnectionSource
- java.lang.Object
-
- org.apache.logging.log4j.core.AbstractLifeCycle
-
- org.apache.logging.log4j.core.appender.db.jdbc.AbstractConnectionSource
-
- org.apache.logging.log4j.core.appender.db.jdbc.FactoryMethodConnectionSource
-
- All Implemented Interfaces:
ConnectionSource,LifeCycle,LifeCycle2
@Plugin(name="ConnectionFactory", category="Core", elementType="connectionSource", printObject=true) public final class FactoryMethodConnectionSource extends AbstractConnectionSource
AJdbcAppenderconnection source that uses a public static factory method to obtain aConnectionorDataSource.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.LifeCycle
LifeCycle.State
-
-
Field Summary
Fields Modifier and Type Field Description private javax.sql.DataSourcedataSourceprivate java.lang.Stringdescriptionprivate static LoggerLOGGER-
Fields inherited from class org.apache.logging.log4j.core.AbstractLifeCycle
DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT
-
-
Constructor Summary
Constructors Modifier Constructor Description privateFactoryMethodConnectionSource(javax.sql.DataSource dataSource, java.lang.String className, java.lang.String methodName, java.lang.String returnType)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static FactoryMethodConnectionSourcecreateConnectionSource(java.lang.String className, java.lang.String methodName)Factory method for creating a connection source within the plugin manager.java.sql.ConnectiongetConnection()This should return a new connection every time it is called.java.lang.StringtoString()All implementations must overrideObject.toString()to provide information about the connection configuration (obscuring passwords with one-way hashes).-
Methods inherited from class org.apache.logging.log4j.core.AbstractLifeCycle
equalsImpl, getState, getStatusLogger, hashCodeImpl, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, start, stop, stop, stop
-
-
-
-
Field Detail
-
LOGGER
private static final Logger LOGGER
-
dataSource
private final javax.sql.DataSource dataSource
-
description
private final java.lang.String description
-
-
Method Detail
-
getConnection
public java.sql.Connection getConnection() throws java.sql.SQLExceptionDescription copied from interface:ConnectionSourceThis should return a new connection every time it is called.- Returns:
- the SQL connection object.
- Throws:
java.sql.SQLException- if a database error occurs.
-
toString
public java.lang.String toString()
Description copied from interface:ConnectionSourceAll implementations must overrideObject.toString()to provide information about the connection configuration (obscuring passwords with one-way hashes).- Specified by:
toStringin interfaceConnectionSource- Overrides:
toStringin classjava.lang.Object- Returns:
- the string representation of this connection source.
-
createConnectionSource
@PluginFactory public static FactoryMethodConnectionSource createConnectionSource(@PluginAttribute("class") java.lang.String className, @PluginAttribute("method") java.lang.String methodName)
Factory method for creating a connection source within the plugin manager.- Parameters:
className- The name of a public class that contains a static method capable of returning either aDataSourceor aConnection.methodName- The name of the public static method on the aforementioned class that returns the data source or connection. If this method returns aConnection, it should return a new connection every call.- Returns:
- the created connection source.
-
-