org.firebirdsql.ds

## Class FBXADataSource

- java.lang.Object
- - org.firebirdsql.ds.RootCommonDataSource
  - - org.firebirdsql.ds.FBAbstractCommonDataSource
    - - org.firebirdsql.ds.FBXADataSource

All Implemented Interfaces:
  javax.naming.Referenceable, javax.sql.CommonDataSource, javax.sql.XADataSource, FirebirdConnectionProperties

    public class FBXADataSource
    extends FBAbstractCommonDataSource
    implements javax.sql.XADataSource, javax.naming.Referenceable

Bare-bones implementation of `XADataSource`.

Since:
  2.2
Author:
  Mark Rotteveel

### Field Summary

### Fields inherited from class org.firebirdsql.ds.FBAbstractCommonDataSource

`lock, REF_DATABASE_NAME, REF_DESCRIPTION, REF_PORT_NUMBER, REF_PROPERTIES, REF_SERVER_NAME`

### Constructor Summary

Constructors
Constructor and Description
`FBXADataSource()`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `checkNotStarted()` Method to check if this DataSource has not yet started.
`javax.naming.Reference` `getReference()`
`javax.sql.XAConnection` `getXAConnection()`
`javax.sql.XAConnection` `getXAConnection(java.lang.String user, java.lang.String password)`

### Methods inherited from class org.firebirdsql.ds.FBAbstractCommonDataSource

`getAuthPlugins, getBlobBufferSize, getBuffersNumber, getCharSet, getConnectionProperties, getConnectTimeout, getDatabase, getDatabaseName, getDatabaseParameterBuffer, getDataTypeBind, getDbCryptConfig, getDefaultIsolation, getDefaultTransactionIsolation, getDescription, getEncoding, getGeneratedKeysEnabled, getLoginTimeout, getNonStandardProperty, getPassword, getPortNumber, getRoleName, getServerName, getSessionTimeZone, getSocketBufferSize, getSoTimeout, getSqlDialect, getTpbMapping, getTransactionParameters, getType, getUser, getUserName, getWireCrypt, isDefaultResultSetHoldable, isIgnoreProcedureType, isTimestampUsesLocalTimezone, isUseFirebirdAutocommit, isUseStandardUdf, isUseStreamBlobs, isWireCompression, setAuthPlugins, setBlobBufferSize, setBuffersNumber, setCharSet, setConnectionProperties, setConnectTimeout, setDatabase, setDatabase, setDatabaseName, setDataTypeBind, setDbCryptConfig, setDefaultIsolation, setDefaultResultSetHoldable, setDefaultTransactionIsolation, setDescription, setEncoding, setGeneratedKeysEnabled, setIgnoreProcedureType, setLoginTimeout, setNonStandardProperty, setNonStandardProperty, setPassword, setPortNumber, setRoleName, setServerName, setSessionTimeZone, setSocketBufferSize, setSoTimeout, setSqlDialect, setTimestampUsesLocalTimezone, setTpbMapping, setTransactionParameters, setType, setUseFirebirdAutocommit, setUser, setUserName, setUseStandardUdf, setUseStreamBlobs, setWireCompression, setWireCrypt, updateReference`

### Methods inherited from class org.firebirdsql.ds.RootCommonDataSource

`getLogWriter, getParentLogger, setLogWriter`

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface javax.sql.CommonDataSource

`getLoginTimeout, getLogWriter, getParentLogger, setLoginTimeout, setLogWriter`

### Constructor Detail

#### FBXADataSource

    public FBXADataSource()

### Method Detail

#### getXAConnection

    public javax.sql.XAConnection getXAConnection()
                                           throws java.sql.SQLException

Specified by:
  `getXAConnection` in interface `javax.sql.XADataSource`
Throws:
  `java.sql.SQLException`

#### getXAConnection

    public javax.sql.XAConnection getXAConnection(java.lang.String user,
                                                  java.lang.String password)
                                           throws java.sql.SQLException

Specified by:
  `getXAConnection` in interface `javax.sql.XADataSource`
Throws:
  `java.sql.SQLException`

#### checkNotStarted

    protected void checkNotStarted()
                            throws java.lang.IllegalStateException

Description copied from class: `FBAbstractCommonDataSource`
Method to check if this DataSource has not yet started.

Implementations should throw IllegalStateException when the DataSource is already in use and modifying properties is not allowed.

Specified by:
  `checkNotStarted` in class `FBAbstractCommonDataSource`
Throws:
  `java.lang.IllegalStateException` - When the DataSource is already in use

#### getReference

    public javax.naming.Reference getReference()
                                        throws javax.naming.NamingException

Specified by:
  `getReference` in interface `javax.naming.Referenceable`
Throws:
  `javax.naming.NamingException`