From 470953c78c2509224bb452c16f8bbea54e53b3d7 Mon Sep 17 00:00:00 2001
From: Robert Jaros <rjaros@finn.pl>
Date: Mon, 8 Oct 2018 22:11:21 +0200
Subject: Better server class abstraction.

---
 .../kotlin/pl/treksoft/kvision/remote/Jooby.kt     | 123 ---------------------
 .../kotlin/pl/treksoft/kvision/remote/KVServer.kt  | 123 +++++++++++++++++++++
 .../pl/treksoft/kvision/remote/ServiceManager.kt   |   2 +-
 3 files changed, 124 insertions(+), 124 deletions(-)
 delete mode 100644 src/main/kotlin/pl/treksoft/kvision/remote/Jooby.kt
 create mode 100644 src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt

(limited to 'src/main/kotlin')

diff --git a/src/main/kotlin/pl/treksoft/kvision/remote/Jooby.kt b/src/main/kotlin/pl/treksoft/kvision/remote/Jooby.kt
deleted file mode 100644
index fcd6b0ab..00000000
--- a/src/main/kotlin/pl/treksoft/kvision/remote/Jooby.kt
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Copyright (c) 2017-present Robert Jaros
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-package pl.treksoft.kvision.remote
-
-import kotlinx.serialization.Serializable
-import kotlinx.serialization.Transient
-
-/**
- * A Jooby based server.
- * Not used on the js platform.
- */
-actual open class JoobyServer
-
-/**
- * A server request.
- * Not used on the js platform.
- */
-actual interface Request
-
-/**
- * A user profile.
- */
-@Serializable
-actual data class Profile(
-    val id: String? = null,
-    val attributes: MutableMap<String, String> = mutableMapOf(),
-    val authenticationAttributes: MutableMap<String, String> = mutableMapOf(),
-    val roles: MutableSet<String> = mutableSetOf(),
-    val permissions: MutableSet<String> = mutableSetOf(),
-    val linkedId: String? = null,
-    val remembered: Boolean = false,
-    val clientName: String? = null
-) {
-    @Transient
-    var username: String?
-        get() = attributes["username"]
-        set(value) {
-            if (value != null) {
-                attributes["username"] = value
-            } else {
-                attributes.remove("username")
-            }
-        }
-    @Transient
-    var firstName: String?
-        get() = attributes["first_name"]
-        set(value) {
-            if (value != null) {
-                attributes["first_name"] = value
-            } else {
-                attributes.remove("first_name")
-            }
-        }
-    @Transient
-    var familyName: String?
-        get() = attributes["family_name"]
-        set(value) {
-            if (value != null) {
-                attributes["family_name"] = value
-            } else {
-                attributes.remove("family_name")
-            }
-        }
-    @Transient
-    var displayName: String?
-        get() = attributes["display_name"]
-        set(value) {
-            if (value != null) {
-                attributes["display_name"] = value
-            } else {
-                attributes.remove("display_name")
-            }
-        }
-    @Transient
-    var email: String?
-        get() = attributes["email"]
-        set(value) {
-            if (value != null) {
-                attributes["email"] = value
-            } else {
-                attributes.remove("email")
-            }
-        }
-    @Transient
-    var pictureUrl: String?
-        get() = attributes["picture_url"]
-        set(value) {
-            if (value != null) {
-                attributes["picture_url"] = value
-            } else {
-                attributes.remove("picture_url")
-            }
-        }
-    @Transient
-    var profileUrl: String?
-        get() = attributes["profile_url"]
-        set(value) {
-            if (value != null) {
-                attributes["profile_url"] = value
-            } else {
-                attributes.remove("profile_url")
-            }
-        }
-}
diff --git a/src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt b/src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt
new file mode 100644
index 00000000..a1cc40ca
--- /dev/null
+++ b/src/main/kotlin/pl/treksoft/kvision/remote/KVServer.kt
@@ -0,0 +1,123 @@
+/*
+ * Copyright (c) 2017-present Robert Jaros
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+package pl.treksoft.kvision.remote
+
+import kotlinx.serialization.Serializable
+import kotlinx.serialization.Transient
+
+/**
+ * A server.
+ * Not used on the js platform.
+ */
+actual open class KVServer
+
+/**
+ * A server request.
+ * Not used on the js platform.
+ */
+actual interface Request
+
+/**
+ * A user profile.
+ */
+@Serializable
+actual data class Profile(
+    val id: String? = null,
+    val attributes: MutableMap<String, String> = mutableMapOf(),
+    val authenticationAttributes: MutableMap<String, String> = mutableMapOf(),
+    val roles: MutableSet<String> = mutableSetOf(),
+    val permissions: MutableSet<String> = mutableSetOf(),
+    val linkedId: String? = null,
+    val remembered: Boolean = false,
+    val clientName: String? = null
+) {
+    @Transient
+    var username: String?
+        get() = attributes["username"]
+        set(value) {
+            if (value != null) {
+                attributes["username"] = value
+            } else {
+                attributes.remove("username")
+            }
+        }
+    @Transient
+    var firstName: String?
+        get() = attributes["first_name"]
+        set(value) {
+            if (value != null) {
+                attributes["first_name"] = value
+            } else {
+                attributes.remove("first_name")
+            }
+        }
+    @Transient
+    var familyName: String?
+        get() = attributes["family_name"]
+        set(value) {
+            if (value != null) {
+                attributes["family_name"] = value
+            } else {
+                attributes.remove("family_name")
+            }
+        }
+    @Transient
+    var displayName: String?
+        get() = attributes["display_name"]
+        set(value) {
+            if (value != null) {
+                attributes["display_name"] = value
+            } else {
+                attributes.remove("display_name")
+            }
+        }
+    @Transient
+    var email: String?
+        get() = attributes["email"]
+        set(value) {
+            if (value != null) {
+                attributes["email"] = value
+            } else {
+                attributes.remove("email")
+            }
+        }
+    @Transient
+    var pictureUrl: String?
+        get() = attributes["picture_url"]
+        set(value) {
+            if (value != null) {
+                attributes["picture_url"] = value
+            } else {
+                attributes.remove("picture_url")
+            }
+        }
+    @Transient
+    var profileUrl: String?
+        get() = attributes["profile_url"]
+        set(value) {
+            if (value != null) {
+                attributes["profile_url"] = value
+            } else {
+                attributes.remove("profile_url")
+            }
+        }
+}
diff --git a/src/main/kotlin/pl/treksoft/kvision/remote/ServiceManager.kt b/src/main/kotlin/pl/treksoft/kvision/remote/ServiceManager.kt
index 961bf176..c6487494 100644
--- a/src/main/kotlin/pl/treksoft/kvision/remote/ServiceManager.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/remote/ServiceManager.kt
@@ -127,7 +127,7 @@ actual open class ServiceManager<out T> actual constructor(service: T) {
      * Applies all defined routes to the given server.
      * Not used on the js platform.
      */
-    actual fun applyRoutes(k: JoobyServer) {
+    actual fun applyRoutes(k: KVServer) {
     }
 
     /**
-- 
cgit