
package com.sap.dbtech.jdbc.trace;


import com.sap.dbtech.util.Tracer;

public class Statement implements java.sql.Statement
{
    private java.sql.Statement _inner;
    // nothing in genAdditionalInstanceVars
    public java.sql.Statement getInner() {
      return (java.sql.Statement) this._inner;
    }
    static java.sql.Statement getInner (java.sql.Statement obj ) {
      if (obj == null || ! (obj instanceof com.sap.dbtech.jdbc.trace.Statement))  { 
        return null;  
      }
      Statement iobj = (Statement)obj;
      return (java.sql.Statement)iobj._inner;
    }
    static java.sql.Statement createNew (java.sql.Statement obj ) {
      Statement iobj = new Statement (obj);
      return (java.sql.Statement)iobj;
    }

    public Statement(
        java.sql.Statement _innerP)
    {
        this._inner = _innerP;
    }

    public void close ()
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".close (" + ")");
        try {
            this._inner.close ();
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public boolean execute (
        java.lang.String arg0,
        int arg1)
    throws java.sql.SQLException
    {
        boolean _result;
        Tracer.println (this._inner + ".execute (" + arg0 + ", " + arg1 + ")");
        try {
            _result = this._inner.execute (arg0, arg1);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public boolean execute (
        java.lang.String arg0,
        java.lang.String [] arg1)
    throws java.sql.SQLException
    {
        boolean _result;
        Tracer.println (this._inner + ".execute (" + arg0 + ", " + arg1 + ")");
        try {
            _result = this._inner.execute (arg0, arg1);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public boolean execute (
        java.lang.String arg0,
        int [] arg1)
    throws java.sql.SQLException
    {
        boolean _result;
        Tracer.println (this._inner + ".execute (" + arg0 + ", " + arg1 + ")");
        try {
            _result = this._inner.execute (arg0, arg1);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public boolean execute (
        java.lang.String arg0)
    throws java.sql.SQLException
    {
        boolean _result;
        Tracer.println (this._inner + ".execute (" + arg0 + ")");
        try {
            _result = this._inner.execute (arg0);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public void addBatch (
        java.lang.String arg0)
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".addBatch (" + arg0 + ")");
        try {
            this._inner.addBatch (arg0);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public java.sql.ResultSet executeQuery (
        java.lang.String arg0)
    throws java.sql.SQLException
    {
        java.sql.ResultSet _result;
        Tracer.println (this._inner + ".executeQuery (" + arg0 + ")");
        try {
            _result = this._inner.executeQuery (arg0);
            Tracer.println ("=> " + _result);
            if (_result != null) { 
              _result = com.sap.dbtech.jdbc.trace.ResultSet.createNew (_result);
            }
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int executeUpdate (
        java.lang.String arg0,
        int arg1)
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".executeUpdate (" + arg0 + ", " + arg1 + ")");
        try {
            _result = this._inner.executeUpdate (arg0, arg1);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int executeUpdate (
        java.lang.String arg0,
        int [] arg1)
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".executeUpdate (" + arg0 + ", " + arg1 + ")");
        try {
            _result = this._inner.executeUpdate (arg0, arg1);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int executeUpdate (
        java.lang.String arg0,
        java.lang.String [] arg1)
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".executeUpdate (" + arg0 + ", " + arg1 + ")");
        try {
            _result = this._inner.executeUpdate (arg0, arg1);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int executeUpdate (
        java.lang.String arg0)
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".executeUpdate (" + arg0 + ")");
        try {
            _result = this._inner.executeUpdate (arg0);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public void cancel ()
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".cancel (" + ")");
        try {
            this._inner.cancel ();
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public void clearBatch ()
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".clearBatch (" + ")");
        try {
            this._inner.clearBatch ();
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public void clearWarnings ()
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".clearWarnings (" + ")");
        try {
            this._inner.clearWarnings ();
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public int [] executeBatch ()
    throws java.sql.SQLException
    {
        int [] _result;
        Tracer.println (this._inner + ".executeBatch (" + ")");
        try {
            _result = this._inner.executeBatch ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public java.sql.Connection getConnection ()
    throws java.sql.SQLException
    {
        java.sql.Connection _result;
        Tracer.println (this._inner + ".getConnection (" + ")");
        try {
            _result = this._inner.getConnection ();
            Tracer.println ("=> " + _result);
            if (_result != null) { 
              _result = com.sap.dbtech.jdbc.trace.Connection.createNew (_result);
            }
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getFetchDirection ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getFetchDirection (" + ")");
        try {
            _result = this._inner.getFetchDirection ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getFetchSize ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getFetchSize (" + ")");
        try {
            _result = this._inner.getFetchSize ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public java.sql.ResultSet getGeneratedKeys ()
    throws java.sql.SQLException
    {
        java.sql.ResultSet _result;
        Tracer.println (this._inner + ".getGeneratedKeys (" + ")");
        try {
            _result = this._inner.getGeneratedKeys ();
            Tracer.println ("=> " + _result);
            if (_result != null) { 
              _result = com.sap.dbtech.jdbc.trace.ResultSet.createNew (_result);
            }
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getMaxFieldSize ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getMaxFieldSize (" + ")");
        try {
            _result = this._inner.getMaxFieldSize ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getMaxRows ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getMaxRows (" + ")");
        try {
            _result = this._inner.getMaxRows ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public boolean getMoreResults ()
    throws java.sql.SQLException
    {
        boolean _result;
        Tracer.println (this._inner + ".getMoreResults (" + ")");
        try {
            _result = this._inner.getMoreResults ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public boolean getMoreResults (
        int arg0)
    throws java.sql.SQLException
    {
        boolean _result;
        Tracer.println (this._inner + ".getMoreResults (" + arg0 + ")");
        try {
            _result = this._inner.getMoreResults (arg0);
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getQueryTimeout ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getQueryTimeout (" + ")");
        try {
            _result = this._inner.getQueryTimeout ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public java.sql.ResultSet getResultSet ()
    throws java.sql.SQLException
    {
        java.sql.ResultSet _result;
        Tracer.println (this._inner + ".getResultSet (" + ")");
        try {
            _result = this._inner.getResultSet ();
            Tracer.println ("=> " + _result);
            if (_result != null) { 
              _result = com.sap.dbtech.jdbc.trace.ResultSet.createNew (_result);
            }
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getResultSetConcurrency ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getResultSetConcurrency (" + ")");
        try {
            _result = this._inner.getResultSetConcurrency ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getResultSetHoldability ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getResultSetHoldability (" + ")");
        try {
            _result = this._inner.getResultSetHoldability ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getResultSetType ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getResultSetType (" + ")");
        try {
            _result = this._inner.getResultSetType ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public int getUpdateCount ()
    throws java.sql.SQLException
    {
        int _result;
        Tracer.println (this._inner + ".getUpdateCount (" + ")");
        try {
            _result = this._inner.getUpdateCount ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public java.sql.SQLWarning getWarnings ()
    throws java.sql.SQLException
    {
        java.sql.SQLWarning _result;
        Tracer.println (this._inner + ".getWarnings (" + ")");
        try {
            _result = this._inner.getWarnings ();
            Tracer.println ("=> " + _result);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
        return _result;
    }

    public void setCursorName (
        java.lang.String arg0)
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".setCursorName (" + arg0 + ")");
        try {
            this._inner.setCursorName (arg0);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public void setEscapeProcessing (
        boolean arg0)
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".setEscapeProcessing (" + arg0 + ")");
        try {
            this._inner.setEscapeProcessing (arg0);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public void setFetchDirection (
        int arg0)
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".setFetchDirection (" + arg0 + ")");
        try {
            this._inner.setFetchDirection (arg0);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public void setFetchSize (
        int arg0)
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".setFetchSize (" + arg0 + ")");
        try {
            this._inner.setFetchSize (arg0);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public void setMaxFieldSize (
        int arg0)
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".setMaxFieldSize (" + arg0 + ")");
        try {
            this._inner.setMaxFieldSize (arg0);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public void setMaxRows (
        int arg0)
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".setMaxRows (" + arg0 + ")");
        try {
            this._inner.setMaxRows (arg0);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }

    public void setQueryTimeout (
        int arg0)
    throws java.sql.SQLException
    {
        Tracer.println (this._inner + ".setQueryTimeout (" + arg0 + ")");
        try {
            this._inner.setQueryTimeout (arg0);
        }
        catch (RuntimeException _exc) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc);
            throw _exc;
        }
        catch (java.sql.SQLException _exc0) {
            Tracer.println (" <-!");
            Tracer.traceException (_exc0);
            throw _exc0;
        }
    }


}
