From d335afb686013ec16ccf866758e26dd755cdfc7e Mon Sep 17 00:00:00 2001 From: Torsten Grote <t@grobox.de> Date: Mon, 9 Aug 2021 10:14:07 +0200 Subject: [PATCH] Move webserver to core --- mailbox-android/build.gradle | 5 ----- .../org/briarproject/mailbox/android/MailboxService.kt | 3 ++- mailbox-core/build.gradle | 8 ++++++++ .../java/org/briarproject/mailbox/core}/server/Routing.kt | 5 ++--- .../briarproject/mailbox/core}/server/WebServerManager.kt | 8 ++------ 5 files changed, 14 insertions(+), 15 deletions(-) rename {mailbox-android/src/main/java/org/briarproject/mailbox/android => mailbox-core/src/main/java/org/briarproject/mailbox/core}/server/Routing.kt (65%) rename {mailbox-android/src/main/java/org/briarproject/mailbox/android => mailbox-core/src/main/java/org/briarproject/mailbox/core}/server/WebServerManager.kt (80%) diff --git a/mailbox-android/build.gradle b/mailbox-android/build.gradle index 983da37d..ca37ef77 100644 --- a/mailbox-android/build.gradle +++ b/mailbox-android/build.gradle @@ -66,11 +66,6 @@ dependencies { def multidex_version = "2.0.1" implementation "androidx.multidex:multidex:$multidex_version" - def ktorVersion = '1.6.2' - implementation "io.ktor:ktor-server-core:$ktorVersion" - implementation "io.ktor:ktor-server-netty:$ktorVersion" - implementation "ch.qos.logback:logback-classic:1.2.5" - testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.3' diff --git a/mailbox-android/src/main/java/org/briarproject/mailbox/android/MailboxService.kt b/mailbox-android/src/main/java/org/briarproject/mailbox/android/MailboxService.kt index 6c9505fc..b3b91e01 100644 --- a/mailbox-android/src/main/java/org/briarproject/mailbox/android/MailboxService.kt +++ b/mailbox-android/src/main/java/org/briarproject/mailbox/android/MailboxService.kt @@ -7,7 +7,7 @@ import android.os.IBinder import androidx.core.content.ContextCompat import dagger.hilt.android.AndroidEntryPoint import org.briarproject.mailbox.android.MailboxNotificationManager.Companion.NOTIFICATION_MAIN_ID -import org.briarproject.mailbox.server.WebServerManager +import org.briarproject.mailbox.core.server.WebServerManager import javax.inject.Inject @AndroidEntryPoint @@ -27,6 +27,7 @@ class MailboxService : Service() { @Inject internal lateinit var notificationManager: MailboxNotificationManager + @Inject internal lateinit var webServerManager: WebServerManager diff --git a/mailbox-core/build.gradle b/mailbox-core/build.gradle index b6229d20..b61ec076 100644 --- a/mailbox-core/build.gradle +++ b/mailbox-core/build.gradle @@ -11,6 +11,14 @@ targetCompatibility = 1.8 dependencies { api "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" + implementation "com.google.dagger:dagger:$hilt_version" + kapt "com.google.dagger:dagger-compiler:$hilt_version" + + def ktorVersion = '1.6.2' + implementation "io.ktor:ktor-server-core:$ktorVersion" + implementation "io.ktor:ktor-server-netty:$ktorVersion" + implementation "ch.qos.logback:logback-classic:1.2.5" + testImplementation "org.junit.jupiter:junit-jupiter-api:$junit_version" testImplementation "org.junit.jupiter:junit-jupiter-params:$junit_version" testImplementation "org.junit.jupiter:junit-jupiter-engine:$junit_version" diff --git a/mailbox-android/src/main/java/org/briarproject/mailbox/android/server/Routing.kt b/mailbox-core/src/main/java/org/briarproject/mailbox/core/server/Routing.kt similarity index 65% rename from mailbox-android/src/main/java/org/briarproject/mailbox/android/server/Routing.kt rename to mailbox-core/src/main/java/org/briarproject/mailbox/core/server/Routing.kt index 0225cdc7..f4c9829b 100644 --- a/mailbox-android/src/main/java/org/briarproject/mailbox/android/server/Routing.kt +++ b/mailbox-core/src/main/java/org/briarproject/mailbox/core/server/Routing.kt @@ -1,6 +1,5 @@ -package org.briarproject.mailbox.server +package org.briarproject.mailbox.core.server -import android.os.Build import io.ktor.application.Application import io.ktor.application.call import io.ktor.http.ContentType @@ -10,6 +9,6 @@ import io.ktor.routing.routing internal fun Application.configureRouting() = routing { get("/") { - call.respondText("All good here in ${Build.MODEL}", ContentType.Text.Plain) + call.respondText("Hello world!", ContentType.Text.Plain) } } diff --git a/mailbox-android/src/main/java/org/briarproject/mailbox/android/server/WebServerManager.kt b/mailbox-core/src/main/java/org/briarproject/mailbox/core/server/WebServerManager.kt similarity index 80% rename from mailbox-android/src/main/java/org/briarproject/mailbox/android/server/WebServerManager.kt rename to mailbox-core/src/main/java/org/briarproject/mailbox/core/server/WebServerManager.kt index 13c5afc2..3466ed1c 100644 --- a/mailbox-android/src/main/java/org/briarproject/mailbox/android/server/WebServerManager.kt +++ b/mailbox-core/src/main/java/org/briarproject/mailbox/core/server/WebServerManager.kt @@ -1,7 +1,5 @@ -package org.briarproject.mailbox.server +package org.briarproject.mailbox.core.server -import android.content.Context -import dagger.hilt.android.qualifiers.ApplicationContext import io.ktor.application.install import io.ktor.features.CallLogging import io.ktor.server.engine.embeddedServer @@ -14,9 +12,7 @@ import javax.inject.Inject import javax.inject.Singleton @Singleton -internal class WebServerManager @Inject constructor( - @ApplicationContext private val ctx: Context, -) { +class WebServerManager @Inject constructor() { internal companion object { private const val PORT = 8888 -- GitLab