25 lines
702 B
Kotlin
25 lines
702 B
Kotlin
package net.ipksindia.dao
|
|
|
|
import com.zaxxer.hikari.HikariConfig
|
|
import com.zaxxer.hikari.HikariDataSource
|
|
import net.ipksindia.config.AppConfig
|
|
import java.sql.Connection
|
|
|
|
class DatabaseFactory private constructor() {
|
|
private val dataSource: HikariDataSource
|
|
|
|
init {
|
|
val config = HikariConfig()
|
|
config.jdbcUrl = AppConfig.databaseConfig.url
|
|
config.username = AppConfig.databaseConfig.user
|
|
config.password = AppConfig.databaseConfig.password
|
|
config.maximumPoolSize = 5
|
|
dataSource = HikariDataSource(config)
|
|
}
|
|
|
|
fun getConnection(): Connection = dataSource.connection
|
|
|
|
companion object {
|
|
val instance = DatabaseFactory()
|
|
}
|
|
} |