All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.resthub.jpa.pool.BoneCPDataSourceFactory Maven / Gradle / Ivy

package org.resthub.jpa.pool;

import com.jolbox.bonecp.BoneCPConfig;
import com.jolbox.bonecp.BoneCPDataSource;
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;

import javax.sql.DataSource;
import java.lang.reflect.InvocationTargetException;
import java.util.Properties;

/**
 * This factory allows to create directly a BoneCPDataSource instance from a set of configuration
 * properties.
 * 

* Check BoneCP documentation * for a full list of configuration properties. *

* @see AbstractDataSourceFactory#create(java.util.Properties) * @see AbstractDataSourceFactory */ public class BoneCPDataSourceFactory extends AbstractDataSourceFactory { public BoneCPDataSourceFactory() { this.setDsClass(BoneCPDataSource.class); } /** * Initialize a new {@link com.jolbox.bonecp.BoneCPDataSource} instance with given configuration * properties * * @see AbstractDataSourceFactory#callConstructor(Class, java.util.Properties) */ @Override protected DataSource callConstructor(Class clazz, Properties configProperties) throws Exception { BoneCPConfig config = new BoneCPConfig(configProperties); BoneCPDataSource dataSource = (BoneCPDataSource) clazz.getConstructor(BoneCPConfig.class).newInstance(config); dataSource.setDriverClass(configProperties.getProperty("driverClass")); return dataSource; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy