Module org.firebirdsql.jaybird
Package org.firebirdsql.jdbc

# Class FBConnectionProperties

java.lang.Object
org.firebirdsql.jdbc.FBConnectionProperties

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `AttachmentProperties`, `BaseProperties`, `DatabaseConnectionProperties`, `FirebirdConnectionProperties`

public final class FBConnectionProperties extends Object implements FirebirdConnectionProperties, Serializable, Cloneable

See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`FBConnectionProperties()`

## Method Summary

Modifier and Type
Method
Description
`IConnectionProperties`
`asIConnectionProperties()`
`Object`
`clone()`
`Map<ConnectionProperty,Object>`
`connectionPropertyValues()`
An unmodifiable view on the connection properties held by this BaseProperties implementation.
`boolean`
`equals(Object obj)`
`Boolean`
`getBooleanProperty(String name)`
Retrieves a `boolean` property value by name.
`Integer`
`getIntProperty(String name)`
Retrieves an `int` property value by name.
`FBTpbMapper`
`getMapper()`
`String`
`getProperty(String name)`
Retrieves a string property value by name.
`TransactionParameterBuffer`
`getTransactionParameters(int isolation)`
Get the transaction parameter buffer corresponding to the current connection request information.
`int`
`hashCode()`
`void`
`setBooleanProperty(String name, Boolean value)`
Sets a `boolean` property by name.
`void`
`setIntProperty(String name, Integer value)`
Sets an `int` property by name.
`void`
`setNonStandardProperty(String propertyMapping)`
Set the property that does not have corresponding setter method.
`void`
`setProperty(String name, String value)`
Sets a property by name.
`void`
`setTransactionParameters(int isolation, TransactionParameterBuffer tpb)`
Set transaction parameters for the specified transaction isolation level.

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.firebirdsql.jaybird.props.AttachmentProperties

`getAuthPlugins, getCharSet, getConnectTimeout, getDbCryptConfig, getEnableProtocol, getEncoding, getParallelWorkers, getPassword, getPortNumber, getProcessId, getProcessName, getRoleName, getServerName, getSocketBufferSize, getSocketFactory, getSoTimeout, getType, getUser, getWireCrypt, isWireCompression, setAuthPlugins, setCharSet, setConnectTimeout, setDbCryptConfig, setEnableProtocol, setEncoding, setParallelWorkers, setPassword, setPortNumber, setProcessId, setProcessName, setRoleName, setServerName, setSocketBufferSize, setSocketFactory, setSoTimeout, setType, setUser, setWireCompression, setWireCrypt`

### Methods inherited from interface org.firebirdsql.jaybird.props.BaseProperties

`getBooleanProperty, getIntProperty, getProperty`

### Methods inherited from interface org.firebirdsql.jaybird.props.DatabaseConnectionProperties

`getBlobBufferSize, getDatabaseName, getDataTypeBind, getDecfloatRound, getDecfloatTraps, getDefaultIsolation, getDefaultTransactionIsolation, getGeneratedKeysEnabled, getPageCacheSize, getReportSQLWarnings, getScrollableCursor, getServerBatchBufferSize, getSessionTimeZone, getSqlDialect, getTpbMapping, isAllowTxStmts, isAsyncFetch, isColumnLabelForName, isCreateDatabaseIfNotExist, isDefaultResultSetHoldable, isExtendedMetadata, isIgnoreProcedureType, isUseCatalogAsPackage, isUseFirebirdAutocommit, isUseServerBatch, isUseStreamBlobs, setAllowTxStmts, setAsyncFetch, setBlobBufferSize, setColumnLabelForName, setCreateDatabaseIfNotExist, setDatabaseName, setDataTypeBind, setDecfloatRound, setDecfloatTraps, setDefaultIsolation, setDefaultResultSetHoldable, setDefaultTransactionIsolation, setExtendedMetadata, setGeneratedKeysEnabled, setIgnoreProcedureType, setPageCacheSize, setReportSQLWarnings, setScrollableCursor, setServerBatchBufferSize, setSessionTimeZone, setSqlDialect, setTpbMapping, setUseCatalogAsPackage, setUseFirebirdAutocommit, setUseServerBatch, setUseStreamBlobs`

### Methods inherited from interface org.firebirdsql.jdbc.FirebirdConnectionProperties

`getUserName, setUserName`

## Constructor Details

### FBConnectionProperties

public FBConnectionProperties()

## Method Details

### getProperty

public String getProperty(String name)
Description copied from interface: `BaseProperties`
Retrieves a string property value by name.

For properties with an explicit default, this method should return the string presentation of that default, not `null`. For `int` or `boolean` the string equivalent is returned.

Specified by:
  `getProperty` in interface `BaseProperties`
Parameters:
  `name` - Property name (not `null` or empty)
Returns:
  Value of the property, or `null` when not set or not a known property

### setProperty

public void setProperty(String name, String value)
Description copied from interface: `BaseProperties`
Sets a property by name.

This method can be used to set all defined properties, but also properties not known by Jaybird. When setting `int` or `boolean` properties, the appropriate conversions are applied. Using `null` will reset to the default value. For `boolean` properties, an empty string is taken to mean `true`.

Specified by:
  `setProperty` in interface `BaseProperties`
Parameters:
  `name` - Property name (not `null` or empty)
  `value` - Property value (use `null` to apply default)

### getIntProperty

public Integer getIntProperty(String name)
Description copied from interface: `BaseProperties`
Retrieves an `int` property value by name.

For properties with an explicit default, this method should return the integer presentation of that default. For implementation simplicity, it is allowed to convert any string property to `int` instead of checking if something is actually an `int` property

Specified by:
  `getIntProperty` in interface `BaseProperties`
Parameters:
  `name` - Property name (not `null` or empty)
Returns:
  Integer with value of the property, or `null` when not set

### setIntProperty

public void setIntProperty(String name, Integer value)
Description copied from interface: `BaseProperties`
Sets an `int` property by name.

For implementation simplicity, it is allowed to also set string properties. The value set will be the string equivalent.

Specified by:
  `setIntProperty` in interface `BaseProperties`
Parameters:
  `name` - Property name (not `null` or empty)
  `value` - Property value (use `null` to apply default)

### getBooleanProperty

public Boolean getBooleanProperty(String name)
Description copied from interface: `BaseProperties`
Retrieves a `boolean` property value by name.

For properties with an explicit default, this method should return the boolean presentation of that default. For implementation simplicity, it is allowed to convert any string property to `boolean` instead of checking if something is actually a `boolean` property

Specified by:
  `getBooleanProperty` in interface `BaseProperties`
Parameters:
  `name` - Property name (not `null` or empty)
Returns:
  Integer with value of the property, or `null` when not set

### setBooleanProperty

public void setBooleanProperty(String name, Boolean value)
Description copied from interface: `BaseProperties`
Sets a `boolean` property by name.

For implementation simplicity, it is allowed to also set string properties. The value set will be the string equivalent.

Specified by:
  `setBooleanProperty` in interface `BaseProperties`
Parameters:
  `name` - Property name (not `null` or empty)
  `value` - Property value (use `null` to apply default)

### connectionPropertyValues

public Map<ConnectionProperty,Object> connectionPropertyValues()
Description copied from interface: `BaseProperties`
An unmodifiable view on the connection properties held by this BaseProperties implementation.

Be aware, implementations can have additional properties that are not mapped from `ConnectionProperty`. Such properties will need to be retrieved in an implementation-specific manner.

Specified by:
  `connectionPropertyValues` in interface `BaseProperties`
Returns:
  An unmodifiable view on the property values held in this properties instance

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

### clone

public Object clone()

Overrides:
  `clone` in class `Object`

### setNonStandardProperty

public void setNonStandardProperty(String propertyMapping)
Description copied from interface: `FirebirdConnectionProperties`
Set the property that does not have corresponding setter method.

Specified by:
  `setNonStandardProperty` in interface `FirebirdConnectionProperties`
Parameters:
  `propertyMapping` - parameter value in the `propertyName[=propertyValue]` form, this allows setting non-standard parameters using configuration files.

### getTransactionParameters

public TransactionParameterBuffer getTransactionParameters(int isolation)
Description copied from interface: `FirebirdConnectionProperties`
Get the transaction parameter buffer corresponding to the current connection request information.

Specified by:
  `getTransactionParameters` in interface `FirebirdConnectionProperties`
Parameters:
  `isolation` - transaction isolation level for which TPB should be returned.
Returns:
  instance of `TransactionParameterBuffer`.

### setTransactionParameters

public void setTransactionParameters(int isolation, TransactionParameterBuffer tpb)
Description copied from interface: `FirebirdConnectionProperties`
Set transaction parameters for the specified transaction isolation level. The specified TPB is used as a default mapping for the specified isolation level.

Specified by:
  `setTransactionParameters` in interface `FirebirdConnectionProperties`
Parameters:
  `isolation` - transaction isolation level.
  `tpb` - instance of `TransactionParameterBuffer` containing transaction parameters.

### getMapper

public FBTpbMapper getMapper() throws SQLException

Throws:
  `SQLException`

### asIConnectionProperties

public IConnectionProperties asIConnectionProperties()

Returns:
  A mutable view of these connection properties as an implementation of `IConnectionProperties`
Since:
  5