Skip to content

Instantly share code, notes, and snippets.

@nowelium
Created August 13, 2010 03:50
Show Gist options
  • Save nowelium/522235 to your computer and use it in GitHub Desktop.
Save nowelium/522235 to your computer and use it in GitHub Desktop.
// querulous-generic
import com.twitter.querulous.database.MemoizingDatabaseFactory
import com.twitter.querulous.evaluator.QueryEvaluator
import com.twitter.querulous.evaluator.QueryEvaluator._
import com.twitter.querulous.evaluator.StandardQueryEvaluatorFactory
import com.twitter.querulous.database.ApachePoolingDatabaseFactory
import com.twitter.querulous.query.SqlQueryFactory
import com.twitter.xrayspecs.Duration
// see README: http://github.com/nowelium/querulous-generic/blob/master/README.markdown
object MyDataSource {
lazy val queryEvaluatorFactory:StandardQueryEvaluatorFactory = {
val apachePoolingDatabaseFactory = new ApachePoolingDatabaseFactory(
"SELECT 1",
10,
100,
new Duration(1000),
new Duration(1000),
true,
new Duration(5000)
)
val databaseFactory = new MemoizingDatabaseFactory(apachePoolingDatabaseFactory)
val queryFactory = new SqlQueryFactory
new StandardQueryEvaluatorFactory(databaseFactory, queryFactory)
}
lazy val fooDataSource = {
val driver = "com.mysql.jdbc.Driver"
val uri = "jdbc:mysql://examplehost/barDatabase"
val username = "John"
val password = "Doe"
queryEvaluatorFactory(driver, uri, username, password)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment