nl.topicus.jdbc

## Class CloudSpannerXADataSource

- java.lang.Object
- - nl.topicus.jdbc.metadata.AbstractCloudSpannerWrapper
  - - nl.topicus.jdbc.CloudSpannerDataSource
    - - nl.topicus.jdbc.CloudSpannerXADataSource

All Implemented Interfaces:
  Wrapper, CommonDataSource, DataSource, XADataSource

    public class CloudSpannerXADataSource
    extends CloudSpannerDataSource
    implements XADataSource

Implementation of the XADataSource interface. This implementation is based on the implementation of PostgreSQL. PostgreSQL is released under the PostgreSQL License, a liberal Open Source license, similar to the BSD or MIT licenses. PostgreSQL Database Management System (formerly known as Postgres, then as Postgres95) Portions Copyright (c) 1996-2017, The PostgreSQL Global Development Group Portions Copyright (c) 1994, The Regents of the University of California IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. XA-enabled DataSource implementation.

Author:
  Heikki Linnakangas (heikki.linnakangas@iki.fi), loite

### Constructor Summary

Constructors
Constructor and Description
`CloudSpannerXADataSource()`

### Method Summary

All Methods Instance Methods Concrete Methods
`String` `getDescription()`
`Logger` `getParentLogger()`
`CloudSpannerXAConnection` `getXAConnection()`
`CloudSpannerXAConnection` `getXAConnection(String user, String password)`
`boolean` `isCreateXATable()`
`void` `setCreateXATable(boolean createXATable)`

### Methods inherited from class nl.topicus.jdbc.CloudSpannerDataSource

`getConnection, getConnection, getDatabase, getInstanceId, getLoginTimeout, getLogWriter, getOauthAccessToken, getProjectId, getPvtKeyPath, getSimulateProductName, isAllowExtendedMode, setAllowExtendedMode, setDatabase, setInstanceId, setLoginTimeout, setLogWriter, setOauthAccessToken, setProjectId, setPvtKeyPath, setSimulateProductName`

### Methods inherited from class nl.topicus.jdbc.metadata.AbstractCloudSpannerWrapper

`extractColumnType, getClassName, getClassName, getGoogleTypeName, isWrapperFor, unwrap`

### 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, setLoginTimeout, setLogWriter`

### Methods inherited from interface java.sql.Wrapper

`isWrapperFor, unwrap`

### Constructor Detail

#### CloudSpannerXADataSource

    public CloudSpannerXADataSource()

### Method Detail

#### getXAConnection

    public CloudSpannerXAConnection getXAConnection()
                                             throws SQLException

Specified by:
  `getXAConnection` in interface `XADataSource`
Throws:
  `SQLException`

#### getXAConnection

    public CloudSpannerXAConnection getXAConnection(String user,
                                                    String password)
                                             throws SQLException

Specified by:
  `getXAConnection` in interface `XADataSource`
Throws:
  `SQLException`

#### getDescription

    public String getDescription()

#### getParentLogger

    public Logger getParentLogger()
                           throws SQLFeatureNotSupportedException

Specified by:
  `getParentLogger` in interface `CommonDataSource`
Overrides:
  `getParentLogger` in class `CloudSpannerDataSource`
Throws:
  `SQLFeatureNotSupportedException`

#### isCreateXATable

    public boolean isCreateXATable()

#### setCreateXATable

    public void setCreateXATable(boolean createXATable)