@Bean public DataSourceConnectionProvider connectionProvider() { return new DataSourceConnectionProvider(new TransactionAwareDataSourceProxy(dataSource)); }
@Override public void configure(final Env env, final Config conf, final Binder binder) { Key<DataSource> dskey = Key.get(DataSource.class, Names.named(name)); Supplier<NoSuchElementException> noSuchElement = () -> new NoSuchElementException( "DataSource missing: " + dskey); HikariDataSource ds = (HikariDataSource) env.get(dskey).orElseThrow(noSuchElement); Configuration jooqconf = new DefaultConfiguration(); ConnectionProvider dscp = new DataSourceConnectionProvider(ds); jooqconf.set(JDBCUtils.dialect(env.get(Key.get(String.class, Names.named(name + ".url"))) .orElseThrow(noSuchElement))); jooqconf.set(dscp); jooqconf.set(new DefaultTransactionProvider(dscp)); if (callback != null) { callback.accept(jooqconf, conf); } ServiceKey serviceKey = env.serviceKey(); serviceKey.generate(Configuration.class, name, k -> binder.bind(k).toInstance(jooqconf)); Provider<DSLContext> dsl = () -> DSL.using(jooqconf); serviceKey.generate(DSLContext.class, name, k -> binder.bind(k).toProvider(dsl)); } }
public DefaultDSLContext(DataSource datasource, SQLDialect dialect, Settings settings) { this(new DefaultConfiguration(new DataSourceConnectionProvider(datasource), null, null, null, null, null, null, null, null, null, null, null, null, dialect, settings, null)); }
public DefaultDSLContext(DataSource datasource, SQLDialect dialect, Settings settings) { this(new DefaultConfiguration(new DataSourceConnectionProvider(datasource), null, null, null, null, dialect, settings, null)); }
/** * Convenience method for {@link #set(ConnectionProvider)}, using a * {@link DataSourceConnectionProvider}. */ public final Configuration set(DataSource newDataSource) { return set(new DataSourceConnectionProvider(newDataSource)); }
@Override public final Configuration set(DataSource newDataSource) { return set(new DataSourceConnectionProvider(newDataSource)); }
/** * Convenience method for {@link #derive(ConnectionProvider)}, using a * {@link DataSourceConnectionProvider}. */ public final Configuration derive(DataSource newDataSource) { return derive(new DataSourceConnectionProvider(newDataSource)); }
@Override public final Configuration derive(DataSource newDataSource) { return derive(new DataSourceConnectionProvider(newDataSource)); }
@Bean DataSourceConnectionProvider JooqConnectionProvider(@Qualifier("DataSource") DataSource ds) { return new DataSourceConnectionProvider(new TransactionAwareDataSourceProxy(ds)); }
@Bean public DataSourceConnectionProvider dataSourceConnectionProvider(){ return new DataSourceConnectionProvider(new TransactionAwareDataSourceProxy(dataSource())); }
public static Configuration defaultConfigFromDataSource(DataSource ds) { DataSourceConnectionProvider dcp = new DataSourceConnectionProvider(ds); Configuration jooqConfig = new DefaultConfiguration(); jooqConfig.set(SQLDialect.MYSQL); jooqConfig.set(dcp); //jooqConfig.set(new ThreadLocalTransactionProvider(dcp)); jooqConfig.settings() .withExecuteWithOptimisticLockingExcludeUnversioned(true); return jooqConfig; }