Synopsis:	add-data-source [--profile=<profile_name>] --jndi-name=<jndi_name> --driver-name=<driver_name> --pool-name=<pool_name>
							--connection-url=<connection_url>

Description:	creates a new data source

Arguments:

	profile			- is allowed and required only in the domain mode, specifies the profile
					in which the data source should be created. 

	jndi-name		- specifies the JNDI name for the datasource.
	
	driver-name		- defines the JDBC driver the datasource should use. It is a symbolic name matching
					  the the name of installed driver (as it appears in /subsystem=datasources/jdbc-driver).
					  In case the driver is deployed as jar, the name is the name of deployment unit.
				  
	pool-name		- specifies the pool name for the datasource used for management.
	
	connection-url	- the JDBC driver connection URL.
	
	new-connection-sql	- specifies an SQL statement to execute whenever a connection is added to the connection pool.
	
	url-delimiter	- specifies the delimeter for URLs in connection-url for HA datasources.
	
	url-selector-strategy-class-name	- a class that implements org.jboss.jca.adapters.jdbc.URLSelectorStrategy.
	
	use-java-context	- setting this to false will bind the DataSource into global JNDI.
	
	disabled		- specifies if the datasource should be disabled.
	
	jta				- enable JTA integration.
	
	max-pool-size	- the max-pool-size element indicates the maximum number of connections for a pool.
					  No more connections will be created in each sub-pool.
    
    min-pool-size	- the min-pool-size element indicates the minimum number of connections a pool should hold.
    				  These are not created until a Subject is known from a request for a connection.
                
    pool-prefill	- whether to attempt to prefill the connection pool. Changing this value require a server restart.
    
    pool-use-strict-min	- define if the min-pool-size should be considered a strictly.
    
    
    username		- specify the username used when creating a new connection.
    
    password		- specify the password used when creating a new connection.
    
    prepared-statements-cache-size	- the number of prepared statements per connection in an LRU cache.
    
    share-prepared-statements	- whether to share prepare statements, i.e. whether asking for same statement twice
    							  without closing uses the same underlying prepared statement.
    
    track-statements	- whether to check for unclosed statements when a connection is returned to the pool
    					  and result sets are closed when a statement is closed/return to the prepared statement cache.
    					  Valid values are: false - do not track statements and results true - track statements
    					  and result sets and warn when they are not closed nowarn - track statements
    					  but do no warn about them being unclosed.
    
    allocation-retry	- the allocation retry element indicates the number of times that allocating a connection
    					  should be tried before throwing an exception.
    
    allocation-retry-wait-millis	- the allocation retry wait millis element indicates the time in milliseconds
    								  to wait between retrying to allocate a connection.
    
    blocking-timeout-wait-millis	- the blocking-timeout-millis element indicates the maximum time in milliseconds
    								  to block while waiting for a connection before throwing an exception.
    								  Note that this blocks only while waiting for a permit for a connection,
    								  and will never throw an exception if creating a new connection takes an inordinately long time.
    
    idle-timeout-minutes	- the idle-timeout-minutes elements indicates 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 1/2 the smallest idle-timeout-minutes of any pool.
    						  Changing this value require a server restart.
    
    query-timeout	- any configured query timeout in seconds The default is no timeout.
    
    use-try-lock	- any configured timeout for internal locks on the resource adapter objects in seconds.
    
    set-tx-query-timeout	- 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.
    
    transaction-isolation	- set java.sql.Connection transaction isolation level to use.
    						  The constants defined by transaction-isolation-values are the possible transaction isolation levels
    						  and include: TRANSACTION_READ_UNCOMMITTED, TRANSACTION_READ_COMMITTED, TRANSACTION_REPEATABLE_READ,
    						  TRANSACTION_SERIALIZABLE, TRANSACTION_NONE.
    
    check-valid-connection-sql	- specify an SQL statement to check validity of a pool connection.
    							  This may be called when managed connection is taken from pool for use.
    
    exception-sorter-class-name		- an org.jboss.jca.adapters.jdbc.ExceptionSorter that provides
    								  a boolean isExceptionFatal(SQLException e) method to validate is an exception
    								  should be broadcast to all javax.resource.spi.ConnectionEventListener
    								  as a connectionErrorOccurred.
    
    exceptionsorter-properties	- exceptionsorter properties.
    
    stale-connection-checker-class-name		- an org.jboss.jca.adapters.jdbc.StaleConnectionChecker that provides
    										  a boolean isStaleConnection(SQLException e) method
    										  which if it it returns true will wrap the exception
    										  in an org.jboss.jca.adapters.jdbc.StaleConnectionException.
    
    staleconnectionchecker-properties	- staleconnectionchecker properties.
    
    valid-connection-checker-class-name		- an org.jboss.jca.adapters.jdbc.ValidConnectionChecker
    										  that provides a SQLException isValidConnection(Connection e) method
    										  to validate is a connection is valid. An exception means the connection is destroyed.
    										  This overrides the check-valid-connection-sql when present.

	validconnectionchecker-properties	- validconnectionchecker properties.    
    
    background-validation-minutes	- the background-validation-minutes element specifies the amount of time, in minutes,
    								  that background validation will run. Changing this value require a server restart.
    
    background-validation	- an element to specify that connections should be validated on a background thread
    						  versus being validated prior to use. Changing this value require a server restart.
    
    use-fast-fail	- whether fail a connection allocation on the first connection if it is invalid (true)
    				  or keep trying until the pool is exhausted of all potential connections (false).

    validate-on-match	- the validate-on-match element indicates whether or not connection level validation
    					  should be done when a connection factory attempts to match a managed connection for a given set.
    					  This is typically exclusive to the use of background validation.
    
    spy		- whatever spy or not the jdbc connection.
