Class V11InputBlob
- java.lang.Object
-
- org.firebirdsql.gds.ng.AbstractFbBlob
-
- org.firebirdsql.gds.ng.wire.AbstractFbWireBlob
-
- org.firebirdsql.gds.ng.wire.AbstractFbWireInputBlob
-
- org.firebirdsql.gds.ng.wire.version10.V10InputBlob
-
- org.firebirdsql.gds.ng.wire.version11.V11InputBlob
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,FbBlob
,DatabaseListener
,ExceptionListenable
,TransactionListener
,FbWireBlob
public class V11InputBlob extends V10InputBlob
InputFbWireBlob
implementation for the version 11 wire protocol.- Since:
- 5.0.7
- Author:
- Mark Rotteveel
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.firebirdsql.gds.ng.wire.AbstractFbWireBlob
AbstractFbWireBlob.BlobOpenOperation
-
Nested classes/interfaces inherited from class org.firebirdsql.gds.ng.AbstractFbBlob
AbstractFbBlob.BlobState
-
Nested classes/interfaces inherited from interface org.firebirdsql.gds.ng.FbBlob
FbBlob.SeekMode
-
-
Field Summary
-
Fields inherited from class org.firebirdsql.gds.ng.AbstractFbBlob
exceptionListenerDispatcher
-
Fields inherited from interface org.firebirdsql.gds.ng.FbBlob
NO_BLOB_ID
-
-
Constructor Summary
Constructors Constructor Description V11InputBlob(FbWireDatabase database, FbWireTransaction transaction, BlobParameterBuffer blobParameterBuffer, long blobId)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkBlobOpen()
Checks if the blob is open.byte[]
getBlobInfo(byte[] requestItems, int bufferLength)
Request blob info.void
open()
Opens an existing input blob, or creates an output blob.-
Methods inherited from class org.firebirdsql.gds.ng.wire.version10.V10InputBlob
get, getSegment, seek, sendGetSegment
-
Methods inherited from class org.firebirdsql.gds.ng.wire.AbstractFbWireInputBlob
getBlobId, isOutput, put, putSegment
-
Methods inherited from class org.firebirdsql.gds.ng.wire.AbstractFbWireBlob
cancelImpl, closeImpl, getDatabase, getHandle, getXdrIn, getXdrOut, processOpenResponse, receiveOpenResponse, releaseBlob, releaseResources, sendOpen, setHandle, wrapDeferredResponse
-
Methods inherited from class org.firebirdsql.gds.ng.AbstractFbBlob
addExceptionListener, cancel, checkBlobClosed, checkDatabaseAttached, checkTransactionActive, clearDatabase, clearDeferredException, clearTransaction, close, createBlobLengthProcessor, detached, detaching, errorOccurred, get, get, getBlobInfo, getBlobParameterBuffer, getKnownBlobInfoItems, getMaximumSegmentSize, getState, getTransaction, isEndingTransaction, isEof, isOpen, length, registerDeferredException, removeExceptionListener, resetEof, setEof, setState, throwAndClearDeferredException, transactionStateChanged, transferDeferredExceptionTo, warningReceived, withLock
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.firebirdsql.gds.ng.listeners.DatabaseListener
detached, detaching, warningReceived
-
Methods inherited from interface org.firebirdsql.gds.ng.listeners.ExceptionListenable
addExceptionListener, removeExceptionListener
-
Methods inherited from interface org.firebirdsql.gds.ng.FbBlob
cancel, close, get, get, getBlobId, getBlobInfo, getDatabase, getHandle, getMaximumSegmentSize, isEof, isOpen, isOutput, length, put, putSegment
-
-
-
-
Constructor Detail
-
V11InputBlob
public V11InputBlob(FbWireDatabase database, FbWireTransaction transaction, BlobParameterBuffer blobParameterBuffer, long blobId) throws java.sql.SQLException
- Throws:
java.sql.SQLException
-
-
Method Detail
-
open
public void open() throws java.sql.SQLException
Description copied from interface:FbBlob
Opens an existing input blob, or creates an output blob.- Specified by:
open
in interfaceFbBlob
- Overrides:
open
in classV10InputBlob
- Throws:
java.sql.SQLException
- If the blob is already open, this is a (closed) output blob and it already has a blobId, the transaction is not active, or a database connection error occurred
-
checkBlobOpen
protected void checkBlobOpen() throws java.sql.SQLException
Description copied from class:AbstractFbBlob
Checks if the blob is open.NOTE: Subclasses may perform additional side effects, like queuing a server-side open for a deferred open blob.
- Overrides:
checkBlobOpen
in classAbstractFbBlob
- Throws:
java.sql.SQLException
- when the blob is closed.
-
getBlobInfo
public byte[] getBlobInfo(byte[] requestItems, int bufferLength) throws java.sql.SQLException
Description copied from interface:FbBlob
Request blob info.- Specified by:
getBlobInfo
in interfaceFbBlob
- Overrides:
getBlobInfo
in classAbstractFbWireBlob
- Parameters:
requestItems
- Array of info items to requestbufferLength
- Response buffer length to use- Returns:
- Response buffer
- Throws:
java.sql.SQLException
-
-