Package org.firebirdsql.gds.ng.wire
Class AbstractFbWireStatement
java.lang.Object
org.firebirdsql.gds.ng.AbstractFbStatement
org.firebirdsql.gds.ng.wire.AbstractFbWireStatement
- All Implemented Interfaces:
FbStatement,ExceptionListenable,FbWireStatement
- Direct Known Subclasses:
V10Statement
public abstract class AbstractFbWireStatement
extends AbstractFbStatement
implements FbWireStatement
- Since:
- 3.0
- Author:
- Mark Rotteveel
-
Field Summary
Fields inherited from class org.firebirdsql.gds.ng.AbstractFbStatement
exceptionListenerDispatcher, statementListenerDispatcher -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final byte[]calculateBlr(RowDescriptor rowDescriptor) Returns the (possibly cached) blr byte array for aRowDescriptor, ornullif the parameter is null.protected final byte[]calculateBlr(RowDescriptor rowDescriptor, RowValue rowValue) Returns the blr byte array for aRowValue, ornullif the parameter is null.voidclose()Close and deallocate this statement.final RowDescriptorfinal FbWireDatabasefinal intprotected final XdrInputStreamgetXdrIn()Gets the XdrInputStream.protected final XdrOutputStreamGets the XdrOutputStream.protected booleanisValidTransactionClass(Class<? extends FbTransaction> transactionClass) Method to decide if a transaction implementation class is valid for the statement implementation.protected final voidsetHandle(int handle) Methods inherited from class org.firebirdsql.gds.ng.AbstractFbStatement
addExceptionListener, addStatementListener, checkStatementValid, checkStatementValid, closeCursor, closeCursor, createExecutionPlanProcessor, createSqlCountProcessor, ensureClosedCursor, finalize, free, getAllowedTimeout, getExecutionPlan, getExplainedExecutionPlan, getFieldDescriptor, getParameterDescriptionInfoRequestItems, getParameterDescriptor, getRowDescriptor, getSqlCounts, getSqlInfo, getState, getStatementInfoRequestItems, getStatementWarningCallback, getSynchronizationObject, getTimeout, getTransaction, getTransactionListener, getType, hasFields, hasSingletonResult, isAllRowsFetched, isPrepareAllowed, parseStatementInfo, queueRowData, removeExceptionListener, removeStatementListener, reset, reset, resetAll, setAllRowsFetched, setFieldDescriptor, setParameterDescriptor, setRowDescriptor, setTimeout, setTransaction, setType, signalExecute, signalFetch, switchState, validateParametersMethods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.firebirdsql.gds.ng.listeners.ExceptionListenable
addExceptionListener, removeExceptionListenerMethods inherited from interface org.firebirdsql.gds.ng.FbStatement
addStatementListener, closeCursor, closeCursor, ensureClosedCursor, execute, fetchRows, getDefaultSqlInfoSize, getExecutionPlan, getExplainedExecutionPlan, getFieldDescriptor, getMaxSqlInfoSize, getParameterDescriptor, getRowDescriptor, getSqlCounts, getSqlInfo, getSqlInfo, getState, getTimeout, getTransaction, getType, prepare, removeStatementListener, setCursorName, setTimeout, setTransaction, validateParameters
-
Constructor Details
-
AbstractFbWireStatement
-
-
Method Details
-
getXdrIn
Gets the XdrInputStream.- Returns:
- Instance of XdrInputStream
- Throws:
SQLException- If no connection is opened or when exceptions occur retrieving the InputStream
-
getXdrOut
Gets the XdrOutputStream.- Returns:
- Instance of XdrOutputStream
- Throws:
SQLException- If no connection is opened or when exceptions occur retrieving the OutputStream
-
getDatabase
- Specified by:
getDatabasein interfaceFbStatement- Returns:
- The database connection that created this statement
-
getHandle
public final int getHandle()- Specified by:
getHandlein interfaceFbStatement- Returns:
- The Firebird statement handle identifier
-
setHandle
protected final void setHandle(int handle) -
calculateBlr
Returns the (possibly cached) blr byte array for aRowDescriptor, ornullif the parameter is null.- Parameters:
rowDescriptor- The row descriptor.- Returns:
- blr byte array or
nullwhenrowDescriptorisnull - Throws:
SQLException- When theRowDescriptorcontains an unsupported field type.
-
calculateBlr
protected final byte[] calculateBlr(RowDescriptor rowDescriptor, RowValue rowValue) throws SQLException Returns the blr byte array for aRowValue, ornullif the parameter is null.Contrary to
calculateBlr(org.firebirdsql.gds.ng.fields.RowDescriptor), it is not allowed to cache this value as it depends on the actual row value.- Parameters:
rowValue- The row value.- Returns:
- blr byte array or
nullwhenrowValueisnull - Throws:
SQLException- When theRowValuecontains an unsupported field type.
-
close
Description copied from interface:FbStatementClose and deallocate this statement.- Specified by:
closein interfaceFbStatement- Overrides:
closein classAbstractFbStatement- Throws:
SQLException
-
isValidTransactionClass
Description copied from class:AbstractFbStatementMethod to decide if a transaction implementation class is valid for the statement implementation.Eg a
V10Statementwill only work with anFbWireTransactionimplementation.- Specified by:
isValidTransactionClassin classAbstractFbStatement- Parameters:
transactionClass- Class of the transaction- Returns:
truewhen the transaction class is valid for the statement implementation.
-
emptyRowDescriptor
- Specified by:
emptyRowDescriptorin interfaceFbStatement- Returns:
- A potentially cached empty row descriptor for this statement or database.
-