aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Christopher Vogt <oss.nsp@cvogt.org>2016-01-12 00:05:42 +0100
committerJan Christopher Vogt <oss.nsp@cvogt.org>2016-01-12 00:05:42 +0100
commit08831a9fb92242a4b1af2f5f3e12d560d36d6659 (patch)
treefbf55517211d37fcf94ada3aa0303fdf5eab7e41
parent63c3a0246d903def3ed7b3845ecd108e03ddeaa1 (diff)
parent404be191e8540192a06de1e959aee4573060a199 (diff)
downloadslick-codegen-example-08831a9fb92242a4b1af2f5f3e12d560d36d6659.tar.gz
slick-codegen-example-08831a9fb92242a4b1af2f5f3e12d560d36d6659.tar.bz2
slick-codegen-example-08831a9fb92242a4b1af2f5f3e12d560d36d6659.zip
Merge pull request #6 from jnewman/await-result-example3.0.1
Ensure result materializes before exit
-rw-r--r--src/main/scala/Example.scala24
1 files changed, 16 insertions, 8 deletions
diff --git a/src/main/scala/Example.scala b/src/main/scala/Example.scala
index 3eaf9d3..b6fe0b6 100644
--- a/src/main/scala/Example.scala
+++ b/src/main/scala/Example.scala
@@ -1,10 +1,18 @@
-object Tables extends{ // or just use object demo.Tables, which is hard-wired to the driver stated during generation
- val profile = scala.slick.driver.H2Driver
+object Tables extends {
+ // or just use object demo.Tables, which is hard-wired to the driver stated during generation
+ val profile = scala.slick.driver.H2Driver
} with demo.Tables
+
+
+import scala.concurrent.Await
+import scala.concurrent.duration._
+import scala.language.postfixOps
+
import Tables._
import Tables.profile.api._
import scala.concurrent.ExecutionContext.Implicits.global
+
object Example extends App {
// connection info for a pre-populated throw-away, in-memory db for this demo, which is freshly initialized on every run
val url = "jdbc:h2:mem:test;INIT=runscript from 'src/main/sql/create.sql'"
@@ -12,12 +20,12 @@ object Example extends App {
// Using generated code. Our Build.sbt makes sure they are generated before compilation.
val q = Companies.join(Computers).on(_.id === _.manufacturerId)
- .map{ case (co,cp) => (co.name, cp.name) }
+ .map { case (co, cp) => (co.name, cp.name) }
- db.run(q.result).foreach { result =>
- println(result.groupBy{ case (co,cp) => co }
- .mapValues(_.map{ case (co,cp) => cp })
- .mkString("\n")
+ Await.result(db.run(q.result).map { result =>
+ println(result.groupBy { case (co, cp) => co }
+ .mapValues(_.map { case (co, cp) => cp })
+ .mkString("\n")
)
- }
+ }, 60 seconds)
}