From 40b9cc1f785eaae352267757ac9e091c25ed0744 Mon Sep 17 00:00:00 2001
From: Robert Jaros <rjaros@finn.pl>
Date: Wed, 7 Nov 2018 22:16:46 +0100
Subject: Upgrade to Kotlin 1.3.0 final.

---
 kvision-modules/kvision-server-jooby/build.gradle            |  3 +++
 .../src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt   | 12 ++++++++----
 2 files changed, 11 insertions(+), 4 deletions(-)

(limited to 'kvision-modules/kvision-server-jooby')

diff --git a/kvision-modules/kvision-server-jooby/build.gradle b/kvision-modules/kvision-server-jooby/build.gradle
index 952e9a16..b3912c2c 100644
--- a/kvision-modules/kvision-server-jooby/build.gradle
+++ b/kvision-modules/kvision-server-jooby/build.gradle
@@ -11,6 +11,9 @@ dependencyManagement {
 dependencies {
     expectedBy project(":kvision-modules:kvision-common")
     compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion"
+    compile "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion"
+    compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion"
+    compile "org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion"
     compile "org.jetbrains.kotlinx:kotlinx-serialization-runtime:$serializationVersion"
     compile "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion"
     compile "org.jooby:jooby-lang-kotlin"
diff --git a/kvision-modules/kvision-server-jooby/src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt b/kvision-modules/kvision-server-jooby/src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt
index 1e19f394..bc182467 100644
--- a/kvision-modules/kvision-server-jooby/src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt
+++ b/kvision-modules/kvision-server-jooby/src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt
@@ -22,8 +22,9 @@
 package pl.treksoft.kvision.remote
 
 import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
+import kotlinx.coroutines.CoroutineStart
 import kotlinx.coroutines.Deferred
-import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.ExperimentalCoroutinesApi
 import kotlinx.coroutines.GlobalScope
 import org.jooby.Kooby
 import org.jooby.Session
@@ -64,8 +65,9 @@ actual typealias Profile = CommonProfile
 /**
  * A helper extension function for asynchronous request processing.
  */
+@UseExperimental(ExperimentalCoroutinesApi::class)
 fun <RESP> Request?.async(block: (Request) -> RESP): Deferred<RESP> = this?.let { req ->
-    GlobalScope.coroutinesAsync(Dispatchers.Unconfined) {
+    GlobalScope.coroutinesAsync(start = CoroutineStart.UNDISPATCHED) {
         block(req)
     }
 } ?: throw IllegalStateException("Request not set!")
@@ -73,9 +75,10 @@ fun <RESP> Request?.async(block: (Request) -> RESP): Deferred<RESP> = this?.let
 /**
  * A helper extension function for asynchronous request processing with session.
  */
+@UseExperimental(ExperimentalCoroutinesApi::class)
 fun <RESP> Request?.asyncSession(block: (Request, Session) -> RESP): Deferred<RESP> = this?.let { req ->
     val session = req.session()
-    GlobalScope.coroutinesAsync(Dispatchers.Unconfined) {
+    GlobalScope.coroutinesAsync(start = CoroutineStart.UNDISPATCHED) {
         block(req, session)
     }
 } ?: throw IllegalStateException("Request not set!")
@@ -83,11 +86,12 @@ fun <RESP> Request?.asyncSession(block: (Request, Session) -> RESP): Deferred<RE
 /**
  * A helper extension function for asynchronous request processing with session and user profile.
  */
+@UseExperimental(ExperimentalCoroutinesApi::class)
 fun <RESP> Request?.asyncAuth(block: (Request, Session, Profile) -> RESP): Deferred<RESP> = this?.let { req ->
     val session = req.session()
     val profile = req.require(CommonProfile::class.java) as CommonProfile?
     profile?.let {
-        GlobalScope.coroutinesAsync(Dispatchers.Unconfined) {
+        GlobalScope.coroutinesAsync(start = CoroutineStart.UNDISPATCHED) {
             block(req, session, profile)
         }
     }
-- 
cgit