Example usage for org.apache.commons.dbcp.datasources PerUserPoolDataSource getPerUserDefaultTransactionIsolation

List of usage examples for org.apache.commons.dbcp.datasources PerUserPoolDataSource getPerUserDefaultTransactionIsolation

Introduction

In this page you can find the example usage for org.apache.commons.dbcp.datasources PerUserPoolDataSource getPerUserDefaultTransactionIsolation.

Prototype

public Integer getPerUserDefaultTransactionIsolation(String username) 

Source Link

Document

The isolation level of connections when returned from getConnection.

Usage

From source file:org.mybatis.guice.datasource.dbcp.PerUserPoolDataSourceModuleTest.java

@Test
public void configure_PerUserDefaultTransactionIsolation() throws Throwable {
    Injector injector = Guice.createInjector(
            new PerUserPoolDataSourceModule.Builder().setPerUserDefaultTransactionIsolationProviderClass(
                    PerUserDefaultTransactionIsolationProvider.class).create());
    PerUserPoolDataSourceProvider provider = injector.getInstance(PerUserPoolDataSourceProvider.class);

    PerUserPoolDataSource dataSource = (PerUserPoolDataSource) provider.get();

    assertEquals((Integer) Connection.TRANSACTION_READ_COMMITTED,
            dataSource.getPerUserDefaultTransactionIsolation("test_user"));
    assertEquals((Integer) Connection.TRANSACTION_SERIALIZABLE,
            dataSource.getPerUserDefaultTransactionIsolation("test_user2"));
}

From source file:org.mybatis.guice.datasource.dbcp.PerUserPoolDataSourceProviderTest.java

@Test
public void get_PerUserDefaultTransactionIsolation() throws Throwable {
    final Map<String, Integer> defaultTransactionIsolation = new HashMap<String, Integer>();
    defaultTransactionIsolation.put("test_user", Connection.TRANSACTION_READ_COMMITTED);
    defaultTransactionIsolation.put("test_user2", Connection.TRANSACTION_SERIALIZABLE);
    Injector injector = Guice.createInjector(new AbstractModule() {
        @Override/*from  w w  w . ja  va2 s .  co  m*/
        protected void configure() {
            bind(new TypeLiteral<Map<String, Integer>>() {
            }).annotatedWith(PerUserDefaultTransactionIsolation.class).toInstance(defaultTransactionIsolation);
        }
    });
    PerUserPoolDataSourceProvider provider = injector.getInstance(PerUserPoolDataSourceProvider.class);

    PerUserPoolDataSource dataSource = (PerUserPoolDataSource) provider.get();

    assertEquals((Integer) Connection.TRANSACTION_READ_COMMITTED,
            dataSource.getPerUserDefaultTransactionIsolation("test_user"));
    assertEquals((Integer) Connection.TRANSACTION_SERIALIZABLE,
            dataSource.getPerUserDefaultTransactionIsolation("test_user2"));
}