org.wildfly.swarm.config.datasources

## Class XADataSource<T extends XADataSource<T>>

- java.lang.Object
- - java.util.AbstractMap<K,V>
  - - java.util.HashMap
    - - org.wildfly.swarm.config.datasources.XADataSource<T>

- All Implemented Interfaces:
    Serializable, Cloneable, Map

      public class XADataSource<T extends XADataSource<T>>
      extends HashMap

  A JDBC XA data-source configuration
  See Also:
    Serialized Form

- - ### Property Summary

    All Methods Instance Methods Concrete Methods
    Type | Property and Description
    --- | ---
    `Map` | `connectionListener` Properties to be injected in class specified in connection-listener-class
    `String` | `url` Specifies the property for the URL property in the xa-datasource-property values

  - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `XADataSource.XADataSourceResources` Child mutators for XADataSource

    - ### Nested classes/interfaces inherited from class java.util.AbstractMap

      `AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>`

    - ### Nested classes/interfaces inherited from interface java.util.Map

      `Map.Entry<K,V>`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XADataSource(String key)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addPropertyChangeListener(PropertyChangeListener listener)` Adds a property change listener
    `Integer` | `allocationRetry()` The allocation retry element indicates the number of times that allocating a connection should be tried before throwing an exception
    `T` | `allocationRetry(Integer value)` The allocation retry element indicates the number of times that allocating a connection should be tried before throwing an exception
    `Long` | `allocationRetryWaitMillis()` The allocation retry wait millis element specifies the amount of time, in milliseconds, to wait between retrying to allocate a connection
    `T` | `allocationRetryWaitMillis(Long value)` The allocation retry wait millis element specifies the amount of time, in milliseconds, to wait between retrying to allocate a connection
    `Boolean` | `allowMultipleUsers()` Specifies if multiple users will access the datasource through the getConnection(user, password) method and hence if the internal pool type should account for that
    `T` | `allowMultipleUsers(Boolean value)` Specifies if multiple users will access the datasource through the getConnection(user, password) method and hence if the internal pool type should account for that
    `Boolean` | `backgroundValidation()` An element to specify that connections should be validated on a background thread versus being validated prior to use.
    `T` | `backgroundValidation(Boolean value)` An element to specify that connections should be validated on a background thread versus being validated prior to use.
    `Long` | `backgroundValidationMillis()` The background-validation-millis element specifies the amount of time, in milliseconds, that background validation will run.
    `T` | `backgroundValidationMillis(Long value)` The background-validation-millis element specifies the amount of time, in milliseconds, that background validation will run.
    `Long` | `blockingTimeoutWaitMillis()` The blocking-timeout-millis element specifies the maximum time, in milliseconds, to block while waiting for a connection before throwing an exception.
    `T` | `blockingTimeoutWaitMillis(Long value)` The blocking-timeout-millis element specifies the maximum time, in milliseconds, to block while waiting for a connection before throwing an exception.
    `String` | `capacityDecrementerClass()` Class defining the policy for decrementing connections in the pool
    `T` | `capacityDecrementerClass(String value)` Class defining the policy for decrementing connections in the pool
    `Map` | `capacityDecrementerProperties()` Properties to inject in class defining the policy for decrementing connections in the pool
    `T` | `capacityDecrementerProperties(Map value)` Properties to inject in class defining the policy for decrementing connections in the pool
    `T` | `capacityDecrementerProperty(String key, Object value)` Properties to inject in class defining the policy for decrementing connections in the pool
    `String` | `capacityIncrementerClass()` Class defining the policy for incrementing connections in the pool
    `T` | `capacityIncrementerClass(String value)` Class defining the policy for incrementing connections in the pool
    `Map` | `capacityIncrementerProperties()` Properties to inject in class defining the policy for incrementing connections in the pool
    `T` | `capacityIncrementerProperties(Map value)` Properties to inject in class defining the policy for incrementing connections in the pool
    `T` | `capacityIncrementerProperty(String key, Object value)` Properties to inject in class defining the policy for incrementing connections in the pool
    `String` | `checkValidConnectionSql()` Specify an SQL statement to check validity of a pool connection.
    `T` | `checkValidConnectionSql(String value)` Specify an SQL statement to check validity of a pool connection.
    `Boolean` | `connectable()` Enable the use of CMR for this datasource.
    `T` | `connectable(Boolean value)` Enable the use of CMR for this datasource.
    `String` | `connectionListenerClass()` Speciefies class name extending org.jboss.jca.adapters.jdbc.spi.listener.ConnectionListener that provides a possible to listen for connection activation and passivation in order to perform actions before the connection is returned to the application or returned to the pool.
    `T` | `connectionListenerClass(String value)` Speciefies class name extending org.jboss.jca.adapters.jdbc.spi.listener.ConnectionListener that provides a possible to listen for connection activation and passivation in order to perform actions before the connection is returned to the application or returned to the pool.
    `Map` | `connectionListenerProperty()` Properties to be injected in class specified in connection-listener-class
    `T` | `connectionListenerProperty(Map value)` Properties to be injected in class specified in connection-listener-class
    `T` | `connectionListenerProperty(String key, Object value)` Properties to be injected in class specified in connection-listener-class
    `String` | `driverName()` Defines the JDBC driver the datasource should use.
    `T` | `driverName(String value)` Defines the JDBC driver the datasource should use.
    `Boolean` | `enlistmentTrace()` Defines if WildFly/IronJacamar should record enlistment traces
    `T` | `enlistmentTrace(Boolean value)` Defines if WildFly/IronJacamar should record enlistment traces
    `String` | `exceptionSorterClassName()` An org.jboss.jca.adapters.jdbc.ExceptionSorter that provides an isExceptionFatal(SQLException) method to validate if an exception should broadcast an error
    `T` | `exceptionSorterClassName(String value)` An org.jboss.jca.adapters.jdbc.ExceptionSorter that provides an isExceptionFatal(SQLException) method to validate if an exception should broadcast an error
    `Map` | `exceptionSorterProperties()` The exception sorter properties
    `T` | `exceptionSorterProperties(Map value)` The exception sorter properties
    `T` | `exceptionSorterProperty(String key, Object value)` The exception sorter properties
    `FlushStrategy` | `flushStrategy()` Specifies how the pool should be flush in case of an error.
    `T` | `flushStrategy(FlushStrategy value)` Specifies how the pool should be flush in case of an error.
    `String` | `getKey()`
    `Long` | `idleTimeoutMinutes()` The idle-timeout-minutes elements specifies the maximum time, in minutes, a connection may be idle before being closed.
    `T` | `idleTimeoutMinutes(Long value)` The idle-timeout-minutes elements specifies the maximum time, in minutes, a connection may be idle before being closed.
    `Integer` | `initialPoolSize()` The initial-pool-size element indicates the initial number of connections a pool should hold.
    `T` | `initialPoolSize(Integer value)` The initial-pool-size element indicates the initial number of connections a pool should hold.
    `Boolean` | `interleaving()` An element to enable interleaving for XA connections
    `T` | `interleaving(Boolean value)` An element to enable interleaving for XA connections
    `String` | `jndiName()` Specifies the JNDI name for the datasource
    `T` | `jndiName(String value)` Specifies the JNDI name for the datasource
    `Integer` | `maxPoolSize()` The max-pool-size element specifies the maximum number of connections for a pool.
    `T` | `maxPoolSize(Integer value)` The max-pool-size element specifies the maximum number of connections for a pool.
    `String` | `mcp()` Defines the ManagedConnectionPool implementation, f.ex.
    `T` | `mcp(String value)` Defines the ManagedConnectionPool implementation, f.ex.
    `Integer` | `minPoolSize()` The min-pool-size element specifies the minimum number of connections for a pool
    `T` | `minPoolSize(Integer value)` The min-pool-size element specifies the minimum number of connections for a pool
    `String` | `newConnectionSql()` Specifies an SQL statement to execute whenever a connection is added to the connection pool
    `T` | `newConnectionSql(String value)` Specifies an SQL statement to execute whenever a connection is added to the connection pool
    `Boolean` | `noRecovery()` Specifies if the connection pool should be excluded from recovery
    `T` | `noRecovery(Boolean value)` Specifies if the connection pool should be excluded from recovery
    `Boolean` | `noTxSeparatePool()` Oracle does not like XA connections getting used both inside and outside a JTA transaction.
    `T` | `noTxSeparatePool(Boolean value)` Oracle does not like XA connections getting used both inside and outside a JTA transaction.
    `Boolean` | `padXid()` Should the Xid be padded
    `T` | `padXid(Boolean value)` Should the Xid be padded
    `String` | `password()` Specifies the password used when creating a new connection
    `T` | `password(String value)` Specifies the password used when creating a new connection
    `Boolean` | `poolFair()` Defines if pool should use be fair
    `T` | `poolFair(Boolean value)` Defines if pool should use be fair
    `Boolean` | `poolPrefill()` Should the pool be prefilled.
    `T` | `poolPrefill(Boolean value)` Should the pool be prefilled.
    `Boolean` | `poolUseStrictMin()` Specifies if the min-pool-size should be considered strictly
    `T` | `poolUseStrictMin(Boolean value)` Specifies if the min-pool-size should be considered strictly
    `Long` | `preparedStatementsCacheSize()` The number of prepared statements per connection in an LRU cache
    `T` | `preparedStatementsCacheSize(Long value)` The number of prepared statements per connection in an LRU cache
    `Long` | `queryTimeout()` Any configured query timeout in seconds.
    `T` | `queryTimeout(Long value)` Any configured query timeout in seconds.
    `String` | `reauthPluginClassName()` The fully qualified class name of the reauthentication plugin implementation
    `T` | `reauthPluginClassName(String value)` The fully qualified class name of the reauthentication plugin implementation
    `Map` | `reauthPluginProperties()` The properties for the reauthentication plugin
    `T` | `reauthPluginProperties(Map value)` The properties for the reauthentication plugin
    `T` | `reauthPluginProperty(String key, Object value)` The properties for the reauthentication plugin
    `String` | `recoveryPassword()` The password used for recovery
    `T` | `recoveryPassword(String value)` The password used for recovery
    `String` | `recoveryPluginClassName()` The fully qualified class name of the recovery plugin implementation
    `T` | `recoveryPluginClassName(String value)` The fully qualified class name of the recovery plugin implementation
    `Map` | `recoveryPluginProperties()` The properties for the recovery plugin
    `T` | `recoveryPluginProperties(Map value)` The properties for the recovery plugin
    `T` | `recoveryPluginProperty(String key, Object value)` The properties for the recovery plugin
    `String` | `recoverySecurityDomain()` The security domain used for recovery
    `T` | `recoverySecurityDomain(String value)` The security domain used for recovery
    `String` | `recoveryUsername()` The user name used for recovery
    `T` | `recoveryUsername(String value)` The user name used for recovery
    `void` | `removePropertyChangeListener(PropertyChangeListener listener)` Removes a property change listener
    `Boolean` | `sameRmOverride()` The is-same-rm-override element allows one to unconditionally set whether the javax.transaction.xa.XAResource.isSameRM(XAResource) returns true or false
    `T` | `sameRmOverride(Boolean value)` The is-same-rm-override element allows one to unconditionally set whether the javax.transaction.xa.XAResource.isSameRM(XAResource) returns true or false
    `String` | `securityDomain()` Specifies the security domain which defines the javax.security.auth.Subject that are used to distinguish connections in the pool
    `T` | `securityDomain(String value)` Specifies the security domain which defines the javax.security.auth.Subject that are used to distinguish connections in the pool
    `Boolean` | `setTxQueryTimeout()` Whether to set the query timeout based on the time remaining until transaction timeout.
    `T` | `setTxQueryTimeout(Boolean value)` Whether to set the query timeout based on the time remaining until transaction timeout.
    `Boolean` | `sharePreparedStatements()` Whether to share prepared statements, i.e.
    `T` | `sharePreparedStatements(Boolean value)` Whether to share prepared statements, i.e.
    `Boolean` | `spy()` Enable spying of SQL statements
    `T` | `spy(Boolean value)` Enable spying of SQL statements
    `String` | `staleConnectionCheckerClassName()` An org.jboss.jca.adapters.jdbc.StaleConnectionChecker that provides an isStaleConnection(SQLException) method which if it returns true will wrap the exception in an org.jboss.jca.adapters.jdbc.StaleConnectionException
    `T` | `staleConnectionCheckerClassName(String value)` An org.jboss.jca.adapters.jdbc.StaleConnectionChecker that provides an isStaleConnection(SQLException) method which if it returns true will wrap the exception in an org.jboss.jca.adapters.jdbc.StaleConnectionException
    `Map` | `staleConnectionCheckerProperties()` The stale connection checker properties
    `T` | `staleConnectionCheckerProperties(Map value)` The stale connection checker properties
    `T` | `staleConnectionCheckerProperty(String key, Object value)` The stale connection checker properties
    `Boolean` | `statisticsEnabled()` Define whether runtime statistics are enabled or not.
    `T` | `statisticsEnabled(Boolean value)` Define whether runtime statistics are enabled or not.
    `XADataSource.XADataSourceResources` | `subresources()`
    `Boolean` | `tracking()` Defines if IronJacamar should track connection handles across transaction boundaries
    `T` | `tracking(Boolean value)` Defines if IronJacamar should track connection handles across transaction boundaries
    `String` | `trackStatements()` Whether to check for unclosed statements when a connection is returned to the pool, result sets are closed, a statement is closed or return to the prepared statement cache.
    `T` | `trackStatements(String value)` Whether to check for unclosed statements when a connection is returned to the pool, result sets are closed, a statement is closed or return to the prepared statement cache.
    `String` | `transactionIsolation()` Set the java.sql.Connection transaction isolation level.
    `T` | `transactionIsolation(String value)` Set the java.sql.Connection transaction isolation level.
    `String` | `urlDelimiter()` Specifies the delimiter for URLs in connection-url for HA datasources
    `T` | `urlDelimiter(String value)` Specifies the delimiter for URLs in connection-url for HA datasources
    `String` | `urlProperty()` Specifies the property for the URL property in the xa-datasource-property values
    `T` | `urlProperty(String value)` Specifies the property for the URL property in the xa-datasource-property values
    `String` | `urlSelectorStrategyClassName()` A class that implements org.jboss.jca.adapters.jdbc.URLSelectorStrategy
    `T` | `urlSelectorStrategyClassName(String value)` A class that implements org.jboss.jca.adapters.jdbc.URLSelectorStrategy
    `Boolean` | `useCcm()` Enable the use of a cached connection manager
    `T` | `useCcm(Boolean value)` Enable the use of a cached connection manager
    `Boolean` | `useFastFail()` Whether to fail a connection allocation on the first try if it is invalid (true) or keep trying until the pool is exhausted of all potential connections (false)
    `T` | `useFastFail(Boolean value)` Whether to fail a connection allocation on the first try if it is invalid (true) or keep trying until the pool is exhausted of all potential connections (false)
    `Boolean` | `useJavaContext()` Setting this to false will bind the datasource into global JNDI
    `T` | `useJavaContext(Boolean value)` Setting this to false will bind the datasource into global JNDI
    `String` | `userName()` Specify the user name used when creating a new connection
    `T` | `userName(String value)` Specify the user name used when creating a new connection
    `Long` | `useTryLock()` Any configured timeout for internal locks on the resource adapter objects in seconds
    `T` | `useTryLock(Long value)` Any configured timeout for internal locks on the resource adapter objects in seconds
    `Boolean` | `validateOnMatch()` The validate-on-match element specifies if connection validation should be done when a connection factory attempts to match a managed connection.
    `T` | `validateOnMatch(Boolean value)` The validate-on-match element specifies if connection validation should be done when a connection factory attempts to match a managed connection.
    `String` | `validConnectionCheckerClassName()` An org.jboss.jca.adapters.jdbc.ValidConnectionChecker that provides an isValidConnection(Connection) method to validate a connection.
    `T` | `validConnectionCheckerClassName(String value)` An org.jboss.jca.adapters.jdbc.ValidConnectionChecker that provides an isValidConnection(Connection) method to validate a connection.
    `Map` | `validConnectionCheckerProperties()` The valid connection checker properties
    `T` | `validConnectionCheckerProperties(Map value)` The valid connection checker properties
    `T` | `validConnectionCheckerProperty(String key, Object value)` The valid connection checker properties
    `Boolean` | `wrapXaResource()` Should the XAResource instances be wrapped in an org.jboss.tm.XAResourceWrapper instance
    `T` | `wrapXaResource(Boolean value)` Should the XAResource instances be wrapped in an org.jboss.tm.XAResourceWrapper instance
    `String` | `xaDatasourceClass()` The fully qualified name of the javax.sql.XADataSource implementation
    `T` | `xaDatasourceClass(String value)` The fully qualified name of the javax.sql.XADataSource implementation
    `T` | `xaDatasourceProperties(List<XADatasourceProperties> value)` Add all XADatasourceProperties objects to this subresource
    `T` | `xaDatasourceProperties(String childKey)` Create and configure a XADatasourceProperties object to the list of subresources
    `T` | `xaDatasourceProperties(String childKey, XADatasourcePropertiesConsumer consumer)` Create and configure a XADatasourceProperties object to the list of subresources
    `T` | `xaDatasourceProperties(XADatasourceProperties value)` Add the XADatasourceProperties object to the list of subresources
    `T` | `xaDatasourceProperties(XADatasourcePropertiesSupplier supplier)` Install a supplied XADatasourceProperties object to the list of subresources
    `Integer` | `xaResourceTimeout()` The value is passed to XAResource.setTransactionTimeout(), in seconds.
    `T` | `xaResourceTimeout(Integer value)` The value is passed to XAResource.setTransactionTimeout(), in seconds.

    - ### Methods inherited from class java.util.HashMap

      `clear, clone, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, forEach, get, getOrDefault, isEmpty, keySet, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values`

    - ### Methods inherited from class java.util.AbstractMap

      `equals, hashCode, toString`

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

      `getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.util.Map

      `equals, hashCode`

- - ### Property Detail

    - #### connectionListener

          public Map connectionListenerProperty

      Properties to be injected in class specified in connection-listener-class

    - #### url

          public String urlProperty

      Specifies the property for the URL property in the xa-datasource-property values

  - ### Constructor Detail

    - #### XADataSource

          public XADataSource(String key)

  - ### Method Detail

    - #### getKey

          public String getKey()

    - #### addPropertyChangeListener

          public void addPropertyChangeListener(PropertyChangeListener listener)

      Adds a property change listener

    - #### removePropertyChangeListener

          public void removePropertyChangeListener(PropertyChangeListener listener)

      Removes a property change listener

    - #### subresources

          public XADataSource.XADataSourceResources subresources()

    - #### xaDatasourceProperties

          public T xaDatasourceProperties(List<XADatasourceProperties> value)

      Add all XADatasourceProperties objects to this subresource
      Parameters:
        `value` - List of XADatasourceProperties objects.
      Returns:
        this

    - #### xaDatasourceProperties

          public T xaDatasourceProperties(XADatasourceProperties value)

      Add the XADatasourceProperties object to the list of subresources
      Parameters:
        `value` - The XADatasourceProperties to add
      Returns:
        this

    - #### xaDatasourceProperties

          public T xaDatasourceProperties(String childKey,
                                          XADatasourcePropertiesConsumer consumer)

      Create and configure a XADatasourceProperties object to the list of subresources
      Parameters:
        `key` - The key for the XADatasourceProperties resource
        `config` - The XADatasourcePropertiesConsumer to use
      Returns:
        this

    - #### xaDatasourceProperties

          public T xaDatasourceProperties(String childKey)

      Create and configure a XADatasourceProperties object to the list of subresources
      Parameters:
        `key` - The key for the XADatasourceProperties resource
      Returns:
        this

    - #### xaDatasourceProperties

          public T xaDatasourceProperties(XADatasourcePropertiesSupplier supplier)

      Install a supplied XADatasourceProperties object to the list of subresources

    - #### allocationRetry

          public Integer allocationRetry()

      The allocation retry element indicates the number of times that allocating a connection should be tried before throwing an exception

    - #### allocationRetry

          public T allocationRetry(Integer value)

      The allocation retry element indicates the number of times that allocating a connection should be tried before throwing an exception

    - #### allocationRetryWaitMillis

          public Long allocationRetryWaitMillis()

      The allocation retry wait millis element specifies the amount of time, in milliseconds, to wait between retrying to allocate a connection

    - #### allocationRetryWaitMillis

          public T allocationRetryWaitMillis(Long value)

      The allocation retry wait millis element specifies the amount of time, in milliseconds, to wait between retrying to allocate a connection

    - #### allowMultipleUsers

          public Boolean allowMultipleUsers()

      Specifies if multiple users will access the datasource through the getConnection(user, password) method and hence if the internal pool type should account for that

    - #### allowMultipleUsers

          public T allowMultipleUsers(Boolean value)

      Specifies if multiple users will access the datasource through the getConnection(user, password) method and hence if the internal pool type should account for that

    - #### backgroundValidation

          public Boolean backgroundValidation()

      An element to specify that connections should be validated on a background thread versus being validated prior to use. Changing this value can be done only on disabled datasource, requires a server restart otherwise.

    - #### backgroundValidation

          public T backgroundValidation(Boolean value)

      An element to specify that connections should be validated on a background thread versus being validated prior to use. Changing this value can be done only on disabled datasource, requires a server restart otherwise.

    - #### backgroundValidationMillis

          public Long backgroundValidationMillis()

      The background-validation-millis element specifies the amount of time, in milliseconds, that background validation will run. Changing this value can be done only on disabled datasource, requires a server restart otherwise

    - #### backgroundValidationMillis

          public T backgroundValidationMillis(Long value)

      The background-validation-millis element specifies the amount of time, in milliseconds, that background validation will run. Changing this value can be done only on disabled datasource, requires a server restart otherwise

    - #### blockingTimeoutWaitMillis

          public Long blockingTimeoutWaitMillis()

      The blocking-timeout-millis element specifies the maximum time, in milliseconds, to block while waiting for a connection before throwing an exception. Note that this blocks only while waiting for locking a connection, and will never throw an exception if creating a new connection takes an inordinately long time

    - #### blockingTimeoutWaitMillis

          public T blockingTimeoutWaitMillis(Long value)

      The blocking-timeout-millis element specifies the maximum time, in milliseconds, to block while waiting for a connection before throwing an exception. Note that this blocks only while waiting for locking a connection, and will never throw an exception if creating a new connection takes an inordinately long time

    - #### capacityDecrementerClass

          public String capacityDecrementerClass()

      Class defining the policy for decrementing connections in the pool

    - #### capacityDecrementerClass

          public T capacityDecrementerClass(String value)

      Class defining the policy for decrementing connections in the pool

    - #### capacityDecrementerProperties

          public Map capacityDecrementerProperties()

      Properties to inject in class defining the policy for decrementing connections in the pool

    - #### capacityDecrementerProperties

          public T capacityDecrementerProperties(Map value)

      Properties to inject in class defining the policy for decrementing connections in the pool

    - #### capacityDecrementerProperty

          public T capacityDecrementerProperty(String key,
                                               Object value)

      Properties to inject in class defining the policy for decrementing connections in the pool

    - #### capacityIncrementerClass

          public String capacityIncrementerClass()

      Class defining the policy for incrementing connections in the pool

    - #### capacityIncrementerClass

          public T capacityIncrementerClass(String value)

      Class defining the policy for incrementing connections in the pool

    - #### capacityIncrementerProperties

          public Map capacityIncrementerProperties()

      Properties to inject in class defining the policy for incrementing connections in the pool

    - #### capacityIncrementerProperties

          public T capacityIncrementerProperties(Map value)

      Properties to inject in class defining the policy for incrementing connections in the pool

    - #### capacityIncrementerProperty

          public T capacityIncrementerProperty(String key,
                                               Object value)

      Properties to inject in class defining the policy for incrementing connections in the pool

    - #### checkValidConnectionSql

          public String checkValidConnectionSql()

      Specify an SQL statement to check validity of a pool connection. This may be called when managed connection is obtained from the pool

    - #### checkValidConnectionSql

          public T checkValidConnectionSql(String value)

      Specify an SQL statement to check validity of a pool connection. This may be called when managed connection is obtained from the pool

    - #### connectable

          public Boolean connectable()

      Enable the use of CMR for this datasource. This feature means that a local resource can reliably participate in an XA transaction.

    - #### connectable

          public T connectable(Boolean value)

      Enable the use of CMR for this datasource. This feature means that a local resource can reliably participate in an XA transaction.

    - #### connectionListenerClass

          public String connectionListenerClass()

      Speciefies class name extending org.jboss.jca.adapters.jdbc.spi.listener.ConnectionListener that provides a possible to listen for connection activation and passivation in order to perform actions before the connection is returned to the application or returned to the pool.

    - #### connectionListenerClass

          public T connectionListenerClass(String value)

      Speciefies class name extending org.jboss.jca.adapters.jdbc.spi.listener.ConnectionListener that provides a possible to listen for connection activation and passivation in order to perform actions before the connection is returned to the application or returned to the pool.

    - #### connectionListenerProperty

          public Map connectionListenerProperty()

      Properties to be injected in class specified in connection-listener-class

    - #### connectionListenerProperty

          public T connectionListenerProperty(Map value)

      Properties to be injected in class specified in connection-listener-class

    - #### connectionListenerProperty

          public T connectionListenerProperty(String key,
                                              Object value)

      Properties to be injected in class specified in connection-listener-class

    - #### driverName

          public String driverName()

      Defines the JDBC driver the datasource should use. It is a symbolic name matching the the name of installed driver. In case the driver is deployed as jar, the name is the name of deployment unit

    - #### driverName

          public T driverName(String value)

      Defines the JDBC driver the datasource should use. It is a symbolic name matching the the name of installed driver. In case the driver is deployed as jar, the name is the name of deployment unit

    - #### enlistmentTrace

          public Boolean enlistmentTrace()

      Defines if WildFly/IronJacamar should record enlistment traces

    - #### enlistmentTrace

          public T enlistmentTrace(Boolean value)

      Defines if WildFly/IronJacamar should record enlistment traces

    - #### exceptionSorterClassName

          public String exceptionSorterClassName()

      An org.jboss.jca.adapters.jdbc.ExceptionSorter that provides an isExceptionFatal(SQLException) method to validate if an exception should broadcast an error

    - #### exceptionSorterClassName

          public T exceptionSorterClassName(String value)

      An org.jboss.jca.adapters.jdbc.ExceptionSorter that provides an isExceptionFatal(SQLException) method to validate if an exception should broadcast an error

    - #### exceptionSorterProperties

          public Map exceptionSorterProperties()

      The exception sorter properties

    - #### exceptionSorterProperties

          public T exceptionSorterProperties(Map value)

      The exception sorter properties

    - #### exceptionSorterProperty

          public T exceptionSorterProperty(String key,
                                           Object value)

      The exception sorter properties

    - #### flushStrategy

          public FlushStrategy flushStrategy()

      Specifies how the pool should be flush in case of an error. Valid values are: FailingConnectionOnly (default), IdleConnections and EntirePool

    - #### flushStrategy

          public T flushStrategy(FlushStrategy value)

      Specifies how the pool should be flush in case of an error. Valid values are: FailingConnectionOnly (default), IdleConnections and EntirePool

    - #### idleTimeoutMinutes

          public Long idleTimeoutMinutes()

      The idle-timeout-minutes elements specifies the maximum time, in minutes, a connection may be idle before being closed. The actual maximum time depends also on the IdleRemover scan time, which is half of the smallest idle-timeout-minutes value of any pool. Changing this value can be done only on disabled datasource, requires a server restart otherwise.

    - #### idleTimeoutMinutes

          public T idleTimeoutMinutes(Long value)

      The idle-timeout-minutes elements specifies the maximum time, in minutes, a connection may be idle before being closed. The actual maximum time depends also on the IdleRemover scan time, which is half of the smallest idle-timeout-minutes value of any pool. Changing this value can be done only on disabled datasource, requires a server restart otherwise.

    - #### initialPoolSize

          public Integer initialPoolSize()

      The initial-pool-size element indicates the initial number of connections a pool should hold.

    - #### initialPoolSize

          public T initialPoolSize(Integer value)

      The initial-pool-size element indicates the initial number of connections a pool should hold.

    - #### interleaving

          public Boolean interleaving()

      An element to enable interleaving for XA connections

    - #### interleaving

          public T interleaving(Boolean value)

      An element to enable interleaving for XA connections

    - #### jndiName

          public String jndiName()

      Specifies the JNDI name for the datasource

    - #### jndiName

          public T jndiName(String value)

      Specifies the JNDI name for the datasource

    - #### maxPoolSize

          public Integer maxPoolSize()

      The max-pool-size element specifies the maximum number of connections for a pool. No more connections will be created in each sub-pool

    - #### maxPoolSize

          public T maxPoolSize(Integer value)

      The max-pool-size element specifies the maximum number of connections for a pool. No more connections will be created in each sub-pool

    - #### mcp

          public String mcp()

      Defines the ManagedConnectionPool implementation, f.ex. org.jboss.jca.core .connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool

    - #### mcp

          public T mcp(String value)

      Defines the ManagedConnectionPool implementation, f.ex. org.jboss.jca.core .connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool

    - #### minPoolSize

          public Integer minPoolSize()

      The min-pool-size element specifies the minimum number of connections for a pool

    - #### minPoolSize

          public T minPoolSize(Integer value)

      The min-pool-size element specifies the minimum number of connections for a pool

    - #### newConnectionSql

          public String newConnectionSql()

      Specifies an SQL statement to execute whenever a connection is added to the connection pool

    - #### newConnectionSql

          public T newConnectionSql(String value)

      Specifies an SQL statement to execute whenever a connection is added to the connection pool

    - #### noRecovery

          public Boolean noRecovery()

      Specifies if the connection pool should be excluded from recovery

    - #### noRecovery

          public T noRecovery(Boolean value)

      Specifies if the connection pool should be excluded from recovery

    - #### noTxSeparatePool

          public Boolean noTxSeparatePool()

      Oracle does not like XA connections getting used both inside and outside a JTA transaction. To workaround the problem you can create separate sub-pools for the different contexts

    - #### noTxSeparatePool

          public T noTxSeparatePool(Boolean value)

      Oracle does not like XA connections getting used both inside and outside a JTA transaction. To workaround the problem you can create separate sub-pools for the different contexts

    - #### padXid

          public Boolean padXid()

      Should the Xid be padded

    - #### padXid

          public T padXid(Boolean value)

      Should the Xid be padded

    - #### password

          public String password()

      Specifies the password used when creating a new connection

    - #### password

          public T password(String value)

      Specifies the password used when creating a new connection

    - #### poolFair

          public Boolean poolFair()

      Defines if pool should use be fair

    - #### poolFair

          public T poolFair(Boolean value)

      Defines if pool should use be fair

    - #### poolPrefill

          public Boolean poolPrefill()

      Should the pool be prefilled. Changing this value can be done only on disabled datasource, requires a server restart otherwise.

    - #### poolPrefill

          public T poolPrefill(Boolean value)

      Should the pool be prefilled. Changing this value can be done only on disabled datasource, requires a server restart otherwise.

    - #### poolUseStrictMin

          public Boolean poolUseStrictMin()

      Specifies if the min-pool-size should be considered strictly

    - #### poolUseStrictMin

          public T poolUseStrictMin(Boolean value)

      Specifies if the min-pool-size should be considered strictly

    - #### preparedStatementsCacheSize

          public Long preparedStatementsCacheSize()

      The number of prepared statements per connection in an LRU cache

    - #### preparedStatementsCacheSize

          public T preparedStatementsCacheSize(Long value)

      The number of prepared statements per connection in an LRU cache

    - #### queryTimeout

          public Long queryTimeout()

      Any configured query timeout in seconds. If not provided no timeout will be set

    - #### queryTimeout

          public T queryTimeout(Long value)

      Any configured query timeout in seconds. If not provided no timeout will be set

    - #### reauthPluginClassName

          public String reauthPluginClassName()

      The fully qualified class name of the reauthentication plugin implementation

    - #### reauthPluginClassName

          public T reauthPluginClassName(String value)

      The fully qualified class name of the reauthentication plugin implementation

    - #### reauthPluginProperties

          public Map reauthPluginProperties()

      The properties for the reauthentication plugin

    - #### reauthPluginProperties

          public T reauthPluginProperties(Map value)

      The properties for the reauthentication plugin

    - #### reauthPluginProperty

          public T reauthPluginProperty(String key,
                                        Object value)

      The properties for the reauthentication plugin

    - #### recoveryPassword

          public String recoveryPassword()

      The password used for recovery

    - #### recoveryPassword

          public T recoveryPassword(String value)

      The password used for recovery

    - #### recoveryPluginClassName

          public String recoveryPluginClassName()

      The fully qualified class name of the recovery plugin implementation

    - #### recoveryPluginClassName

          public T recoveryPluginClassName(String value)

      The fully qualified class name of the recovery plugin implementation

    - #### recoveryPluginProperties

          public Map recoveryPluginProperties()

      The properties for the recovery plugin

    - #### recoveryPluginProperties

          public T recoveryPluginProperties(Map value)

      The properties for the recovery plugin

    - #### recoveryPluginProperty

          public T recoveryPluginProperty(String key,
                                          Object value)

      The properties for the recovery plugin

    - #### recoverySecurityDomain

          public String recoverySecurityDomain()

      The security domain used for recovery

    - #### recoverySecurityDomain

          public T recoverySecurityDomain(String value)

      The security domain used for recovery

    - #### recoveryUsername

          public String recoveryUsername()

      The user name used for recovery

    - #### recoveryUsername

          public T recoveryUsername(String value)

      The user name used for recovery

    - #### sameRmOverride

          public Boolean sameRmOverride()

      The is-same-rm-override element allows one to unconditionally set whether the javax.transaction.xa.XAResource.isSameRM(XAResource) returns true or false

    - #### sameRmOverride

          public T sameRmOverride(Boolean value)

      The is-same-rm-override element allows one to unconditionally set whether the javax.transaction.xa.XAResource.isSameRM(XAResource) returns true or false

    - #### securityDomain

          public String securityDomain()

      Specifies the security domain which defines the javax.security.auth.Subject that are used to distinguish connections in the pool

    - #### securityDomain

          public T securityDomain(String value)

      Specifies the security domain which defines the javax.security.auth.Subject that are used to distinguish connections in the pool

    - #### setTxQueryTimeout

          public Boolean setTxQueryTimeout()

      Whether to set the query timeout based on the time remaining until transaction timeout. Any configured query timeout will be used if there is no transaction

    - #### setTxQueryTimeout

          public T setTxQueryTimeout(Boolean value)

      Whether to set the query timeout based on the time remaining until transaction timeout. Any configured query timeout will be used if there is no transaction

    - #### sharePreparedStatements

          public Boolean sharePreparedStatements()

      Whether to share prepared statements, i.e. whether asking for same statement twice without closing uses the same underlying prepared statement

    - #### sharePreparedStatements

          public T sharePreparedStatements(Boolean value)

      Whether to share prepared statements, i.e. whether asking for same statement twice without closing uses the same underlying prepared statement

    - #### spy

          public Boolean spy()

      Enable spying of SQL statements

    - #### spy

          public T spy(Boolean value)

      Enable spying of SQL statements

    - #### staleConnectionCheckerClassName

          public String staleConnectionCheckerClassName()

      An org.jboss.jca.adapters.jdbc.StaleConnectionChecker that provides an isStaleConnection(SQLException) method which if it returns true will wrap the exception in an org.jboss.jca.adapters.jdbc.StaleConnectionException

    - #### staleConnectionCheckerClassName

          public T staleConnectionCheckerClassName(String value)

      An org.jboss.jca.adapters.jdbc.StaleConnectionChecker that provides an isStaleConnection(SQLException) method which if it returns true will wrap the exception in an org.jboss.jca.adapters.jdbc.StaleConnectionException

    - #### staleConnectionCheckerProperties

          public Map staleConnectionCheckerProperties()

      The stale connection checker properties

    - #### staleConnectionCheckerProperties

          public T staleConnectionCheckerProperties(Map value)

      The stale connection checker properties

    - #### staleConnectionCheckerProperty

          public T staleConnectionCheckerProperty(String key,
                                                  Object value)

      The stale connection checker properties

    - #### statisticsEnabled

          public Boolean statisticsEnabled()

      Define whether runtime statistics are enabled or not.

    - #### statisticsEnabled

          public T statisticsEnabled(Boolean value)

      Define whether runtime statistics are enabled or not.

    - #### trackStatements

          public String trackStatements()

      Whether to check for unclosed statements when a connection is returned to the pool, result sets are closed, a statement is closed or return to the prepared statement cache. Valid values are: "false" - do not track statements, "true" - track statements and result sets and warn when they are not closed, "nowarn" - track statements but do not warn about them being unclosed

    - #### trackStatements

          public T trackStatements(String value)

      Whether to check for unclosed statements when a connection is returned to the pool, result sets are closed, a statement is closed or return to the prepared statement cache. Valid values are: "false" - do not track statements, "true" - track statements and result sets and warn when they are not closed, "nowarn" - track statements but do not warn about them being unclosed

    - #### tracking

          public Boolean tracking()

      Defines if IronJacamar should track connection handles across transaction boundaries

    - #### tracking

          public T tracking(Boolean value)

      Defines if IronJacamar should track connection handles across transaction boundaries

    - #### transactionIsolation

          public String transactionIsolation()

      Set the java.sql.Connection transaction isolation level. Valid values are: TRANSACTION_READ_UNCOMMITTED, TRANSACTION_READ_COMMITTED, TRANSACTION_REPEATABLE_READ, TRANSACTION_SERIALIZABLE and TRANSACTION_NONE

    - #### transactionIsolation

          public T transactionIsolation(String value)

      Set the java.sql.Connection transaction isolation level. Valid values are: TRANSACTION_READ_UNCOMMITTED, TRANSACTION_READ_COMMITTED, TRANSACTION_REPEATABLE_READ, TRANSACTION_SERIALIZABLE and TRANSACTION_NONE

    - #### urlDelimiter

          public String urlDelimiter()

      Specifies the delimiter for URLs in connection-url for HA datasources

    - #### urlDelimiter

          public T urlDelimiter(String value)

      Specifies the delimiter for URLs in connection-url for HA datasources

    - #### urlProperty

          public String urlProperty()

      Specifies the property for the URL property in the xa-datasource-property values

    - #### urlProperty

          public T urlProperty(String value)

      Specifies the property for the URL property in the xa-datasource-property values

    - #### urlSelectorStrategyClassName

          public String urlSelectorStrategyClassName()

      A class that implements org.jboss.jca.adapters.jdbc.URLSelectorStrategy

    - #### urlSelectorStrategyClassName

          public T urlSelectorStrategyClassName(String value)

      A class that implements org.jboss.jca.adapters.jdbc.URLSelectorStrategy

    - #### useCcm

          public Boolean useCcm()

      Enable the use of a cached connection manager

    - #### useCcm

          public T useCcm(Boolean value)

      Enable the use of a cached connection manager

    - #### useFastFail

          public Boolean useFastFail()

      Whether to fail a connection allocation on the first try if it is invalid (true) or keep trying until the pool is exhausted of all potential connections (false)

    - #### useFastFail

          public T useFastFail(Boolean value)

      Whether to fail a connection allocation on the first try if it is invalid (true) or keep trying until the pool is exhausted of all potential connections (false)

    - #### useJavaContext

          public Boolean useJavaContext()

      Setting this to false will bind the datasource into global JNDI

    - #### useJavaContext

          public T useJavaContext(Boolean value)

      Setting this to false will bind the datasource into global JNDI

    - #### useTryLock

          public Long useTryLock()

      Any configured timeout for internal locks on the resource adapter objects in seconds

    - #### useTryLock

          public T useTryLock(Long value)

      Any configured timeout for internal locks on the resource adapter objects in seconds

    - #### userName

          public String userName()

      Specify the user name used when creating a new connection

    - #### userName

          public T userName(String value)

      Specify the user name used when creating a new connection

    - #### validConnectionCheckerClassName

          public String validConnectionCheckerClassName()

      An org.jboss.jca.adapters.jdbc.ValidConnectionChecker that provides an isValidConnection(Connection) method to validate a connection. If an exception is returned that means the connection is invalid. This overrides the check-valid-connection-sql element

    - #### validConnectionCheckerClassName

          public T validConnectionCheckerClassName(String value)

      An org.jboss.jca.adapters.jdbc.ValidConnectionChecker that provides an isValidConnection(Connection) method to validate a connection. If an exception is returned that means the connection is invalid. This overrides the check-valid-connection-sql element

    - #### validConnectionCheckerProperties

          public Map validConnectionCheckerProperties()

      The valid connection checker properties

    - #### validConnectionCheckerProperties

          public T validConnectionCheckerProperties(Map value)

      The valid connection checker properties

    - #### validConnectionCheckerProperty

          public T validConnectionCheckerProperty(String key,
                                                  Object value)

      The valid connection checker properties

    - #### validateOnMatch

          public Boolean validateOnMatch()

      The validate-on-match element specifies if connection validation should be done when a connection factory attempts to match a managed connection. This is typically exclusive to the use of background validation

    - #### validateOnMatch

          public T validateOnMatch(Boolean value)

      The validate-on-match element specifies if connection validation should be done when a connection factory attempts to match a managed connection. This is typically exclusive to the use of background validation

    - #### wrapXaResource

          public Boolean wrapXaResource()

      Should the XAResource instances be wrapped in an org.jboss.tm.XAResourceWrapper instance

    - #### wrapXaResource

          public T wrapXaResource(Boolean value)

      Should the XAResource instances be wrapped in an org.jboss.tm.XAResourceWrapper instance

    - #### xaDatasourceClass

          public String xaDatasourceClass()

      The fully qualified name of the javax.sql.XADataSource implementation

    - #### xaDatasourceClass

          public T xaDatasourceClass(String value)

      The fully qualified name of the javax.sql.XADataSource implementation

    - #### xaResourceTimeout

          public Integer xaResourceTimeout()

      The value is passed to XAResource.setTransactionTimeout(), in seconds. Default is zero

    - #### xaResourceTimeout

          public T xaResourceTimeout(Integer value)

      The value is passed to XAResource.setTransactionTimeout(), in seconds. Default is zero

Copyright © 2018 JBoss by Red Hat. All rights reserved.