Package org.apache.jmeter.protocol.jdbc.config

# Class DataSourceElement

java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.protocol.jdbc.config.DataSourceElement

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `ConfigElement`, `Searchable`, `TestBean`, `org.apache.jmeter.testelement.TestElement`, `TestStateListener`

public class DataSourceElement extends AbstractTestElement implements ConfigElement, TestStateListener, TestBean

See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface org.apache.jmeter.testelement.TestElement

  `org.apache.jmeter.testelement.TestElement.Companion`

- ## Field Summary

  ### Fields inherited from interface org.apache.jmeter.testelement.TestElement

  `COMMENTS, Companion, ENABLED, GUI_CLASS, NAME, TEST_CLASS`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DataSourceElement()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addConfigElement(ConfigElement config)`
  Add a configuration element to this one.
  `Object`
  `clone()`
  `boolean`
  `expectsModification()`
  If your config element expects to be modified in the process of a test run, and you want those modifications to carry over from sample to sample (as in a cookie manager - you want to save all cookies that get set throughout the test), then return true for this method.
  `String`
  `getCheckQuery()`
  `static Connection`
  `getConnection(String poolName)`
  Utility routine to get the connection from the pool.
  Purpose: allows JDBCSampler to be entirely independent of the pooling classes allows the pool storage mechanism to be changed if necessary
  `String`
  `getConnectionAge()`
  `static String`
  `getConnectionInfo(String poolName)`
  Gets a textual description about the pools configuration.
  `String`
  `getConnectionProperties()`
  `String`
  `getDataSource()`
  `String`
  `getDbUrl()`
  `String`
  `getDriver()`
  `String`
  `getInitQuery()`
  `String`
  `getPassword()`
  `String`
  `getPoolMax()`
  `String`
  `getPoolPreparedStatements()`
  Return the max number of pooled prepared statements.
  `String`
  `getTimeout()`
  `String`
  `getTransactionIsolation()`
  `String`
  `getTrimInterval()`
  `String`
  `getUsername()`
  `boolean`
  `isAutocommit()`
  `boolean`
  `isKeepAlive()`
  `boolean`
  `isPreinit()`
  `void`
  `setAutocommit(boolean autocommit)`
  `void`
  `setCheckQuery(String checkQuery)`
  `void`
  `setConnectionAge(String connectionAge)`
  `void`
  `setConnectionProperties(String connectionProperties)`
  `void`
  `setDataSource(String dataSource)`
  `void`
  `setDbUrl(String dbUrl)`
  `void`
  `setDriver(String driver)`
  `void`
  `setInitQuery(String initQuery)`
  `void`
  `setKeepAlive(boolean keepAlive)`
  `void`
  `setPassword(String password)`
  `void`
  `setPoolMax(String poolMax)`
  `void`
  `setPoolPreparedStatements(String poolPreparedStatements)`
  Set the max number of pooled prepared statements.
  `void`
  `setPreinit(boolean preinit)`
  `void`
  `setTimeout(String timeout)`
  `void`
  `setTransactionIsolation(String transactionIsolation)`
  `void`
  `setTrimInterval(String trimInterval)`
  `void`
  `setUsername(String username)`
  `void`
  `testEnded()`
  Called once for all threads after the end of a test.
  `void`
  `testEnded(String host)`
  Called once for all threads after the end of a test.
  `void`
  `testStarted()`
  Called just before the start of the test from the main engine thread.
  `void`
  `testStarted(String host)`
  Called just before the start of the test from the main engine thread.

  ### Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement

  `addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getPropertyOrNull, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty`

  ### Methods inherited from class java.lang.Object

  `finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface org.apache.jmeter.testelement.TestElement

  `get, get, get, get, get, get, get, get, get, getOrCreate, getOrCreate, getOrNull, getOrNull, getOrNull, getPropertyOrNull, getProps, getSchema, getString, removed, removeProperty, set, set, set, set, set, set, set, set, set`

- ## Constructor Details

  - ### DataSourceElement

    public DataSourceElement()

- ## Method Details

  - ### testEnded

    public void testEnded()
    Description copied from interface: `TestStateListener`

    Called once for all threads after the end of a test. This will use the same element instances as at the start of the test.

    N.B. testStarted() and testEnded() are called from different threads.

    Specified by:
      `testEnded` in interface `TestStateListener`
    See Also:
      - `StandardJMeterEngine.stopTest()`

  - ### testEnded

    public void testEnded(String host)
    Description copied from interface: `TestStateListener`

    Called once for all threads after the end of a test. This will use the same element instances as at the start of the test.

    N.B. testStarted() and testEnded() are called from different threads.

    Specified by:
      `testEnded` in interface `TestStateListener`
    Parameters:
      `host` - name of host
    See Also:
      - `StandardJMeterEngine.stopTest()`

  - ### testStarted

    public void testStarted()
    Description copied from interface: `TestStateListener`

    Called just before the start of the test from the main engine thread. This is before the test elements are cloned. Note that not all the test variables will have been set up at this point.

    N.B. testStarted() and testEnded() are called from different threads.

    Specified by:
      `testStarted` in interface `TestStateListener`
    See Also:
      - `StandardJMeterEngine.run()`

  - ### testStarted

    public void testStarted(String host)
    Description copied from interface: `TestStateListener`

    Called just before the start of the test from the main engine thread. This is before the test elements are cloned. Note that not all the test variables will have been set up at this point.

    N.B. testStarted() and testEnded() are called from different threads.

    Specified by:
      `testStarted` in interface `TestStateListener`
    Parameters:
      `host` - name of host
    See Also:
      - `StandardJMeterEngine.run()`

  - ### clone

    public Object clone()
    Specified by:
      `clone` in interface `ConfigElement`
    Specified by:
      `clone` in interface `org.apache.jmeter.testelement.TestElement`
    Overrides:
      `clone` in class `AbstractTestElement`

  - ### getConnectionInfo

    public static String getConnectionInfo(String poolName) throws SQLException
    Gets a textual description about the pools configuration.
    Parameters:
      `poolName` - Pool name
    Returns:
      Connection information on `poolName` or a short message, when the JMeter object specified by `poolName` is not a pool
    Throws:
      `SQLException` - when an error occurs, while gathering information about the connection

  - ### getConnection

    public static Connection getConnection(String poolName) throws SQLException
    Utility routine to get the connection from the pool.
    Purpose:
    - allows JDBCSampler to be entirely independent of the pooling classes
    - allows the pool storage mechanism to be changed if necessary
    Parameters:
      `poolName` - name of the pool to get a connection from
    Returns:
      a possible cached connection from the pool
    Throws:
      `SQLException` - when an error occurs while getting the connection from the pool

  - ### addConfigElement

    public void addConfigElement(ConfigElement config)
    Description copied from interface: `ConfigElement`
    Add a configuration element to this one. This allows config elements to combine and give a "layered" effect. For example, HTTPConfigElements have properties for domain, path, method, and parameters. If element A has everything filled in, but null for domain, and element B is added, which has only domain filled in, then after adding B to A, A will have the domain from B. If A already had a domain, then the correct behavior is for A to ignore the addition of element B.
    Specified by:
      `addConfigElement` in interface `ConfigElement`
    Parameters:
      `config` - the element to be added to this ConfigElement

  - ### expectsModification

    public boolean expectsModification()
    Description copied from interface: `ConfigElement`
    If your config element expects to be modified in the process of a test run, and you want those modifications to carry over from sample to sample (as in a cookie manager - you want to save all cookies that get set throughout the test), then return true for this method. Your config element will not be cloned for each sample. If your config elements are more static in nature, return false. If in doubt, return false.
    Specified by:
      `expectsModification` in interface `ConfigElement`
    Returns:
      true if the element expects to be modified over the course of a test run

  - ### getCheckQuery

    public String getCheckQuery()
    Returns:
      Returns the checkQuery.

  - ### setCheckQuery

    public void setCheckQuery(String checkQuery)
    Parameters:
      `checkQuery` - The checkQuery to set.

  - ### getConnectionAge

    public String getConnectionAge()
    Returns:
      Returns the connectionAge.

  - ### setConnectionAge

    public void setConnectionAge(String connectionAge)
    Parameters:
      `connectionAge` - The connectionAge to set.

  - ### getDataSource

    public String getDataSource()
    Returns:
      Returns the poolname.

  - ### setDataSource

    public void setDataSource(String dataSource)
    Parameters:
      `dataSource` - The poolname to set.

  - ### getDbUrl

    public String getDbUrl()
    Returns:
      Returns the dbUrl.

  - ### setDbUrl

    public void setDbUrl(String dbUrl)
    Parameters:
      `dbUrl` - The dbUrl to set.

  - ### getDriver

    public String getDriver()
    Returns:
      Returns the driver.

  - ### setDriver

    public void setDriver(String driver)
    Parameters:
      `driver` - The driver to set.

  - ### getPassword

    public String getPassword()
    Returns:
      Returns the password.

  - ### setPassword

    public void setPassword(String password)
    Parameters:
      `password` - The password to set.

  - ### getPoolMax

    public String getPoolMax()
    Returns:
      Returns the poolMax.

  - ### setPoolMax

    public void setPoolMax(String poolMax)
    Parameters:
      `poolMax` - The poolMax to set.

  - ### getTimeout

    public String getTimeout()
    Returns:
      Returns the timeout.

  - ### setTimeout

    public void setTimeout(String timeout)
    Parameters:
      `timeout` - The timeout to set.

  - ### getTrimInterval

    public String getTrimInterval()
    Returns:
      Returns the trimInterval.

  - ### setTrimInterval

    public void setTrimInterval(String trimInterval)
    Parameters:
      `trimInterval` - The trimInterval to set.

  - ### getUsername

    public String getUsername()
    Returns:
      Returns the username.

  - ### setUsername

    public void setUsername(String username)
    Parameters:
      `username` - The username to set.

  - ### isAutocommit

    public boolean isAutocommit()
    Returns:
      Returns the autocommit.

  - ### setAutocommit

    public void setAutocommit(boolean autocommit)
    Parameters:
      `autocommit` - The autocommit to set.

  - ### isPreinit

    public boolean isPreinit()
    Returns:
      Returns the preinit.

  - ### setPreinit

    public void setPreinit(boolean preinit)
    Parameters:
      `preinit` - The preinit to set.

  - ### isKeepAlive

    public boolean isKeepAlive()
    Returns:
      Returns the keepAlive.

  - ### setKeepAlive

    public void setKeepAlive(boolean keepAlive)
    Parameters:
      `keepAlive` - The keepAlive to set.

  - ### getTransactionIsolation

    public String getTransactionIsolation()
    Returns:
      the transaction isolation level

  - ### setTransactionIsolation

    public void setTransactionIsolation(String transactionIsolation)
    Parameters:
      `transactionIsolation` - The transaction isolation level to set. `NULL` to use the default of the driver.

  - ### getInitQuery

    public String getInitQuery()
    Returns:
      the initQuery

  - ### setInitQuery

    public void setInitQuery(String initQuery)
    Parameters:
      `initQuery` - the initQuery to set

  - ### getConnectionProperties

    public String getConnectionProperties()
    Returns:
      the connectionProperties

  - ### setConnectionProperties

    public void setConnectionProperties(String connectionProperties)
    Parameters:
      `connectionProperties` - the connectionProperties to set

  - ### getPoolPreparedStatements

    public String getPoolPreparedStatements()
    Return the max number of pooled prepared statements. "0" means no limit on prepared statements to pool and "-1" disables pooling.
    Returns:
      the max number of pooled prepared statements

  - ### setPoolPreparedStatements

    public void setPoolPreparedStatements(String poolPreparedStatements)
    Set the max number of pooled prepared statements. "0" means no limit on prepared statements to pool and "-1" disables pooling.
    Parameters:
      `poolPreparedStatements` - max number of prepared statements