// 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:   BlobDBAccess.java
// Class Version:      45.3

package oracle.sql;

import java.io.*;
import java.sql.Connection;
import java.sql.SQLException;

// Referenced classes of package oracle.sql:
//            BLOB

// flag ACC_ABSTRACT is set
public interface BlobDBAccess
{
    // Constants:          43
    // Interfaces:         0
    // Fields:             0
    // Methods:            17
    // Class Attributes:   1


    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; 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(BLOB blob)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name connection Type Ljava/sql/Connection; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name flag Type Z 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 Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract BLOB createTemporaryBlob(Connection connection, boolean flag, int i)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; 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 freeTemporary(BLOB blob)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name l Type J 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 abyte0 Type [B At 0 0 Range 0 4294967295 Init 0
    // RetValue   6 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int getBytes(BLOB blob, long l, int i, byte abyte0[])
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type I At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract int getChunkSize(BLOB blob)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type Z At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract boolean isOpen(BLOB blob)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type Z At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract boolean isTemporary(BLOB blob)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // RetValue   2 added: Name <returnValue> Type J At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract long length(BLOB blob)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // RetValue   3 added: Name <returnValue> Type Ljava/io/InputStream; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract InputStream newConversionInputStream(BLOB blob, int i)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // RetValue   3 added: Name <returnValue> Type Ljava/io/Reader; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract Reader newConversionReader(BLOB blob, int i)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name l Type J At 0 0 Range 0 4294967295 Init 0
    // RetValue   5 added: Name <returnValue> Type Ljava/io/InputStream; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract InputStream newInputStream(BLOB blob, int i, long l)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name l Type J At 0 0 Range 0 4294967295 Init 0
    // RetValue   5 added: Name <returnValue> Type Ljava/io/OutputStream; At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract OutputStream newOutputStream(BLOB blob, int i, long l)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name i Type I At 0 0 Range 0 4294967295 Init 0
    // RetValue   3 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void open(BLOB blob, int i)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name blob1 Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  3 added: Name l Type J At 0 0 Range 0 4294967295 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract long position(BLOB blob, BLOB blob1, long l)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; 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 l Type J At 0 0 Range 0 4294967295 Init 0
    // RetValue   5 added: Name <returnValue> Type J At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract long position(BLOB blob, byte abyte0[], long l)
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name l Type J At 0 0 Range 0 4294967295 Init 0
    // Parameter  4 added: Name abyte0 Type [B 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 putBytes(BLOB blob, long l, byte abyte0[])
        throws SQLException;

    // Parameter  0 added: Name this Type Loracle/sql/BlobDBAccess; At 0 0 Range 0 4294967295 Init 0 fixed
    // Parameter  1 added: Name blob Type Loracle/sql/BLOB; At 0 0 Range 0 4294967295 Init 0
    // Parameter  2 added: Name l Type J At 0 0 Range 0 4294967295 Init 0
    // RetValue   4 added: Name <returnValue> Type V At 0 0 Range 0 4294967295 Init 0 fixed
    public abstract void trim(BLOB blob, long l)
        throws SQLException;
}
