org.hibernate.service.jdbc.connections.spi
Class DataSourceBasedMultiTenantConnectionProviderImpl

java.lang.Object
  extended by org.hibernate.service.jdbc.connections.spi.AbstractDataSourceBasedMultiTenantConnectionProviderImpl
      extended by org.hibernate.service.jdbc.connections.spi.DataSourceBasedMultiTenantConnectionProviderImpl
All Implemented Interfaces:
Serializable, MultiTenantConnectionProvider, Service, ServiceRegistryAwareService, Stoppable, Wrapped

public class DataSourceBasedMultiTenantConnectionProviderImpl
extends AbstractDataSourceBasedMultiTenantConnectionProviderImpl
implements ServiceRegistryAwareService, Stoppable

A concrete implementation of the MultiTenantConnectionProvider contract bases on a number of reasonable assumptions. We assume that:

See Also:
Serialized Form

Field Summary
static String TENANT_IDENTIFIER_TO_USE_FOR_ANY_KEY
           
 
Constructor Summary
DataSourceBasedMultiTenantConnectionProviderImpl()
           
 
Method Summary
 void injectServices(ServiceRegistryImplementor serviceRegistry)
          Callback to inject the registry.
protected  DataSource selectAnyDataSource()
           
protected  DataSource selectDataSource(String tenantIdentifier)
           
 void stop()
          Stop phase notification
 
Methods inherited from class org.hibernate.service.jdbc.connections.spi.AbstractDataSourceBasedMultiTenantConnectionProviderImpl
getAnyConnection, getConnection, isUnwrappableAs, releaseAnyConnection, releaseConnection, supportsAggressiveRelease, unwrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TENANT_IDENTIFIER_TO_USE_FOR_ANY_KEY

public static final String TENANT_IDENTIFIER_TO_USE_FOR_ANY_KEY
See Also:
Constant Field Values
Constructor Detail

DataSourceBasedMultiTenantConnectionProviderImpl

public DataSourceBasedMultiTenantConnectionProviderImpl()
Method Detail

selectAnyDataSource

protected DataSource selectAnyDataSource()
Specified by:
selectAnyDataSource in class AbstractDataSourceBasedMultiTenantConnectionProviderImpl

selectDataSource

protected DataSource selectDataSource(String tenantIdentifier)
Specified by:
selectDataSource in class AbstractDataSourceBasedMultiTenantConnectionProviderImpl

injectServices

public void injectServices(ServiceRegistryImplementor serviceRegistry)
Description copied from interface: ServiceRegistryAwareService
Callback to inject the registry.

Specified by:
injectServices in interface ServiceRegistryAwareService
Parameters:
serviceRegistry - The registry

stop

public void stop()
Description copied from interface: Stoppable
Stop phase notification

Specified by:
stop in interface Stoppable


Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.