Class AbstractJDBCTestElement

java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.protocol.jdbc.AbstractJDBCTestElement
All Implemented Interfaces:
Serializable, Cloneable, Searchable, org.apache.jmeter.testelement.TestElement, TestStateListener
Direct Known Subclasses:
AbstractJDBCProcessor, JDBCSampler

public abstract class AbstractJDBCTestElement extends AbstractTestElement implements TestStateListener
A base class for all JDBC test elements handling the basics of a SQL request.
See Also:
  • Field Details

    • ENCODING

      protected static final String ENCODING
  • Constructor Details

    • AbstractJDBCTestElement

      protected AbstractJDBCTestElement()
      Creates a JDBCSampler.
  • Method Details

    • execute

      protected byte[] execute(Connection conn) throws SQLException, IOException, UnsupportedOperationException
      Execute the test element.
      Parameters:
      conn - a Connection
      Returns:
      the result of the execute command
      Throws:
      SQLException - if a database error occurs
      IOException - when I/O error occurs
      UnsupportedOperationException - if the user provided incorrect query type
    • execute

      protected byte[] execute(Connection conn, SampleResult sample) throws SQLException, IOException, UnsupportedOperationException
      Execute the test element. Use the sample given as argument to set time to first byte in the "latency" field of the SampleResult.
      Parameters:
      conn - a Connection
      sample - a SampleResult to save the latency
      Returns:
      the result of the execute command
      Throws:
      SQLException - if a database error occurs
      IOException - when I/O error occurs
      UnsupportedOperationException - if the user provided incorrect query type
    • close

      public static void close(Connection c)
    • close

      public static void close(Statement s)
    • close

      public static void close(ResultSet rs)
    • getIntegerQueryTimeout

      public int getIntegerQueryTimeout()
      Returns:
      the integer representation queryTimeout
    • getQueryTimeout

      public String getQueryTimeout()
      Returns:
      the queryTimeout
    • setQueryTimeout

      public void setQueryTimeout(String queryTimeout)
      Parameters:
      queryTimeout - query timeout in seconds
    • getIntegerResultSetMaxRows

      public int getIntegerResultSetMaxRows()
      Returns:
      the integer representation resultSetMaxRows
    • getResultSetMaxRows

      public String getResultSetMaxRows()
      Returns:
      the resultSetMaxRows
    • setResultSetMaxRows

      public void setResultSetMaxRows(String resultSetMaxRows)
      Parameters:
      resultSetMaxRows - max number of rows to iterate through the ResultSet
    • getQuery

      public String getQuery()
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • setQuery

      public void setQuery(String query)
      Parameters:
      query - The query to set.
    • getDataSource

      public String getDataSource()
      Returns:
      Returns the dataSource.
    • setDataSource

      public void setDataSource(String dataSource)
      Parameters:
      dataSource - The dataSource to set.
    • getQueryType

      public String getQueryType()
      Returns:
      Returns the queryType.
    • setQueryType

      public void setQueryType(String queryType)
      Parameters:
      queryType - The queryType to set.
    • getQueryArguments

      public String getQueryArguments()
    • setQueryArguments

      public void setQueryArguments(String queryArguments)
    • getQueryArgumentsTypes

      public String getQueryArgumentsTypes()
    • setQueryArgumentsTypes

      public void setQueryArgumentsTypes(String queryArgumentsType)
    • getVariableNames

      public String getVariableNames()
      Returns:
      the variableNames
    • setVariableNames

      public void setVariableNames(String variableNames)
      Parameters:
      variableNames - the variableNames to set
    • getResultSetHandler

      public String getResultSetHandler()
      Returns:
      the resultSetHandler
    • setResultSetHandler

      public void setResultSetHandler(String resultSetHandler)
      Parameters:
      resultSetHandler - the resultSetHandler to set
    • getResultVariable

      public String getResultVariable()
      Returns:
      the resultVariable
    • setResultVariable

      public void setResultVariable(String resultVariable)
      Parameters:
      resultVariable - the variable name in which results will be stored
    • testStarted

      public void testStarted()

      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:
    • testStarted

      public void testStarted(String host)

      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:
    • testEnded

      public void testEnded()

      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:
    • testEnded

      public void testEnded(String host)

      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: