// Decompiled by Jad v1.5.7f. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) braces deadcode fieldsfirst 
// Source File Name:   DBAccess.java
// Class Version:      45.3

package oracle.jdbc.dbaccess;

import java.io.IOException;
import java.sql.*;
import java.util.Locale;
import java.util.Properties;
import oracle.gss.util.NLSLocale;
import oracle.jdbc.OracleOCIFailover;
import oracle.jdbc.driver.*;
import oracle.jdbc.oracore.OracleTypeADT;
import oracle.sql.*;

// Referenced classes of package oracle.jdbc.dbaccess:
//            DBDataSetImpl, DBError, pingDatabaseThread, semaphore, 
//            timeOutThread, DBStatement, DBDataSet, DBType, 
//            DBItem, DBColumn, DBConversion

// flag ACC_SUPER is set
public abstract class DBAccess
{
    // Constants:          387
    // Interfaces:         0
    // Fields:             9
    // Methods:            77
    // Class Attributes:   1


    public static final short ORACLE8_PROD_VERSION = 8030;
    public static final short ORACLE81_PROD_VERSION = 8100;
    public static final byte IS_SELECT = 0;
    public static final byte IS_PLSQL_BLOCK = 1;
    public static final byte IS_DML = 2;
    public static final byte IS_OTHER = 3;
    public static final byte BIND_IN = 1;
    public static final byte BIND_OUT = 16;
    SQLWarning accessWarning;

    // Decompiling method: <init>  Signature: ()V
    // Max stack: 2, #locals: 1, #params: 1
    // Code length: 10 bytes, Code offset: 6592
    // Line Number Table found: 3 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 10 Range 0 9 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type V At 0 10 Range 0 9 Init 0 fixed
    public DBAccess()
    {
        super();
        accessWarning = null;
        return;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type [B At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract byte[] DBStatementToRefCursorBytes(DBStatement dbstatement)
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name abyte0 Type [B At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract DBStatement RefCursorBytesToDBStatement(byte abyte0[])
        throws SQLException, IOException;

    // Decompiling method: archive  Signature: (IILjava/lang/String;)V
    // Max stack: 2, #locals: 4, #params: 4
    // Code length: 8 bytes, Code offset: 6688
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 8 Range 0 7 Init 0 fixed
    // Parameter  1 added: Name i Type I At 0 8 Range 0 7 Init 0
    // Parameter  2 added: Name j Type I At 0 8 Range 0 7 Init 0
    // Parameter  3 added: Name s Type Ljava/lang/String; At 0 8 Range 0 7 Init 0
    // RetValue   4 added: Name <returnValue> Type V At 0 8 Range 0 7 Init 0 fixed
    public void archive(int i, int j, String s)
        throws SQLException
    {
        DBError.check_error(66, "archive");
        return;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void cancel()
        throws SQLException, IOException;

    // Decompiling method: clearClientIdentifier  Signature: (Loracle/jdbc/driver/OracleConnection;Ljava/lang/String;)V
    // Max stack: 3, #locals: 7, #params: 3
    // Code length: 63 bytes, Code offset: 6768
    // Exception table: 2 entries
    //           start  2 end 24 handler 27 type SQLException
    //           start  2 end 32 handler 38 type any
    // Line Number Table found: 14 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 63 Range 0 62 Init 0 fixed
    // Parameter  1 added: Name oracleconnection Type Loracle/jdbc/driver/OracleConnection; At 0 63 Range 0 62 Init 0
    // Parameter  2 added: Name s Type Ljava/lang/String; At 0 63 Range 0 62 Init 0
    // RetValue   7 added: Name <returnValue> Type V At 0 63 Range 0 62 Init 0 fixed
    // LocalVar   3 added: Name obj Type A At 1 52 Range 1 52 Init 1
    // LocalVar   3 chged: Name callablestatement Oname obj Type Ljava/sql/CallableStatement; At 8 45 Range 1 52 Init 1
    // LocalVar   5 added: Name local Type @ At 46 16 Range 46 61 Init 46
    // LocalVar   3 added: Name obj Type A At 59 1 Range 59 59 Init 59
    // LocalVar   6 added: Name sqlexception Type Ljava/sql/SQLException; At 27 4 Range 27 30 Init 27
    // LocalVar   4 added: Name exception Type Ljava.lang.Exception; At 38 7 Range 38 44 Init 38
    // LocalVar   3 name obj(A) merged out into callablestatement(Ljava/sql/CallableStatement;)
    public void clearClientIdentifier(OracleConnection oracleconnection, String s)
        throws SQLException
    {
        java.sql.CallableStatement callablestatement = null;
        try
        {
            callablestatement = oracleconnection.prepareCall("begin dbms_session.clear_identifier(?); end;");
            callablestatement.setString(1, s);
            callablestatement.execute();
        }
        catch(SQLException sqlexception)
        {
            throw sqlexception;
        }
        finally
        {
            if(callablestatement != null)
            {
                callablestatement.close();
            }
            callablestatement = null;
        }
        return;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void close(DBStatement dbstatement)
        throws SQLException, IOException;

    // Decompiling method: closeLob  Signature: (Ljava/sql/Connection;Loracle/sql/Datum;I)V
    // Max stack: 3, #locals: 4, #params: 4
    // Code length: 7 bytes, Code offset: 6967
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name datum Type Loracle/sql/Datum; At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name i Type I At 0 7 Range 0 6 Init 0
    // RetValue   4 added: Name <returnValue> Type V At 0 7 Range 0 6 Init 0 fixed
    public void closeLob(Connection connection, Datum datum, int i)
        throws SQLException
    {
        LobPlsqlUtil.plsql_closeLob(connection, datum, i);
        return;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void closeQuery(DBStatement dbstatement)
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void commit()
        throws SQLException, IOException;

    // Decompiling method: createDBDataSet  Signature: (Loracle/jdbc/driver/OracleConnection;Loracle/jdbc/driver/OracleStatement;II)Loracle/jdbc/dbaccess/DBDataSet;
    // Max stack: 6, #locals: 5, #params: 5
    // Code length: 13 bytes, Code offset: 7066
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 13 Range 0 12 Init 0 fixed
    // Parameter  1 added: Name oracleconnection Type Loracle/jdbc/driver/OracleConnection; At 0 13 Range 0 12 Init 0
    // Parameter  2 added: Name oraclestatement Type Loracle/jdbc/driver/OracleStatement; At 0 13 Range 0 12 Init 0
    // Parameter  3 added: Name i Type I At 0 13 Range 0 12 Init 0
    // Parameter  4 added: Name j Type I At 0 13 Range 0 12 Init 0
    // RetValue   5 added: Name <returnValue> Type Loracle/jdbc/dbaccess/DBDataSet; At 0 13 Range 0 12 Init 0 fixed
    public DBDataSet createDBDataSet(OracleConnection oracleconnection, OracleStatement oraclestatement, int i, int j)
    {
        return new DBDataSetImpl(oracleconnection, oraclestatement, i, j);
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbtype Type Loracle/jdbc/dbaccess/DBType; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type Loracle/jdbc/dbaccess/DBItem; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract DBItem createDBItem(DBType dbtype);

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name flag Type Z At 0 0 Range 0 4294967295 Init 0
    // RetValue   3 added: Name <returnValue> Type Loracle/jdbc/dbaccess/DBType; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract DBType createDBType(int i, boolean flag)
        throws SQLException;

    // Decompiling method: createDBType  Signature: (IZZ)Loracle/jdbc/dbaccess/DBType;
    // Max stack: 3, #locals: 4, #params: 4
    // Code length: 7 bytes, Code offset: 7143
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name i Type I At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name flag Type Z At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name flag1 Type Z At 0 7 Range 0 6 Init 0
    // RetValue   4 added: Name <returnValue> Type Loracle/jdbc/dbaccess/DBType; At 0 7 Range 0 6 Init 0 fixed
    public DBType createDBType(int i, boolean flag, boolean flag1)
        throws SQLException
    {
        return createDBType(i, true);
    }

    // Decompiling method: createTemporaryLob  Signature: (Ljava/sql/Connection;ZII)Loracle/sql/Datum;
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 9 bytes, Code offset: 7198
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 9 Range 0 8 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 9 Range 0 8 Init 0
    // Parameter  2 added: Name flag Type Z At 0 9 Range 0 8 Init 0
    // Parameter  3 added: Name i Type I At 0 9 Range 0 8 Init 0
    // Parameter  4 added: Name j Type I At 0 9 Range 0 8 Init 0
    // RetValue   5 added: Name <returnValue> Type Loracle/sql/Datum; At 0 9 Range 0 8 Init 0 fixed
    public Datum createTemporaryLob(Connection connection, boolean flag, int i, int j)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_createTemporaryLob(connection, flag, i, j);
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type [Loracle/jdbc/dbaccess/DBColumn; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract DBColumn[] describe(DBStatement dbstatement)
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name byte0 Type B At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name dbdataset Type Loracle/jdbc/dbaccess/DBDataSet; At 0 0 Range 0 4294967295 Init 0
    // Parameter  4 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // Parameter  5 added: Name dbdataset1 Type Loracle/jdbc/dbaccess/DBDataSet; At 0 0 Range 0 4294967295 Init 0
    // Parameter  6 added: Name j Type I At 0 0 Range 0 4294967295 Init 0
    // RetValue   7 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int executeFetch(DBStatement dbstatement, byte byte0, DBDataSet dbdataset, int i, DBDataSet dbdataset1, int j)
        throws SQLException, IOException;

    // Decompiling method: executeFetchNeedDefines  Signature: (Loracle/jdbc/dbaccess/DBStatement;BLoracle/jdbc/dbaccess/DBDataSet;ILoracle/jdbc/dbaccess/DBDataSet;I)I
    // Max stack: 7, #locals: 7, #params: 7
    // Code length: 14 bytes, Code offset: 7299
    // Line Number Table found: 3 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 14 Range 0 13 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 14 Range 0 13 Init 0
    // Parameter  2 added: Name byte0 Type B At 0 14 Range 0 13 Init 0
    // Parameter  3 added: Name dbdataset Type Loracle/jdbc/dbaccess/DBDataSet; At 0 14 Range 0 13 Init 0
    // Parameter  4 added: Name i Type I At 0 14 Range 0 13 Init 0
    // Parameter  5 added: Name dbdataset1 Type Loracle/jdbc/dbaccess/DBDataSet; At 0 14 Range 0 13 Init 0
    // Parameter  6 added: Name j Type I At 0 14 Range 0 13 Init 0
    // RetValue   7 added: Name <returnValue> Type I At 0 14 Range 0 13 Init 0 fixed
    public int executeFetchNeedDefines(DBStatement dbstatement, byte byte0, DBDataSet dbdataset, int i, DBDataSet dbdataset1, int j)
        throws SQLException, IOException
    {
        return executeFetch(dbstatement, byte0, dbdataset, i, dbdataset1, j);
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name dbdataset Type Loracle/jdbc/dbaccess/DBDataSet; At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // RetValue   4 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int fetch(DBStatement dbstatement, DBDataSet dbdataset, int i)
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name dbdataset Type Loracle/jdbc/dbaccess/DBDataSet; At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // Parameter  4 added: Name j Type I At 0 0 Range 0 4294967295 Init 0
    // RetValue   5 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int fetch(DBStatement dbstatement, DBDataSet dbdataset, int i, int j)
        throws SQLException, IOException;

    // Decompiling method: fileClose  Signature: (Loracle/sql/BFILE;)V
    // Max stack: 1, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 7411
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 5 Range 0 4 Init 0 fixed
    public void fileClose(BFILE bfile)
        throws SQLException
    {
        LobPlsqlUtil.plsql_fileClose(bfile);
        return;
    }

    // Decompiling method: fileExists  Signature: (Loracle/sql/BFILE;)Z
    // Max stack: 1, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 7468
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type Z At 0 5 Range 0 4 Init 0 fixed
    public boolean fileExists(BFILE bfile)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_fileExists(bfile);
    }

    // Decompiling method: fileGetDirAlias  Signature: (Loracle/sql/BFILE;)Ljava/lang/String;
    // Max stack: 1, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 7521
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type Ljava/lang/String; At 0 5 Range 0 4 Init 0 fixed
    public String fileGetDirAlias(BFILE bfile)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_fileGetDirAlias(bfile);
    }

    // Decompiling method: fileGetName  Signature: (Loracle/sql/BFILE;)Ljava/lang/String;
    // Max stack: 1, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 7574
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type Ljava/lang/String; At 0 5 Range 0 4 Init 0 fixed
    public String fileGetName(BFILE bfile)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_fileGetName(bfile);
    }

    // Decompiling method: fileIsOpen  Signature: (Loracle/sql/BFILE;)Z
    // Max stack: 1, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 7627
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type Z At 0 5 Range 0 4 Init 0 fixed
    public boolean fileIsOpen(BFILE bfile)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_fileIsOpen(bfile);
    }

    // Decompiling method: fileOpen  Signature: (Loracle/sql/BFILE;)V
    // Max stack: 1, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 7680
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 5 Range 0 4 Init 0 fixed
    public void fileOpen(BFILE bfile)
        throws SQLException
    {
        LobPlsqlUtil.plsql_fileOpen(bfile);
        return;
    }

    // Decompiling method: freeTemporaryLob  Signature: (Ljava/sql/Connection;Loracle/sql/Datum;I)V
    // Max stack: 3, #locals: 4, #params: 4
    // Code length: 7 bytes, Code offset: 7737
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name datum Type Loracle/sql/Datum; At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name i Type I At 0 7 Range 0 6 Init 0
    // RetValue   4 added: Name <returnValue> Type V At 0 7 Range 0 6 Init 0 fixed
    public void freeTemporaryLob(Connection connection, Datum datum, int i)
        throws SQLException
    {
        LobPlsqlUtil.plsql_freeTemporaryLob(connection, datum, i);
        return;
    }

    // Decompiling method: getC2SNlsRatio  Signature: ()I
    // Max stack: 1, #locals: 1, #params: 1
    // Code length: 2 bytes, Code offset: 7796
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 2 Range 0 1 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type I At 0 2 Range 0 1 Init 0 fixed
    public int getC2SNlsRatio()
    {
        return 1;
    }

    // Decompiling method: getConnectionPoolInfo  Signature: ()Ljava/util/Properties;
    // Max stack: 2, #locals: 1, #params: 1
    // Code length: 9 bytes, Code offset: 7836
    // Line Number Table found: 4 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 9 Range 0 8 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type Ljava/util/Properties; At 0 9 Range 0 8 Init 0 fixed
    public Properties getConnectionPoolInfo()
        throws SQLException
    {
        DBError.throwSqlException(66, "getConnectionPoolInfo");
        return null;
    }

    // Decompiling method: getCreateStatementAsRefCursor  Signature: ()Z
    // Max stack: 1, #locals: 1, #params: 1
    // Code length: 2 bytes, Code offset: 7905
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 2 Range 0 1 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type Z At 0 2 Range 0 1 Init 0 fixed
    public boolean getCreateStatementAsRefCursor()
    {
        return false;
    }

    // Decompiling method: getDBAccessProperties  Signature: ()Ljava/util/Properties;
    // Max stack: 2, #locals: 1, #params: 1
    // Code length: 9 bytes, Code offset: 7945
    // Line Number Table found: 4 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 9 Range 0 8 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type Ljava/util/Properties; At 0 9 Range 0 8 Init 0 fixed
    public Properties getDBAccessProperties()
        throws SQLException
    {
        DBError.throwSqlException(66, "getDBAccessProperties");
        return null;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int getDefaultPrefetch();

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int getDefaultStreamChunkSize();

    // Decompiling method: getFetchOnNewRefCursor  Signature: ()Z
    // Max stack: 1, #locals: 1, #params: 1
    // Code length: 2 bytes, Code offset: 8030
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 2 Range 0 1 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type Z At 0 2 Range 0 1 Init 0 fixed
    public boolean getFetchOnNewRefCursor()
    {
        return true;
    }

    // Decompiling method: getLobChunkSize  Signature: (Loracle/sql/BLOB;)J
    // Max stack: 2, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 8070
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type J At 0 5 Range 0 4 Init 0 fixed
    public long getLobChunkSize(BLOB blob)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_getChunkSize(blob);
    }

    // Decompiling method: getLobChunkSize  Signature: (Loracle/sql/CLOB;)J
    // Max stack: 2, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 8123
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name clob Type Loracle/sql/CLOB; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type J At 0 5 Range 0 4 Init 0 fixed
    public long getLobChunkSize(CLOB clob)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_getChunkSize(clob);
    }

    // Decompiling method: getNlsRatio  Signature: ()I
    // Max stack: 1, #locals: 1, #params: 1
    // Code length: 2 bytes, Code offset: 8176
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 2 Range 0 1 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type I At 0 2 Range 0 1 Init 0 fixed
    public int getNlsRatio()
    {
        return 1;
    }

    // Decompiling method: getOracleTypeADT  Signature: (Loracle/jdbc/oracore/OracleTypeADT;)V
    // Max stack: 0, #locals: 2, #params: 2
    // Code length: 1 bytes, Code offset: 8216
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 1 Range 0 0 Init 0 fixed
    // Parameter  1 added: Name oracletypeadt Type Loracle/jdbc/oracore/OracleTypeADT; At 0 1 Range 0 0 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 1 Range 0 0 Init 0 fixed
    public void getOracleTypeADT(OracleTypeADT oracletypeadt)
        throws SQLException
    {
        return;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type [B At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract byte[] getVersion()
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type S At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract short getVersionNumber()
        throws SQLException;

    // Decompiling method: getWarnings  Signature: ()Ljava/sql/SQLWarning;
    // Max stack: 1, #locals: 1, #params: 1
    // Code length: 5 bytes, Code offset: 8303
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type Ljava/sql/SQLWarning; At 0 5 Range 0 4 Init 0 fixed
    public SQLWarning getWarnings()
    {
        return accessWarning;
    }

    // Decompiling method: hasPattern  Signature: (Loracle/sql/BFILE;[BJ)J
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 7 bytes, Code offset: 8346
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name abyte0 Type [B At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name l Type J At 0 7 Range 0 6 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 7 Range 0 6 Init 0 fixed
    public long hasPattern(BFILE bfile, byte abyte0[], long l)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_hasPattern(bfile, abyte0, l);
    }

    // Decompiling method: hasPattern  Signature: (Loracle/sql/BLOB;[BJ)J
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 7 bytes, Code offset: 8401
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name abyte0 Type [B At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name l Type J At 0 7 Range 0 6 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 7 Range 0 6 Init 0 fixed
    public long hasPattern(BLOB blob, byte abyte0[], long l)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_hasPattern(blob, abyte0, l);
    }

    // Decompiling method: hasPattern  Signature: (Loracle/sql/CLOB;[CJ)J
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 7 bytes, Code offset: 8456
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name clob Type Loracle/sql/CLOB; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name ac Type [C At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name l Type J At 0 7 Range 0 6 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 7 Range 0 6 Init 0 fixed
    public long hasPattern(CLOB clob, char ac[], long l)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_hasPattern(clob, ac, l);
    }

    // Decompiling method: initNls  Signature: (Loracle/jdbc/driver/OracleConnection;)V
    // Max stack: 0, #locals: 2, #params: 2
    // Code length: 1 bytes, Code offset: 8511
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 1 Range 0 0 Init 0 fixed
    // Parameter  1 added: Name oracleconnection Type Loracle/jdbc/driver/OracleConnection; At 0 1 Range 0 0 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 1 Range 0 0 Init 0 fixed
    public void initNls(OracleConnection oracleconnection)
        throws SQLException
    {
        return;
    }

    // Decompiling method: isLobOpen  Signature: (Ljava/sql/Connection;Loracle/sql/Datum;I)Z
    // Max stack: 3, #locals: 4, #params: 4
    // Code length: 7 bytes, Code offset: 8560
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name datum Type Loracle/sql/Datum; At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name i Type I At 0 7 Range 0 6 Init 0
    // RetValue   4 added: Name <returnValue> Type Z At 0 7 Range 0 6 Init 0 fixed
    public boolean isLobOpen(Connection connection, Datum datum, int i)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_isLobOpen(connection, datum, i);
    }

    // Decompiling method: isSubLob  Signature: (Loracle/sql/BFILE;Loracle/sql/BFILE;J)J
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 7 bytes, Code offset: 8615
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name bfile1 Type Loracle/sql/BFILE; At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name l Type J At 0 7 Range 0 6 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 7 Range 0 6 Init 0 fixed
    public long isSubLob(BFILE bfile, BFILE bfile1, long l)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_isSubLob(bfile, bfile1, l);
    }

    // Decompiling method: isSubLob  Signature: (Loracle/sql/BLOB;Loracle/sql/BLOB;J)J
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 7 bytes, Code offset: 8670
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name blob1 Type Loracle/sql/BLOB; At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name l Type J At 0 7 Range 0 6 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 7 Range 0 6 Init 0 fixed
    public long isSubLob(BLOB blob, BLOB blob1, long l)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_isSubLob(blob, blob1, l);
    }

    // Decompiling method: isSubLob  Signature: (Loracle/sql/CLOB;Loracle/sql/CLOB;J)J
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 7 bytes, Code offset: 8725
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name clob Type Loracle/sql/CLOB; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name clob1 Type Loracle/sql/CLOB; At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name l Type J At 0 7 Range 0 6 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 7 Range 0 6 Init 0 fixed
    public long isSubLob(CLOB clob, CLOB clob1, long l)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_isSubLob(clob, clob1, l);
    }

    // Decompiling method: isTemporaryLob  Signature: (Ljava/sql/Connection;Loracle/sql/Datum;I)Z
    // Max stack: 3, #locals: 4, #params: 4
    // Code length: 7 bytes, Code offset: 8780
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name datum Type Loracle/sql/Datum; At 0 7 Range 0 6 Init 0
    // Parameter  3 added: Name i Type I At 0 7 Range 0 6 Init 0
    // RetValue   4 added: Name <returnValue> Type Z At 0 7 Range 0 6 Init 0 fixed
    public boolean isTemporaryLob(Connection connection, Datum datum, int i)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_isTemporaryLob(connection, datum, i);
    }

    // Decompiling method: lobLength  Signature: (Loracle/sql/BFILE;)J
    // Max stack: 2, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 8835
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type J At 0 5 Range 0 4 Init 0 fixed
    public long lobLength(BFILE bfile)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_length(bfile);
    }

    // Decompiling method: lobLength  Signature: (Loracle/sql/BLOB;)J
    // Max stack: 2, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 8888
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type J At 0 5 Range 0 4 Init 0 fixed
    public long lobLength(BLOB blob)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_length(blob);
    }

    // Decompiling method: lobLength  Signature: (Loracle/sql/CLOB;)J
    // Max stack: 2, #locals: 2, #params: 2
    // Code length: 5 bytes, Code offset: 8941
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 5 Range 0 4 Init 0 fixed
    // Parameter  1 added: Name clob Type Loracle/sql/CLOB; At 0 5 Range 0 4 Init 0
    // RetValue   2 added: Name <returnValue> Type J At 0 5 Range 0 4 Init 0 fixed
    public long lobLength(CLOB clob)
        throws SQLException
    {
        return LobPlsqlUtil.plsql_length(clob);
    }

    // Decompiling method: lobRead  Signature: (Loracle/sql/BFILE;JJ[B)J
    // Max stack: 6, #locals: 7, #params: 7
    // Code length: 10 bytes, Code offset: 8994
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 10 Range 0 9 Init 0 fixed
    // Parameter  1 added: Name bfile Type Loracle/sql/BFILE; At 0 10 Range 0 9 Init 0
    // Parameter  2 added: Name l Type J At 0 10 Range 0 9 Init 0
    // Parameter  4 added: Name l1 Type J At 0 10 Range 0 9 Init 0
    // Parameter  6 added: Name abyte0 Type [B At 0 10 Range 0 9 Init 0
    // RetValue   7 added: Name <returnValue> Type J At 0 10 Range 0 9 Init 0 fixed
    public long lobRead(BFILE bfile, long l, long l1, byte abyte0[])
        throws SQLException
    {
        return LobPlsqlUtil.plsql_read(bfile, l, l1, abyte0);
    }

    // Decompiling method: lobRead  Signature: (Loracle/sql/BLOB;JJ[B)J
    // Max stack: 6, #locals: 7, #params: 7
    // Code length: 10 bytes, Code offset: 9052
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 10 Range 0 9 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 10 Range 0 9 Init 0
    // Parameter  2 added: Name l Type J At 0 10 Range 0 9 Init 0
    // Parameter  4 added: Name l1 Type J At 0 10 Range 0 9 Init 0
    // Parameter  6 added: Name abyte0 Type [B At 0 10 Range 0 9 Init 0
    // RetValue   7 added: Name <returnValue> Type J At 0 10 Range 0 9 Init 0 fixed
    public long lobRead(BLOB blob, long l, long l1, byte abyte0[])
        throws SQLException
    {
        return LobPlsqlUtil.plsql_read(blob, l, l1, abyte0);
    }

    // Decompiling method: lobRead  Signature: (Loracle/sql/CLOB;JJ[C)J
    // Max stack: 6, #locals: 7, #params: 7
    // Code length: 10 bytes, Code offset: 9110
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 10 Range 0 9 Init 0 fixed
    // Parameter  1 added: Name clob Type Loracle/sql/CLOB; At 0 10 Range 0 9 Init 0
    // Parameter  2 added: Name l Type J At 0 10 Range 0 9 Init 0
    // Parameter  4 added: Name l1 Type J At 0 10 Range 0 9 Init 0
    // Parameter  6 added: Name ac Type [C At 0 10 Range 0 9 Init 0
    // RetValue   7 added: Name <returnValue> Type J At 0 10 Range 0 9 Init 0 fixed
    public long lobRead(CLOB clob, long l, long l1, char ac[])
        throws SQLException
    {
        return LobPlsqlUtil.plsql_read(clob, l, l1, ac);
    }

    // Decompiling method: lobWrite  Signature: (Loracle/sql/BLOB;J[B)J
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 8 bytes, Code offset: 9168
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 8 Range 0 7 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 8 Range 0 7 Init 0
    // Parameter  2 added: Name l Type J At 0 8 Range 0 7 Init 0
    // Parameter  4 added: Name abyte0 Type [B At 0 8 Range 0 7 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 8 Range 0 7 Init 0 fixed
    public long lobWrite(BLOB blob, long l, byte abyte0[])
        throws SQLException
    {
        return LobPlsqlUtil.plsql_write(blob, l, abyte0);
    }

    // Decompiling method: lobWrite  Signature: (Loracle/sql/CLOB;J[C)J
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 8 bytes, Code offset: 9224
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 8 Range 0 7 Init 0 fixed
    // Parameter  1 added: Name clob Type Loracle/sql/CLOB; At 0 8 Range 0 7 Init 0
    // Parameter  2 added: Name l Type J At 0 8 Range 0 7 Init 0
    // Parameter  4 added: Name ac Type [C At 0 8 Range 0 7 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 8 Range 0 7 Init 0 fixed
    public long lobWrite(CLOB clob, long l, char ac[])
        throws SQLException
    {
        return LobPlsqlUtil.plsql_write(clob, l, ac);
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void logoff()
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name s Type Ljava/lang/String; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name s1 Type Ljava/lang/String; At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name s2 Type Ljava/lang/String; At 0 0 Range 0 4294967295 Init 0
    // Parameter  4 added: Name properties Type Ljava/util/Properties; At 0 0 Range 0 4294967295 Init 0
    // RetValue   5 added: Name <returnValue> Type Loracle/jdbc/dbaccess/DBConversion; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract DBConversion logon(String s, String s1, String s2, Properties properties)
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract DBStatement open()
        throws SQLException, IOException;

    // Decompiling method: openLob  Signature: (Ljava/sql/Connection;Loracle/sql/Datum;II)V
    // Max stack: 4, #locals: 5, #params: 5
    // Code length: 9 bytes, Code offset: 9340
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 9 Range 0 8 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 9 Range 0 8 Init 0
    // Parameter  2 added: Name datum Type Loracle/sql/Datum; At 0 9 Range 0 8 Init 0
    // Parameter  3 added: Name i Type I At 0 9 Range 0 8 Init 0
    // Parameter  4 added: Name j Type I At 0 9 Range 0 8 Init 0
    // RetValue   5 added: Name <returnValue> Type V At 0 9 Range 0 8 Init 0 fixed
    public void openLob(Connection connection, Datum datum, int i, int j)
        throws SQLException
    {
        LobPlsqlUtil.plsql_openLob(connection, datum, i, j);
        return;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name abyte0 Type [B At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name dbdataset Type Loracle/jdbc/dbaccess/DBDataSet; At 0 0 Range 0 4294967295 Init 0
    // RetValue   4 added: Name <returnValue> Type [Loracle/jdbc/dbaccess/DBColumn; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract DBColumn[] parseExecuteDescribe(DBStatement dbstatement, byte abyte0[], DBDataSet dbdataset)
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name byte0 Type B At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name abyte0 Type [B At 0 0 Range 0 4294967295 Init 0
    // Parameter  4 added: Name dbdataset Type Loracle/jdbc/dbaccess/DBDataSet; At 0 0 Range 0 4294967295 Init 0
    // Parameter  5 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // Parameter  6 added: Name dbdataset1 Type Loracle/jdbc/dbaccess/DBDataSet; At 0 0 Range 0 4294967295 Init 0
    // Parameter  7 added: Name j Type I At 0 0 Range 0 4294967295 Init 0
    // RetValue   8 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int parseExecuteFetch(DBStatement dbstatement, byte byte0, byte abyte0[], DBDataSet dbdataset, int i, DBDataSet dbdataset1, int j)
        throws SQLException, IOException;

    // Decompiling method: pingDatabase  Signature: (I)I
    // Max stack: 4, #locals: 7, #params: 2
    // Code length: 91 bytes, Code offset: 9441
    // Exception table: 2 entries
    //           start  56 end 70 handler 73 type InterruptedException
    //           start  56 end 79 handler 85 type any
    // Line Number Table found: 22 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 91 Range 0 90 Init 0 fixed
    // Parameter  1 added: Name i Type I At 0 91 Range 0 90 Init 0
    // RetValue   7 added: Name <returnValue> Type I At 0 91 Range 0 90 Init 0 fixed
    // LocalVar   2 added: Name flag Type Z At 1 1 Range 1 1 Init 1
    // LocalVar   3 added: Name semaphore1 Type Loracle/jdbc/dbaccess/semaphore; At 17 58 Range 17 74 Init 17
    // LocalVar   4 added: Name timeoutthread Type Loracle/jdbc/dbaccess/timeOutThread; At 27 15 Range 27 41 Init 27
    // LocalVar   5 added: Name pingdatabasethread Type Loracle/jdbc/dbaccess/pingDatabaseThread; At 38 9 Range 38 46 Init 38
    // LocalVar   6 added: Name semaphore2 Type Loracle/jdbc/dbaccess/semaphore; At 51 36 Range 51 86 Init 51
    // LocalVar   2 added: Name j Type I At 78 12 Range 78 89 Init 78
    // LocalVar   2 chged: Name k Oname flag Type I At 1 1 Range 1 1 Init 1
    // LocalVar   2 name j(I) merged out into k(I)
    public int pingDatabase(int i)
        throws SQLException
    {
        int j = 0;
        if(i <= 0)
        {
            i = 1000;
        }
        semaphore semaphore1 = new semaphore();
        timeOutThread timeoutthread = new timeOutThread(semaphore1, i);
        pingDatabaseThread pingdatabasethread = new pingDatabaseThread(semaphore1, this);
        timeoutthread.start();
        pingdatabasethread.start();
        synchronized(semaphore1)
        {
            try
            {
                while(!semaphore1.posted) 
                {
                    semaphore1.wait();
                }
            }
            catch(InterruptedException _ex) { }
            j = semaphore1.returnValue;
        }
        return j;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name dbstatement Type Loracle/jdbc/dbaccess/DBStatement; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name abyte0 Type [B At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // RetValue   4 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int read(DBStatement dbstatement, byte abyte0[], int i)
        throws SQLException, IOException;

    // Decompiling method: registerTAFCallback  Signature: (Ljava/sql/Connection;Loracle/jdbc/OracleOCIFailover;Ljava/lang/Object;)V
    // Max stack: 1, #locals: 4, #params: 4
    // Code length: 6 bytes, Code offset: 9700
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 6 Range 0 5 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 6 Range 0 5 Init 0
    // Parameter  2 added: Name oracleocifailover Type Loracle/jdbc/OracleOCIFailover; At 0 6 Range 0 5 Init 0
    // Parameter  3 added: Name obj Type Ljava/lang/Object; At 0 6 Range 0 5 Init 0
    // RetValue   4 added: Name <returnValue> Type V At 0 6 Range 0 5 Init 0 fixed
    public void registerTAFCallback(Connection connection, OracleOCIFailover oracleocifailover, Object obj)
        throws SQLException
    {
        DBError.throwSqlException(23);
        return;
    }

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // RetValue   1 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void rollback()
        throws SQLException, IOException;

    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name flag Type Z At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void setAutoCommit(boolean flag)
        throws SQLException, IOException;

    // Decompiling method: setClientIdentifier  Signature: (Loracle/jdbc/driver/OracleConnection;Ljava/lang/String;)V
    // Max stack: 3, #locals: 7, #params: 3
    // Code length: 63 bytes, Code offset: 9798
    // Exception table: 2 entries
    //           start  2 end 24 handler 27 type SQLException
    //           start  2 end 32 handler 38 type any
    // Line Number Table found: 14 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 63 Range 0 62 Init 0 fixed
    // Parameter  1 added: Name oracleconnection Type Loracle/jdbc/driver/OracleConnection; At 0 63 Range 0 62 Init 0
    // Parameter  2 added: Name s Type Ljava/lang/String; At 0 63 Range 0 62 Init 0
    // RetValue   7 added: Name <returnValue> Type V At 0 63 Range 0 62 Init 0 fixed
    // LocalVar   3 added: Name obj Type A At 1 52 Range 1 52 Init 1
    // LocalVar   3 chged: Name callablestatement Oname obj Type Ljava/sql/CallableStatement; At 8 45 Range 1 52 Init 1
    // LocalVar   5 added: Name local Type @ At 46 16 Range 46 61 Init 46
    // LocalVar   3 added: Name obj Type A At 59 1 Range 59 59 Init 59
    // LocalVar   6 added: Name sqlexception Type Ljava/sql/SQLException; At 27 4 Range 27 30 Init 27
    // LocalVar   4 added: Name exception Type Ljava.lang.Exception; At 38 7 Range 38 44 Init 38
    // LocalVar   3 name obj(A) merged out into callablestatement(Ljava/sql/CallableStatement;)
    public void setClientIdentifier(OracleConnection oracleconnection, String s)
        throws SQLException
    {
        java.sql.CallableStatement callablestatement = null;
        try
        {
            callablestatement = oracleconnection.prepareCall("begin dbms_session.set_identifier(?); end;");
            callablestatement.setString(1, s);
            callablestatement.execute();
        }
        catch(SQLException sqlexception)
        {
            throw sqlexception;
        }
        finally
        {
            if(callablestatement != null)
            {
                callablestatement.close();
            }
            callablestatement = null;
        }
        return;
    }

    // Decompiling method: setConnectionPoolInfo  Signature: (Ljava/util/Properties;)V
    // Max stack: 2, #locals: 2, #params: 2
    // Code length: 8 bytes, Code offset: 9977
    // Line Number Table found: 4 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 8 Range 0 7 Init 0 fixed
    // Parameter  1 added: Name properties Type Ljava/util/Properties; At 0 8 Range 0 7 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 8 Range 0 7 Init 0 fixed
    public void setConnectionPoolInfo(Properties properties)
        throws SQLException
    {
        DBError.throwSqlException(66, "setConnectionPoolInfo");
        return;
    }

    // Decompiling method: setCreateStatementAsRefCursor  Signature: (Z)V
    // Max stack: 0, #locals: 2, #params: 2
    // Code length: 1 bytes, Code offset: 10045
    // Line Number Table found: 1 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 1 Range 0 0 Init 0 fixed
    // Parameter  1 added: Name flag Type Z At 0 1 Range 0 0 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 1 Range 0 0 Init 0 fixed
    public void setCreateStatementAsRefCursor(boolean flag)
    {
        return;
    }

    // Decompiling method: setNlsParamsClient  Signature: (Loracle/jdbc/driver/OracleConnection;)V
    // Max stack: 4, #locals: 10, #params: 2
    // Code length: 212 bytes, Code offset: 10084
    // Exception table: 2 entries
    //           start  7 end 174 handler 177 type SQLException
    //           start  7 end 181 handler 187 type any
    // Line Number Table found: 31 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 212 Range 0 211 Init 0 fixed
    // Parameter  1 added: Name oracleconnection Type Loracle/jdbc/driver/OracleConnection; At 0 212 Range 0 211 Init 0
    // RetValue  10 added: Name <returnValue> Type V At 0 212 Range 0 211 Init 0 fixed
    // LocalVar   2 added: Name obj Type A At 1 201 Range 1 201 Init 1
    // LocalVar   3 added: Name obj1 Type A At 3 1 Range 3 3 Init 3
    // LocalVar   4 added: Name obj2 Type A At 5 2 Range 5 6 Init 5
    // LocalVar   2 chged: Name statement Oname obj Type Ljava/sql/Statement; At 11 191 Range 1 201 Init 1
    // LocalVar   7 added: Name nlslocale Type Loracle/gss/util/NLSLocale; At 15 48 Range 15 62 Init 15
    // LocalVar   8 added: Name s Type Ljava/lang/String; At 25 19 Range 25 43 Init 25
    // LocalVar   9 added: Name s1 Type Ljava/lang/String; At 69 19 Range 69 87 Init 69
    // LocalVar   3 added: Name resultset Type Ljava/sql/ResultSet; At 121 11 Range 121 131 Init 121
    // LocalVar   4 added: Name s2 Type Ljava/lang/String; At 138 19 Range 138 156 Init 138
    // LocalVar   6 added: Name local Type @ At 195 16 Range 195 210 Init 195
    // LocalVar   2 added: Name obj Type A At 208 1 Range 208 208 Init 208
    // LocalVar   5 added: Name exception Type Ljava.lang.Exception; At 187 7 Range 187 193 Init 187
    // LocalVar   2 name obj(A) merged out into statement(Ljava/sql/Statement;)
    protected void setNlsParamsClient(OracleConnection oracleconnection)
        throws SQLException
    {
        Statement statement = null;
        Object obj = null;
        Object obj1 = null;
        try
        {
            statement = oracleconnection.createStatement();
            NLSLocale nlslocale = NLSLocale.getInstance();
            String s1 = nlslocale.getNLSLanguage(Locale.getDefault());
            if(s1 != null)
            {
                statement.execute("ALTER SESSION SET NLS_LANGUAGE = '" + s1 + "'");
            }
            String s2 = nlslocale.getNLSTerritory(Locale.getDefault());
            if(s2 != null)
            {
                statement.execute("ALTER SESSION SET NLS_TERRITORY = '" + s2 + "'");
            }
            ((OracleStatement)statement).setRowPrefetch(1);
            ResultSet resultset = statement.executeQuery("SELECT VALUE FROM NLS_INSTANCE_PARAMETERS WHERE PARAMETER ='NLS_DATE_FORMAT'");
            if(resultset.next())
            {
                String s = resultset.getString(1);
                if(s != null)
                {
                    statement.execute("ALTER SESSION SET NLS_DATE_FORMAT = '" + s + "'");
                }
            }
        }
        catch(SQLException _ex) { }
        finally
        {
            if(statement != null)
            {
                statement.close();
            }
            statement = null;
        }
        return;
    }

    // Decompiling method: setWarnings  Signature: (Ljava/sql/SQLWarning;)V
    // Max stack: 2, #locals: 2, #params: 2
    // Code length: 6 bytes, Code offset: 10480
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 6 Range 0 5 Init 0 fixed
    // Parameter  1 added: Name sqlwarning Type Ljava/sql/SQLWarning; At 0 6 Range 0 5 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 6 Range 0 5 Init 0 fixed
    public void setWarnings(SQLWarning sqlwarning)
    {
        accessWarning = sqlwarning;
        return;
    }

    // Decompiling method: shutdown  Signature: (I)V
    // Max stack: 2, #locals: 2, #params: 2
    // Code length: 8 bytes, Code offset: 10528
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 8 Range 0 7 Init 0 fixed
    // Parameter  1 added: Name i Type I At 0 8 Range 0 7 Init 0
    // RetValue   2 added: Name <returnValue> Type V At 0 8 Range 0 7 Init 0 fixed
    public void shutdown(int i)
        throws SQLException
    {
        DBError.check_error(66, "shutdown");
        return;
    }

    // Decompiling method: startup  Signature: (Ljava/lang/String;I)V
    // Max stack: 2, #locals: 3, #params: 3
    // Code length: 8 bytes, Code offset: 10588
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 8 Range 0 7 Init 0 fixed
    // Parameter  1 added: Name s Type Ljava/lang/String; At 0 8 Range 0 7 Init 0
    // Parameter  2 added: Name i Type I At 0 8 Range 0 7 Init 0
    // RetValue   3 added: Name <returnValue> Type V At 0 8 Range 0 7 Init 0 fixed
    public void startup(String s, int i)
        throws SQLException
    {
        DBError.check_error(66, "startup");
        return;
    }

    // Decompiling method: trimLob  Signature: (Ljava/sql/Connection;Loracle/sql/Datum;IJ)V
    // Max stack: 5, #locals: 6, #params: 6
    // Code length: 9 bytes, Code offset: 10648
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/jdbc/dbaccess/DBAccess; At 0 9 Range 0 8 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 9 Range 0 8 Init 0
    // Parameter  2 added: Name datum Type Loracle/sql/Datum; At 0 9 Range 0 8 Init 0
    // Parameter  3 added: Name i Type I At 0 9 Range 0 8 Init 0
    // Parameter  4 added: Name l Type J At 0 9 Range 0 8 Init 0
    // RetValue   6 added: Name <returnValue> Type V At 0 9 Range 0 8 Init 0 fixed
    public void trimLob(Connection connection, Datum datum, int i, long l)
        throws SQLException
    {
        LobPlsqlUtil.plsql_trimLob(connection, datum, i, l);
        return;
    }
}
