Package io.quarkus.agroal.runtime
Class DataSources
- java.lang.Object
-
- io.quarkus.agroal.runtime.DataSources
-
@Singleton public class DataSources extends Object
This class is sort of a producer forAgroalDataSource.It isn't a CDI producer in the literal sense, but it created a synthetic bean from
AgroalProcessorThecreateDataSourcemethod is called at runtime (seeAgroalRecorder.agroalDataSourceSupplier(String, DataSourcesRuntimeConfig)) in order to produce the actualAgroalDataSourceobjects.
-
-
Constructor Summary
Constructors Constructor Description DataSources(DataSourcesBuildTimeConfig dataSourcesBuildTimeConfig, DataSourcesRuntimeConfig dataSourcesRuntimeConfig, DataSourcesJdbcBuildTimeConfig dataSourcesJdbcBuildTimeConfig, DataSourcesJdbcRuntimeConfig dataSourcesJdbcRuntimeConfig, javax.transaction.TransactionManager transactionManager, javax.transaction.TransactionSynchronizationRegistry transactionSynchronizationRegistry, DataSourceSupport dataSourceSupport, javax.enterprise.inject.Instance<io.agroal.api.AgroalPoolInterceptor> agroalPoolInterceptors)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description io.agroal.api.AgroalDataSourcedoCreateDataSource(String dataSourceName)static io.agroal.api.AgroalDataSourcefromName(String dataSourceName)Meant to be used from recorders that create synthetic beans that need access toDatasource.io.agroal.api.AgroalDataSourcegetDataSource(String dataSourceName)DataSourceBuildTimeConfiggetDataSourceBuildTimeConfig(String dataSourceName)DataSourceJdbcBuildTimeConfiggetDataSourceJdbcBuildTimeConfig(String dataSourceName)DataSourceJdbcRuntimeConfiggetDataSourceJdbcRuntimeConfig(String dataSourceName)DataSourceRuntimeConfiggetDataSourceRuntimeConfig(String dataSourceName)voidstop()
-
-
-
Constructor Detail
-
DataSources
public DataSources(DataSourcesBuildTimeConfig dataSourcesBuildTimeConfig, DataSourcesRuntimeConfig dataSourcesRuntimeConfig, DataSourcesJdbcBuildTimeConfig dataSourcesJdbcBuildTimeConfig, DataSourcesJdbcRuntimeConfig dataSourcesJdbcRuntimeConfig, javax.transaction.TransactionManager transactionManager, javax.transaction.TransactionSynchronizationRegistry transactionSynchronizationRegistry, DataSourceSupport dataSourceSupport, @Any javax.enterprise.inject.Instance<io.agroal.api.AgroalPoolInterceptor> agroalPoolInterceptors)
-
-
Method Detail
-
fromName
public static io.agroal.api.AgroalDataSource fromName(String dataSourceName)
Meant to be used from recorders that create synthetic beans that need access toDatasource. In such usingArc.container.instance(DataSource.class)is not possible becauseDatasourceis itself a synthetic bean.This method relies on the fact that
DataSourcesshould - given the same input - always return the sameAgroalDataSourceno matter how many times it is invoked (which makes sense becauseDataSourceis aSingletonbean).This method is thread-safe
-
getDataSource
public io.agroal.api.AgroalDataSource getDataSource(String dataSourceName)
-
doCreateDataSource
public io.agroal.api.AgroalDataSource doCreateDataSource(String dataSourceName)
-
getDataSourceBuildTimeConfig
public DataSourceBuildTimeConfig getDataSourceBuildTimeConfig(String dataSourceName)
-
getDataSourceJdbcBuildTimeConfig
public DataSourceJdbcBuildTimeConfig getDataSourceJdbcBuildTimeConfig(String dataSourceName)
-
getDataSourceRuntimeConfig
public DataSourceRuntimeConfig getDataSourceRuntimeConfig(String dataSourceName)
-
getDataSourceJdbcRuntimeConfig
public DataSourceJdbcRuntimeConfig getDataSourceJdbcRuntimeConfig(String dataSourceName)
-
stop
@PreDestroy public void stop()
-
-