public abstract class FBAbstractCommonDataSource extends RootCommonDataSource implements FirebirdConnectionProperties
Modifier and Type | Field and Description |
---|---|
protected java.lang.Object |
lock |
protected static java.lang.String |
REF_DATABASE_NAME |
protected static java.lang.String |
REF_DESCRIPTION |
protected static java.lang.String |
REF_PORT_NUMBER |
protected static java.lang.String |
REF_PROPERTIES |
protected static java.lang.String |
REF_SERVER_NAME |
Constructor and Description |
---|
FBAbstractCommonDataSource() |
Modifier and Type | Method and Description |
---|---|
protected abstract void |
checkNotStarted()
Method to check if this DataSource has not yet started.
|
int |
getBlobBufferSize() |
int |
getBuffersNumber() |
java.lang.String |
getCharSet() |
protected FBConnectionProperties |
getConnectionProperties() |
int |
getConnectTimeout()
Get the current connect timeout.
|
java.lang.String |
getDatabase()
Deprecated.
|
java.lang.String |
getDatabaseName() |
DatabaseParameterBuffer |
getDatabaseParameterBuffer()
Get the database parameter buffer corresponding to the current connection
request information.
|
java.lang.String |
getDbCryptConfig()
Get the database encryption plugin configuration.
|
java.lang.String |
getDefaultIsolation()
Get the default transaction isolation level as string.
|
int |
getDefaultTransactionIsolation()
Get the default transaction isolation level.
|
java.lang.String |
getDescription() |
java.lang.String |
getEncoding() |
int |
getLoginTimeout() |
java.lang.String |
getNonStandardProperty(java.lang.String key)
Method to get the value of properties which are not exposed through JavaBeans-style setters.
|
java.lang.String |
getPassword() |
int |
getPortNumber() |
java.lang.String |
getRoleName() |
java.lang.String |
getServerName() |
int |
getSocketBufferSize() |
int |
getSoTimeout()
Get the current Socket blocking timeout (SoTimeout).
|
java.lang.String |
getSqlDialect() |
java.lang.String |
getTpbMapping()
Get the used TPB mapping.
|
TransactionParameterBuffer |
getTransactionParameters(int isolation)
Get the transaction parameter buffer corresponding to the current
connection request information.
|
java.lang.String |
getType() |
java.lang.String |
getUser() |
java.lang.String |
getUserName()
Deprecated.
|
java.lang.String |
getUseTranslation() |
java.lang.String |
getWireCrypt()
Get the wire encryption level value.
|
boolean |
isDefaultResultSetHoldable()
Get the default ResultSet holdability.
|
boolean |
isIgnoreProcedureType()
Get the value for
ignoreProcedureType . |
boolean |
isTimestampUsesLocalTimezone() |
boolean |
isUseFirebirdAutocommit()
Get whether to use Firebird autocommit (experimental).
|
boolean |
isUseStandardUdf() |
boolean |
isUseStreamBlobs() |
void |
setBlobBufferSize(int bufferSize) |
void |
setBuffersNumber(int buffersNumber) |
void |
setCharSet(java.lang.String charSet) |
protected void |
setConnectionProperties(FBConnectionProperties connectionProperties) |
void |
setConnectTimeout(int connectTimeout)
Set the connect timeout.
|
protected void |
setDatabase()
Sets the database property of connectionProperties.
|
void |
setDatabase(java.lang.String database)
Deprecated.
|
void |
setDatabaseName(java.lang.String databaseName)
Sets the databaseName of this datasource.
|
void |
setDbCryptConfig(java.lang.String dbCryptConfig)
Sets the database encryption plugin configuration.
|
void |
setDefaultIsolation(java.lang.String isolation)
Set the default transaction isolation level as string.
|
void |
setDefaultResultSetHoldable(boolean isHoldable)
Sets the default ResultSet holdability.
|
void |
setDefaultTransactionIsolation(int defaultIsolationLevel)
Set the default transaction isolation level.
|
void |
setDescription(java.lang.String description) |
void |
setEncoding(java.lang.String encoding) |
void |
setIgnoreProcedureType(boolean ignoreProcedureType)
Sets the value
ignoreProcedureType . |
void |
setLoginTimeout(int seconds) |
void |
setNonStandardProperty(java.lang.String propertyMapping)
Method that allows setting non-standard property in the form "key=value"
form.
|
void |
setNonStandardProperty(java.lang.String key,
java.lang.String value)
Method to set properties which are not exposed through JavaBeans-style setters.
|
void |
setPassword(java.lang.String password) |
void |
setPortNumber(int portNumber) |
void |
setRoleName(java.lang.String roleName) |
void |
setServerName(java.lang.String serverName) |
void |
setSocketBufferSize(int socketBufferSize) |
void |
setSoTimeout(int soTimeout)
Set the Socket blocking timeout (SoTimeout).
|
void |
setSqlDialect(java.lang.String sqlDialect) |
void |
setTimestampUsesLocalTimezone(boolean timestampUsesLocalTimezone) |
void |
setTpbMapping(java.lang.String tpbMapping)
Set path to the properties file with the TPB mapping.
|
void |
setTransactionParameters(int isolation,
TransactionParameterBuffer tpb)
Set transaction parameters for the specified transaction isolation level.
|
void |
setType(java.lang.String type) |
void |
setUseFirebirdAutocommit(boolean useFirebirdAutocommit)
Set whether to use Firebird autocommit (experimental).
|
void |
setUser(java.lang.String user) |
void |
setUserName(java.lang.String userName)
Deprecated.
|
void |
setUseStandardUdf(boolean useStandardUdf) |
void |
setUseStreamBlobs(boolean useStreamBlobs) |
void |
setUseTranslation(java.lang.String translationPath) |
void |
setWireCrypt(java.lang.String wireCrypt)
Sets the wire encryption level.
|
protected static void |
updateReference(javax.naming.Reference ref,
FBAbstractCommonDataSource instance)
Updates the supplied reference with RefAddr properties relevant to this class.
|
getLogWriter, getParentLogger, setLogWriter
protected static final java.lang.String REF_DATABASE_NAME
protected static final java.lang.String REF_PORT_NUMBER
protected static final java.lang.String REF_SERVER_NAME
protected static final java.lang.String REF_DESCRIPTION
protected static final java.lang.String REF_PROPERTIES
protected final java.lang.Object lock
protected abstract void checkNotStarted() throws java.lang.IllegalStateException
Implementations should throw IllegalStateException when the DataSource is already in use and modifying properties is not allowed.
java.lang.IllegalStateException
- When the DataSource is already in usepublic java.lang.String getDescription()
public void setDescription(java.lang.String description)
public final java.lang.String getServerName()
public final void setServerName(java.lang.String serverName)
public final int getPortNumber()
public final void setPortNumber(int portNumber)
public final java.lang.String getDatabaseName()
public final void setDatabaseName(java.lang.String databaseName)
The databaseName is the filepath or alias of the database only, so it should not include serverName and portNumber.
databaseName
- Database name (filepath or alias)public final java.lang.String getType()
getType
in interface FirebirdConnectionProperties
public final void setType(java.lang.String type)
setType
in interface FirebirdConnectionProperties
type
- type of the connection, for example, "PURE_JAVA", "LOCAL",
"EMBEDDED", depends on the GDS implementations installed in the system.public java.lang.String getUser()
public void setUser(java.lang.String user)
public java.lang.String getPassword()
getPassword
in interface FirebirdConnectionProperties
public void setPassword(java.lang.String password)
setPassword
in interface FirebirdConnectionProperties
password
- password corresponding to the specified user name.public java.lang.String getRoleName()
getRoleName
in interface FirebirdConnectionProperties
public void setRoleName(java.lang.String roleName)
setRoleName
in interface FirebirdConnectionProperties
roleName
- SQL role to use.public final java.lang.String getCharSet()
getCharSet
in interface FirebirdConnectionProperties
FirebirdConnectionProperties.setCharSet(String)
public final void setCharSet(java.lang.String charSet)
setCharSet
in interface FirebirdConnectionProperties
charSet
- Character set for the connection. Similar to
encoding
property, but accepts Java names instead
of Firebird ones.public final java.lang.String getEncoding()
getEncoding
in interface FirebirdConnectionProperties
FirebirdConnectionProperties.setEncoding(String)
public final void setEncoding(java.lang.String encoding)
setEncoding
in interface FirebirdConnectionProperties
encoding
- Firebird name of the character encoding for the connection.
See Firebird documentation for more information.public int getLoginTimeout() throws java.sql.SQLException
This property is an alias for the connectTimeout property.
getLoginTimeout
in interface javax.sql.CommonDataSource
java.sql.SQLException
public void setLoginTimeout(int seconds) throws java.sql.SQLException
This property is an alias for the connectTimeout property.
setLoginTimeout
in interface javax.sql.CommonDataSource
java.sql.SQLException
public int getConnectTimeout()
FirebirdConnectionProperties
getConnectTimeout
in interface FirebirdConnectionProperties
public void setConnectTimeout(int connectTimeout)
FirebirdConnectionProperties
setConnectTimeout
in interface FirebirdConnectionProperties
connectTimeout
- Connect timeout in seconds (0 is 'infinite', or better: OS specific timeout)@Deprecated public java.lang.String getDatabase()
getDatabase
in interface FirebirdConnectionProperties
@Deprecated public void setDatabase(java.lang.String database)
setDatabase
in interface FirebirdConnectionProperties
database
- path to the database including the server name and the
port, if needed.public int getBlobBufferSize()
getBlobBufferSize
in interface FirebirdConnectionProperties
public void setBlobBufferSize(int bufferSize)
setBlobBufferSize
in interface FirebirdConnectionProperties
bufferSize
- size of the BLOB buffer in bytes.public java.lang.String getSqlDialect()
getSqlDialect
in interface FirebirdConnectionProperties
public void setSqlDialect(java.lang.String sqlDialect)
setSqlDialect
in interface FirebirdConnectionProperties
sqlDialect
- SQL dialect of the client.public java.lang.String getUseTranslation()
getUseTranslation
in interface FirebirdConnectionProperties
public void setUseTranslation(java.lang.String translationPath)
setUseTranslation
in interface FirebirdConnectionProperties
translationPath
- path to the character translation table.public boolean isUseStreamBlobs()
isUseStreamBlobs
in interface FirebirdConnectionProperties
true
if stream blobs should be created, otherwise
false
.public void setUseStreamBlobs(boolean useStreamBlobs)
setUseStreamBlobs
in interface FirebirdConnectionProperties
useStreamBlobs
- true
if stream blobs should be created,
otherwise false
.public boolean isUseStandardUdf()
isUseStandardUdf
in interface FirebirdConnectionProperties
true
if driver should assume that standard UDF are
installed.public void setUseStandardUdf(boolean useStandardUdf)
setUseStandardUdf
in interface FirebirdConnectionProperties
useStandardUdf
- true
if driver should assume that standard UDF
are installed.public int getSocketBufferSize()
getSocketBufferSize
in interface FirebirdConnectionProperties
public void setSocketBufferSize(int socketBufferSize)
setSocketBufferSize
in interface FirebirdConnectionProperties
socketBufferSize
- socket buffer size in bytes.public boolean isTimestampUsesLocalTimezone()
isTimestampUsesLocalTimezone
in interface FirebirdConnectionProperties
true
if the Jaybird 1.0 handling of the calendar
in corresponding setters. This is also compatible with MySQL
calendar treatment.public void setTimestampUsesLocalTimezone(boolean timestampUsesLocalTimezone)
setTimestampUsesLocalTimezone
in interface FirebirdConnectionProperties
timestampUsesLocalTimezone
- true
if the Jaybird 1.0 handling of the
calendar in corresponding setters. This is also compatible
with MySQL calendar treatment.@Deprecated public java.lang.String getUserName()
getUserName
in interface FirebirdConnectionProperties
@Deprecated public void setUserName(java.lang.String userName)
setUserName
in interface FirebirdConnectionProperties
userName
- name of the user that will be used when connecting to the database.public int getBuffersNumber()
getBuffersNumber
in interface FirebirdConnectionProperties
public void setBuffersNumber(int buffersNumber)
setBuffersNumber
in interface FirebirdConnectionProperties
buffersNumber
- number of cache buffers that should be allocated for this
connection, should be specified for ClassicServer instances,
SuperServer has a server-wide configuration parameter.public DatabaseParameterBuffer getDatabaseParameterBuffer() throws java.sql.SQLException
FirebirdConnectionProperties
getDatabaseParameterBuffer
in interface FirebirdConnectionProperties
DatabaseParameterBuffer
.java.sql.SQLException
- if database parameter buffer cannot be created.public java.lang.String getTpbMapping()
FirebirdConnectionProperties
getTpbMapping
in interface FirebirdConnectionProperties
FirebirdConnectionProperties.setTpbMapping(String)
public void setTpbMapping(java.lang.String tpbMapping)
FirebirdConnectionProperties
"res:"
should be used to specify resource
in the classpath.
For the compatibility reasons, if no protocol is specified, classpath is
used by default.
Properties file contains a mapping between the transaction isolation
level (name of the constant in the Connection
interface
and a comma-separated list of TPB parameters.setTpbMapping
in interface FirebirdConnectionProperties
tpbMapping
- path to the properties file.public int getDefaultTransactionIsolation()
FirebirdConnectionProperties
getDefaultTransactionIsolation
in interface FirebirdConnectionProperties
public void setDefaultTransactionIsolation(int defaultIsolationLevel)
FirebirdConnectionProperties
setDefaultTransactionIsolation
in interface FirebirdConnectionProperties
defaultIsolationLevel
- default transaction isolation level.public java.lang.String getDefaultIsolation()
FirebirdConnectionProperties
FirebirdConnectionProperties.getDefaultTransactionIsolation()
, however
it takes a string as parameter instead of a numeric constant.getDefaultIsolation
in interface FirebirdConnectionProperties
FirebirdConnectionProperties.setDefaultIsolation(String)
public void setDefaultIsolation(java.lang.String isolation)
FirebirdConnectionProperties
FirebirdConnectionProperties.setDefaultTransactionIsolation(int)
,
however it takes a string as parameter instead of a numeric constant.
Following strings are allowed:
"TRANSACTION_READ_COMMITTED"
for a READ COMMITTED
isolation level.
"TRANSACTION_REPEATABLE_READ"
for a REPEATABLE READ
isolation level.
"TRANSACTION_SERIALIZABLE"
for a SERIALIZABLE
isolation level.
setDefaultIsolation
in interface FirebirdConnectionProperties
isolation
- string constant representing a default isolation level.public TransactionParameterBuffer getTransactionParameters(int isolation)
FirebirdConnectionProperties
getTransactionParameters
in interface FirebirdConnectionProperties
isolation
- transaction isolation level for which TPB should be returned.TransactionParameterBuffer
.public void setTransactionParameters(int isolation, TransactionParameterBuffer tpb)
FirebirdConnectionProperties
setTransactionParameters
in interface FirebirdConnectionProperties
isolation
- transaction isolation level.tpb
- instance of TransactionParameterBuffer
containing
transaction parameters.public boolean isDefaultResultSetHoldable()
FirebirdConnectionProperties
isDefaultResultSetHoldable
in interface FirebirdConnectionProperties
true
when ResultSets are holdable by default, false
not holdable.public void setDefaultResultSetHoldable(boolean isHoldable)
FirebirdConnectionProperties
setDefaultResultSetHoldable
in interface FirebirdConnectionProperties
isHoldable
- true
when ResultSets are holdable by default, false
not holdable.public int getSoTimeout()
FirebirdConnectionProperties
getSoTimeout
in interface FirebirdConnectionProperties
public void setSoTimeout(int soTimeout)
FirebirdConnectionProperties
setSoTimeout
in interface FirebirdConnectionProperties
soTimeout
- Timeout in milliseconds (0 is 'infinite')public boolean isUseFirebirdAutocommit()
FirebirdConnectionProperties
isUseFirebirdAutocommit
in interface FirebirdConnectionProperties
true
use Firebird autocommitpublic void setUseFirebirdAutocommit(boolean useFirebirdAutocommit)
FirebirdConnectionProperties
setUseFirebirdAutocommit
in interface FirebirdConnectionProperties
useFirebirdAutocommit
- true
Use Firebird autocommitpublic java.lang.String getWireCrypt()
FirebirdConnectionProperties
getWireCrypt
in interface FirebirdConnectionProperties
null
implies DEFAULT
)public void setWireCrypt(java.lang.String wireCrypt)
FirebirdConnectionProperties
Values are defined by WireCrypt
, values are handled case insensitive.
Invalid values are accepted, but will cause an error when a connection is established.
setWireCrypt
in interface FirebirdConnectionProperties
wireCrypt
- Wire encryption levelpublic java.lang.String getDbCryptConfig()
FirebirdConnectionProperties
getDbCryptConfig
in interface FirebirdConnectionProperties
public void setDbCryptConfig(java.lang.String dbCryptConfig)
FirebirdConnectionProperties
setDbCryptConfig
in interface FirebirdConnectionProperties
dbCryptConfig
- Database encryption plugin configuration, meaning plugin specificpublic boolean isIgnoreProcedureType()
FirebirdConnectionProperties
ignoreProcedureType
.isIgnoreProcedureType
in interface FirebirdConnectionProperties
ignoreProcedureType
public void setIgnoreProcedureType(boolean ignoreProcedureType)
FirebirdConnectionProperties
ignoreProcedureType
.
When set to true, the CallableStatement
implementation in Jaybird will ignore metadata
information about the stored procedure type and default to using EXECUTE PROCEDURE
, unless the type is
explicitly set using FirebirdCallableStatement.setSelectableProcedure(boolean)
. This can be useful in
situations where a stored procedure is selectable, but tooling or code expects an executable stored procedure.
setIgnoreProcedureType
in interface FirebirdConnectionProperties
ignoreProcedureType
- true
Ignore procedure typepublic final void setNonStandardProperty(java.lang.String propertyMapping)
setNonStandardProperty
in interface FirebirdConnectionProperties
propertyMapping
- mapping between property name (key) and its value.
Name and value are separated with "=", ":" or whitespace character.
Whitespace characters on the beginning of the string and between key and
value are ignored. No escaping is possible: "\n" is backslash-en, not
a new line mark.setNonStandardProperty(String, String)
public final void setNonStandardProperty(java.lang.String key, java.lang.String value)
setNonStandardProperty
in interface FirebirdConnectionProperties
key
- Name of the property (see Jaybird releasenotes)value
- Value of the propertysetNonStandardProperty(String)
public final java.lang.String getNonStandardProperty(java.lang.String key)
getNonStandardProperty
in interface FirebirdConnectionProperties
key
- Name of the property (see Jaybird releasenotes)setNonStandardProperty(String)
,
setNonStandardProperty(String, String)
protected final void setDatabase()
protected final void setConnectionProperties(FBConnectionProperties connectionProperties)
protected final FBConnectionProperties getConnectionProperties()
protected static void updateReference(javax.naming.Reference ref, FBAbstractCommonDataSource instance)
ref
- Reference to updateinstance
- Instance of this class to obtain valuesCopyright © 2001-2021 Jaybird (Firebird JDBC/JCA) team. All rights reserved.