Package org.h2.util

Class OsgiDataSourceFactory

  • All Implemented Interfaces:
    org.osgi.service.jdbc.DataSourceFactory

    public class OsgiDataSourceFactory
    extends java.lang.Object
    implements org.osgi.service.jdbc.DataSourceFactory
    This class implements the OSGi DataSourceFactory interface for the H2 JDBC driver. The following standard configuration properties are supported: DataSourceFactory.JDBC_USER, DataSourceFactory.JDBC_PASSWORD, DataSourceFactory.JDBC_DESCRIPTION, DataSourceFactory.JDBC_DATASOURCE_NAME, DataSourceFactory.JDBC_NETWORK_PROTOCOL, DataSourceFactory.JDBC_URL, DataSourceFactory.JDBC_SERVER_NAME, DataSourceFactory.JDBC_PORT_NUMBER. The following standard configuration properties are not supported: DataSourceFactory.JDBC_ROLE_NAME, DataSourceFactory.JDBC_DATABASE_NAME, DataSourceFactory.JDBC_INITIAL_POOL_SIZE, DataSourceFactory.JDBC_MAX_POOL_SIZE, DataSourceFactory.JDBC_MIN_POOL_SIZE, DataSourceFactory.JDBC_MAX_IDLE_TIME, DataSourceFactory.JDBC_MAX_STATEMENTS, DataSourceFactory.JDBC_PROPERTY_CYCLE. Any other property will be treated as an H2 specific option. If the DataSourceFactory.JDBC_URL property is passed to any of the DataSource factories, the following properties will be ignored: DataSourceFactory.JDBC_DATASOURCE_NAME, DataSourceFactory.JDBC_NETWORK_PROTOCOL, DataSourceFactory.JDBC_SERVER_NAME, DataSourceFactory.JDBC_PORT_NUMBER.
    • Field Summary

      • Fields inherited from interface org.osgi.service.jdbc.DataSourceFactory

        JDBC_DATABASE_NAME, JDBC_DATASOURCE_NAME, JDBC_DESCRIPTION, JDBC_INITIAL_POOL_SIZE, JDBC_MAX_IDLE_TIME, JDBC_MAX_POOL_SIZE, JDBC_MAX_STATEMENTS, JDBC_MIN_POOL_SIZE, JDBC_NETWORK_PROTOCOL, JDBC_PASSWORD, JDBC_PORT_NUMBER, JDBC_PROPERTY_CYCLE, JDBC_ROLE_NAME, JDBC_SERVER_NAME, JDBC_URL, JDBC_USER, OSGI_JDBC_CAPABILITY, OSGI_JDBC_CAPABILITY_CONNECTIONPOOLDATASOURCE, OSGI_JDBC_CAPABILITY_DATASOURCE, OSGI_JDBC_CAPABILITY_DRIVER, OSGI_JDBC_CAPABILITY_XADATASOURCE, OSGI_JDBC_DRIVER_CLASS, OSGI_JDBC_DRIVER_NAME, OSGI_JDBC_DRIVER_VERSION
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      javax.sql.ConnectionPoolDataSource createConnectionPoolDataSource​(java.util.Properties properties)
      Creates a pooled data source.
      javax.sql.DataSource createDataSource​(java.util.Properties properties)
      Creates a basic data source.
      java.sql.Driver createDriver​(java.util.Properties properties)
      Returns a driver.
      javax.sql.XADataSource createXADataSource​(java.util.Properties properties)
      Creates a pooled XA data source.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • OsgiDataSourceFactory

        public OsgiDataSourceFactory​(Driver driver)
    • Method Detail

      • createDataSource

        public javax.sql.DataSource createDataSource​(java.util.Properties properties)
                                              throws java.sql.SQLException
        Creates a basic data source.
        Specified by:
        createDataSource in interface org.osgi.service.jdbc.DataSourceFactory
        Parameters:
        properties - the properties for the data source.
        Returns:
        a new data source.
        Throws:
        java.sql.SQLException - if unsupported properties are supplied, or if data source can not be created.
      • createConnectionPoolDataSource

        public javax.sql.ConnectionPoolDataSource createConnectionPoolDataSource​(java.util.Properties properties)
                                                                          throws java.sql.SQLException
        Creates a pooled data source.
        Specified by:
        createConnectionPoolDataSource in interface org.osgi.service.jdbc.DataSourceFactory
        Parameters:
        properties - the properties for the data source.
        Returns:
        a new data source.
        Throws:
        java.sql.SQLException - if unsupported properties are supplied, or if data source can not be created.
      • createXADataSource

        public javax.sql.XADataSource createXADataSource​(java.util.Properties properties)
                                                  throws java.sql.SQLException
        Creates a pooled XA data source.
        Specified by:
        createXADataSource in interface org.osgi.service.jdbc.DataSourceFactory
        Parameters:
        properties - the properties for the data source.
        Returns:
        a new data source.
        Throws:
        java.sql.SQLException - if unsupported properties are supplied, or if data source can not be created.
      • createDriver

        public java.sql.Driver createDriver​(java.util.Properties properties)
                                     throws java.sql.SQLException
        Returns a driver. The H2 driver does not support any properties.
        Specified by:
        createDriver in interface org.osgi.service.jdbc.DataSourceFactory
        Parameters:
        properties - must be null or empty list.
        Returns:
        a driver.
        Throws:
        java.sql.SQLException - if any property is supplied.