org.osgi.service.jdbc
Interface DataSourceFactory


public interface DataSourceFactory

A factory for JDBC connection factories. There are 3 preferred connection factories for getting JDBC connections:

DataSource providers should implement this interface and register it as an OSGi service with the JDBC driver class name in the OSGI_JDBC_DRIVER_CLASS property.

Version:
1.0
Author:
Guillaume Sauthier

Field Summary
static String JDBC_DATABASE_NAME
          The "databaseName" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_DATASOURCE_NAME
          The "dataSourceName" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_DESCRIPTION
          The "description" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_INITIAL_POOL_SIZE
          The "initialPoolSize" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).
static String JDBC_MAX_IDLE_TIME
          The "maxIdleTime" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).
static String JDBC_MAX_POOL_SIZE
          The "maxPoolSize" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).
static String JDBC_MAX_STATEMENTS
          The "maxStatements" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).
static String JDBC_MIN_POOL_SIZE
          The "minPoolSize" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).
static String JDBC_NETWORK_PROTOCOL
          The "networkProtocol" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_PASSWORD
          The "password" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_PORT_NUMBER
          The "portNumber" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_PROPERTY_CYCLE
          The "propertyCycle" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).
static String JDBC_ROLE_NAME
          The "roleName" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_SERVER_NAME
          The "serverName" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_URL
          The "url" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String JDBC_USER
          The "user" property that DataSource clients should supply a value for when calling createDataSource(Properties).
static String OSGI_JDBC_DRIVER_CLASS
          Service property used by a JDBC driver to declare the driver class when registering a JDBC DataSourceFactory service.
static String OSGI_JDBC_DRIVER_NAME
          Service property used by a JDBC driver to declare the driver name when registering a JDBC DataSourceFactory service.
static String OSGI_JDBC_DRIVER_VERSION
          Service property used by a JDBC driver to declare the driver version when registering a JDBC DataSourceFactory service.
 
Method Summary
 ConnectionPoolDataSource createConnectionPoolDataSource(Properties props)
          Create a new ConnectionPoolDataSource using the given properties.
 DataSource createDataSource(Properties props)
          Create a new DataSource using the given properties.
 Driver createDriver(Properties props)
          Create a new Driver using the given properties.
 XADataSource createXADataSource(Properties props)
          Create a new XADataSource using the given properties.
 

Field Detail

OSGI_JDBC_DRIVER_CLASS

static final String OSGI_JDBC_DRIVER_CLASS
Service property used by a JDBC driver to declare the driver class when registering a JDBC DataSourceFactory service. Clients may filter or test this property to determine if the driver is suitable, or the desired one.

See Also:
Constant Field Values

OSGI_JDBC_DRIVER_NAME

static final String OSGI_JDBC_DRIVER_NAME
Service property used by a JDBC driver to declare the driver name when registering a JDBC DataSourceFactory service. Clients may filter or test this property to determine if the driver is suitable, or the desired one.

See Also:
Constant Field Values

OSGI_JDBC_DRIVER_VERSION

static final String OSGI_JDBC_DRIVER_VERSION
Service property used by a JDBC driver to declare the driver version when registering a JDBC DataSourceFactory service. Clients may filter or test this property to determine if the driver is suitable, or the desired one.

See Also:
Constant Field Values

JDBC_DATABASE_NAME

static final String JDBC_DATABASE_NAME
The "databaseName" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_DATASOURCE_NAME

static final String JDBC_DATASOURCE_NAME
The "dataSourceName" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_DESCRIPTION

static final String JDBC_DESCRIPTION
The "description" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_INITIAL_POOL_SIZE

static final String JDBC_INITIAL_POOL_SIZE
The "initialPoolSize" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).

See Also:
Constant Field Values

JDBC_MAX_IDLE_TIME

static final String JDBC_MAX_IDLE_TIME
The "maxIdleTime" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).

See Also:
Constant Field Values

JDBC_MAX_POOL_SIZE

static final String JDBC_MAX_POOL_SIZE
The "maxPoolSize" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).

See Also:
Constant Field Values

JDBC_MAX_STATEMENTS

static final String JDBC_MAX_STATEMENTS
The "maxStatements" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).

See Also:
Constant Field Values

JDBC_MIN_POOL_SIZE

static final String JDBC_MIN_POOL_SIZE
The "minPoolSize" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).

See Also:
Constant Field Values

JDBC_NETWORK_PROTOCOL

static final String JDBC_NETWORK_PROTOCOL
The "networkProtocol" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_PASSWORD

static final String JDBC_PASSWORD
The "password" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_PORT_NUMBER

static final String JDBC_PORT_NUMBER
The "portNumber" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_PROPERTY_CYCLE

static final String JDBC_PROPERTY_CYCLE
The "propertyCycle" property that ConnectionPoolDataSource and XADataSource clients should supply a value for when calling createConnectionPoolDataSource(Properties) or createXADataSource(Properties).

See Also:
Constant Field Values

JDBC_ROLE_NAME

static final String JDBC_ROLE_NAME
The "roleName" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_SERVER_NAME

static final String JDBC_SERVER_NAME
The "serverName" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_URL

static final String JDBC_URL
The "url" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values

JDBC_USER

static final String JDBC_USER
The "user" property that DataSource clients should supply a value for when calling createDataSource(Properties).

See Also:
Constant Field Values
Method Detail

createDataSource

DataSource createDataSource(Properties props)
                            throws SQLException
Create a new DataSource using the given properties.

Parameters:
props - The properties used to configure the DataSource. null indicates no properties. If the property cannot be set on the DataSource being created then a SQLException must be thrown.
Returns:
A configured DataSource.
Throws:
SQLException - If the DataSource cannot be created.

createConnectionPoolDataSource

ConnectionPoolDataSource createConnectionPoolDataSource(Properties props)
                                                        throws SQLException
Create a new ConnectionPoolDataSource using the given properties.

Parameters:
props - The properties used to configure the ConnectionPoolDataSource. null indicates no properties. If the property cannot be set on the ConnectionPoolDataSource being created then a SQLException must be thrown.
Returns:
A configured ConnectionPoolDataSource.
Throws:
SQLException - If the ConnectionPoolDataSource cannot be created.

createXADataSource

XADataSource createXADataSource(Properties props)
                                throws SQLException
Create a new XADataSource using the given properties.

Parameters:
props - The properties used to configure the XADataSource. null indicates no properties. If the property cannot be set on the XADataSource being created then a SQLException must be thrown.
Returns:
A configured XADataSource.
Throws:
SQLException - If the XADataSource cannot be created.

createDriver

Driver createDriver(Properties props)
                    throws SQLException
Create a new Driver using the given properties.

Parameters:
props - The properties used to configure the Driver. null indicates no properties. If the property cannot be set on the Driver being created then a SQLException must be thrown.
Returns:
A configured Driver.
Throws:
SQLException - If the Driver cannot be created.


Copyright © 2007-2011 OW2 Consortium. All Rights Reserved.