Class StatementWrapper

java.lang.Object
com.mysql.cj.jdbc.StatementWrapper
All Implemented Interfaces:
java.lang.AutoCloseable, java.sql.Statement, java.sql.Wrapper
Direct Known Subclasses:
PreparedStatementWrapper

public class StatementWrapper
extends java.lang.Object
implements java.sql.Statement
Wraps statements so that errors can be reported correctly to ConnectionEventListeners.
  • Field Details

  • Constructor Details

  • Method Details

    • getInstance

      protected static StatementWrapper getInstance​(ConnectionWrapper c, MysqlPooledConnection conn, java.sql.Statement toWrap) throws java.sql.SQLException
      Throws:
      java.sql.SQLException
    • getConnection

      public java.sql.Connection getConnection() throws java.sql.SQLException
      Specified by:
      getConnection in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setCursorName

      public void setCursorName​(java.lang.String name) throws java.sql.SQLException
      Specified by:
      setCursorName in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setEscapeProcessing

      public void setEscapeProcessing​(boolean enable) throws java.sql.SQLException
      Specified by:
      setEscapeProcessing in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setFetchDirection

      public void setFetchDirection​(int direction) throws java.sql.SQLException
      Specified by:
      setFetchDirection in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getFetchDirection

      public int getFetchDirection() throws java.sql.SQLException
      Specified by:
      getFetchDirection in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setFetchSize

      public void setFetchSize​(int rows) throws java.sql.SQLException
      Specified by:
      setFetchSize in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getFetchSize

      public int getFetchSize() throws java.sql.SQLException
      Specified by:
      getFetchSize in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getGeneratedKeys

      public java.sql.ResultSet getGeneratedKeys() throws java.sql.SQLException
      Specified by:
      getGeneratedKeys in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setMaxFieldSize

      public void setMaxFieldSize​(int max) throws java.sql.SQLException
      Specified by:
      setMaxFieldSize in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getMaxFieldSize

      public int getMaxFieldSize() throws java.sql.SQLException
      Specified by:
      getMaxFieldSize in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setMaxRows

      public void setMaxRows​(int max) throws java.sql.SQLException
      Specified by:
      setMaxRows in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getMaxRows

      public int getMaxRows() throws java.sql.SQLException
      Specified by:
      getMaxRows in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getMoreResults

      public boolean getMoreResults() throws java.sql.SQLException
      Specified by:
      getMoreResults in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getMoreResults

      public boolean getMoreResults​(int current) throws java.sql.SQLException
      Specified by:
      getMoreResults in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setQueryTimeout

      public void setQueryTimeout​(int seconds) throws java.sql.SQLException
      Specified by:
      setQueryTimeout in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getQueryTimeout

      public int getQueryTimeout() throws java.sql.SQLException
      Specified by:
      getQueryTimeout in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getResultSet

      public java.sql.ResultSet getResultSet() throws java.sql.SQLException
      Specified by:
      getResultSet in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getResultSetConcurrency

      public int getResultSetConcurrency() throws java.sql.SQLException
      Specified by:
      getResultSetConcurrency in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getResultSetHoldability

      public int getResultSetHoldability() throws java.sql.SQLException
      Specified by:
      getResultSetHoldability in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getResultSetType

      public int getResultSetType() throws java.sql.SQLException
      Specified by:
      getResultSetType in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getUpdateCount

      public int getUpdateCount() throws java.sql.SQLException
      Specified by:
      getUpdateCount in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getWarnings

      public java.sql.SQLWarning getWarnings() throws java.sql.SQLException
      Specified by:
      getWarnings in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • addBatch

      public void addBatch​(java.lang.String sql) throws java.sql.SQLException
      Specified by:
      addBatch in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • cancel

      public void cancel() throws java.sql.SQLException
      Specified by:
      cancel in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • clearBatch

      public void clearBatch() throws java.sql.SQLException
      Specified by:
      clearBatch in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • clearWarnings

      public void clearWarnings() throws java.sql.SQLException
      Specified by:
      clearWarnings in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • close

      public void close() throws java.sql.SQLException
      Specified by:
      close in interface java.lang.AutoCloseable
      Specified by:
      close in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • execute

      public boolean execute​(java.lang.String sql, int autoGeneratedKeys) throws java.sql.SQLException
      Specified by:
      execute in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • execute

      public boolean execute​(java.lang.String sql, int[] columnIndexes) throws java.sql.SQLException
      Specified by:
      execute in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • execute

      public boolean execute​(java.lang.String sql, java.lang.String[] columnNames) throws java.sql.SQLException
      Specified by:
      execute in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • execute

      public boolean execute​(java.lang.String sql) throws java.sql.SQLException
      Specified by:
      execute in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeBatch

      public int[] executeBatch() throws java.sql.SQLException
      Specified by:
      executeBatch in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeQuery

      public java.sql.ResultSet executeQuery​(java.lang.String sql) throws java.sql.SQLException
      Specified by:
      executeQuery in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeUpdate

      public int executeUpdate​(java.lang.String sql, int autoGeneratedKeys) throws java.sql.SQLException
      Specified by:
      executeUpdate in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeUpdate

      public int executeUpdate​(java.lang.String sql, int[] columnIndexes) throws java.sql.SQLException
      Specified by:
      executeUpdate in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeUpdate

      public int executeUpdate​(java.lang.String sql, java.lang.String[] columnNames) throws java.sql.SQLException
      Specified by:
      executeUpdate in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeUpdate

      public int executeUpdate​(java.lang.String sql) throws java.sql.SQLException
      Specified by:
      executeUpdate in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • enableStreamingResults

      public void enableStreamingResults() throws java.sql.SQLException
      Throws:
      java.sql.SQLException
    • unwrap

      public <T> T unwrap​(java.lang.Class<T> iface) throws java.sql.SQLException
      Specified by:
      unwrap in interface java.sql.Wrapper
      Throws:
      java.sql.SQLException
    • isWrapperFor

      public boolean isWrapperFor​(java.lang.Class<?> iface) throws java.sql.SQLException
      Specified by:
      isWrapperFor in interface java.sql.Wrapper
      Throws:
      java.sql.SQLException
    • isClosed

      public boolean isClosed() throws java.sql.SQLException
      Specified by:
      isClosed in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setPoolable

      public void setPoolable​(boolean poolable) throws java.sql.SQLException
      Specified by:
      setPoolable in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • isPoolable

      public boolean isPoolable() throws java.sql.SQLException
      Specified by:
      isPoolable in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • closeOnCompletion

      public void closeOnCompletion() throws java.sql.SQLException
      Specified by:
      closeOnCompletion in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • isCloseOnCompletion

      public boolean isCloseOnCompletion() throws java.sql.SQLException
      Specified by:
      isCloseOnCompletion in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeLargeBatch

      public long[] executeLargeBatch() throws java.sql.SQLException
      Specified by:
      executeLargeBatch in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeLargeUpdate

      public long executeLargeUpdate​(java.lang.String sql) throws java.sql.SQLException
      Specified by:
      executeLargeUpdate in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeLargeUpdate

      public long executeLargeUpdate​(java.lang.String sql, int autoGeneratedKeys) throws java.sql.SQLException
      Specified by:
      executeLargeUpdate in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeLargeUpdate

      public long executeLargeUpdate​(java.lang.String sql, int[] columnIndexes) throws java.sql.SQLException
      Specified by:
      executeLargeUpdate in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • executeLargeUpdate

      public long executeLargeUpdate​(java.lang.String sql, java.lang.String[] columnNames) throws java.sql.SQLException
      Specified by:
      executeLargeUpdate in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getLargeMaxRows

      public long getLargeMaxRows() throws java.sql.SQLException
      Specified by:
      getLargeMaxRows in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • getLargeUpdateCount

      public long getLargeUpdateCount() throws java.sql.SQLException
      Specified by:
      getLargeUpdateCount in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • setLargeMaxRows

      public void setLargeMaxRows​(long max) throws java.sql.SQLException
      Specified by:
      setLargeMaxRows in interface java.sql.Statement
      Throws:
      java.sql.SQLException
    • checkAndFireConnectionError

      protected void checkAndFireConnectionError​(java.sql.SQLException sqlEx) throws java.sql.SQLException
      Fires connection error event if required, before re-throwing exception
      Parameters:
      sqlEx - the SQLException that has occurred
      Throws:
      java.sql.SQLException - (rethrown)