From 03c687def5096aa84350e89c40f34bf9eb1bb6b5 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sat, 1 Dec 2018 17:36:14 -0800 Subject: [PATCH 001/114] Unit tests for NockNotificationManager --- app/build.gradle | 1 + .../com/afollestad/nocknock/NockNockApp.kt | 16 +- dependencies.gradle | 1 + engine/build.gradle | 1 + .../nocknock/engine/db/ServerModelStore.kt | 21 +-- .../engine/statuscheck/BootReceiver.kt | 11 +- .../engine/statuscheck/CheckStatusJob.kt | 9 +- .../engine/statuscheck/CheckStatusManager.kt | 11 +- notifications/build.gradle | 1 + .../nocknock/notifications/Channel.kt | 15 -- .../notifications/NockNotificationManager.kt | 51 +++--- .../nocknock/notifications/Notification.kt | 24 --- .../notifications/ExampleUnitTest.java | 17 -- .../NockNotificationManagerTest.kt | 151 ++++++++++++++++++ utilities/build.gradle | 1 + .../nocknock/utilities/UtilitiesModule.kt | 24 +++ .../nocknock/utilities/js/JavaScript.kt | 11 -- .../providers/NotificationChannelProvider.kt | 45 ++++++ .../providers/NotificationProvider.kt | 52 ++++++ .../utilities/providers/SdkProvider.kt | 22 +++ .../nocknock/utilities/util/SdkUtil.kt | 11 -- 21 files changed, 333 insertions(+), 163 deletions(-) delete mode 100644 notifications/src/main/java/com/afollestad/nocknock/notifications/Notification.kt delete mode 100644 notifications/src/test/java/com/afollestad/nocknock/notifications/ExampleUnitTest.java create mode 100644 notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt create mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt create mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt create mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt delete mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/util/SdkUtil.kt diff --git a/app/build.gradle b/app/build.gradle index d9184e1..aad5e53 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -35,6 +35,7 @@ dependencies { implementation 'com.afollestad.material-dialogs:core:' + versions.materialDialogs + implementation 'com.jakewharton.timber:timber:' + versions.timber testImplementation 'junit:junit:' + versions.junit testImplementation 'org.mockito:mockito-core:' + versions.mockito testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:' + versions.mockitoKotlin diff --git a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt index 5370d4b..f50be42 100644 --- a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt +++ b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt @@ -6,7 +6,6 @@ package com.afollestad.nocknock import android.app.Application -import android.util.Log import com.afollestad.nocknock.di.AppComponent import com.afollestad.nocknock.di.DaggerAppComponent import com.afollestad.nocknock.engine.statuscheck.BootReceiver @@ -18,19 +17,14 @@ import com.afollestad.nocknock.ui.viewsite.ViewSiteActivity import com.afollestad.nocknock.utilities.Injector import com.afollestad.nocknock.utilities.ext.systemService import okhttp3.OkHttpClient +import timber.log.Timber +import timber.log.Timber.DebugTree import javax.inject.Inject +import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ class NockNockApp : Application(), Injector { - companion object { - private fun log(message: String) { - if (BuildConfig.DEBUG) { - Log.d("NockNockApp", message) - } - } - } - private lateinit var appComponent: AppComponent @Inject lateinit var nockNotificationManager: NockNotificationManager @@ -39,6 +33,10 @@ class NockNockApp : Application(), Injector { override fun onCreate() { super.onCreate() + if (BuildConfig.DEBUG) { + Timber.plant(DebugTree()) + } + val okHttpClient = OkHttpClient.Builder() .addNetworkInterceptor { chain -> val request = chain.request() diff --git a/dependencies.gradle b/dependencies.gradle index 7f63786..46a4a43 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -22,6 +22,7 @@ ext.versions = [ materialDialogs : '2.0.0-rc3', rxkPrefs : '1.2.0', + timber : '4.7.1', junit : '4.12', mockito : '2.23.0', mockitoKotlin : '2.0.0-RC1', diff --git a/engine/build.gradle b/engine/build.gradle index ae51e07..c26b99b 100644 --- a/engine/build.gradle +++ b/engine/build.gradle @@ -27,6 +27,7 @@ dependencies { implementation 'com.google.dagger:dagger:' + versions.dagger kapt 'com.google.dagger:dagger-compiler:' + versions.dagger + implementation 'com.jakewharton.timber:timber:' + versions.timber testImplementation 'junit:junit:' + versions.junit testImplementation 'org.mockito:mockito-core:' + versions.mockito testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:' + versions.mockitoKotlin diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt index e5050d2..cd40c5a 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt @@ -7,13 +7,13 @@ package com.afollestad.nocknock.engine.db import android.app.Application import android.database.Cursor -import android.util.Log import com.afollestad.nocknock.data.ServerModel import com.afollestad.nocknock.data.ServerModel.Companion.COLUMN_ID import com.afollestad.nocknock.data.ServerModel.Companion.DEFAULT_SORT_ORDER import com.afollestad.nocknock.data.ServerModel.Companion.TABLE_NAME -import com.afollestad.nocknock.engine.BuildConfig import com.afollestad.nocknock.utilities.ext.diffFrom +import timber.log.Timber.d as log +import timber.log.Timber.w as warn import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ @@ -35,21 +35,6 @@ interface ServerModelStore { /** @author Aidan Follestad (@afollestad) */ class RealServerModelStore @Inject constructor(app: Application) : ServerModelStore { - companion object { - private fun log( - message: String, - warning: Boolean = false - ) { - if (BuildConfig.DEBUG) { - if (warning) { - Log.w("ServerModelStore", message) - } else { - Log.d("ServerModelStore", message) - } - } - } - } - private val dbHelper = ServerModelDbHelper(app) override suspend fun get(id: Int?): List { @@ -115,7 +100,7 @@ class RealServerModelStore @Inject constructor(app: Application) : ServerModelSt val valuesDiff = oldValues.diffFrom(newValues) if (valuesDiff.size() == 0) { - log("Nothing has changed - nothing to update!", warning = true) + warn("Nothing has changed - nothing to update!") return 0 } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt index 558779d..accc18d 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt @@ -9,8 +9,6 @@ import android.content.BroadcastReceiver import android.content.Context import android.content.Intent import android.content.Intent.ACTION_BOOT_COMPLETED -import android.util.Log -import com.afollestad.nocknock.engine.BuildConfig import com.afollestad.nocknock.utilities.ext.injector import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Dispatchers.Main @@ -18,18 +16,11 @@ import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.async import kotlinx.coroutines.launch import javax.inject.Inject +import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ class BootReceiver : BroadcastReceiver() { - companion object { - private fun log(message: String) { - if (BuildConfig.DEBUG) { - Log.d("BootReceiver", message) - } - } - } - @Inject lateinit var checkStatusManager: CheckStatusManager override fun onReceive( diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt index 0a7d3fe..d7f6e80 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt @@ -8,7 +8,6 @@ package com.afollestad.nocknock.engine.statuscheck import android.app.job.JobParameters import android.app.job.JobService import android.content.Intent -import android.util.Log import com.afollestad.nocknock.data.ServerModel import com.afollestad.nocknock.data.ServerStatus import com.afollestad.nocknock.data.ServerStatus.CHECKING @@ -21,7 +20,6 @@ import com.afollestad.nocknock.data.isPending import com.afollestad.nocknock.engine.BuildConfig.APPLICATION_ID import com.afollestad.nocknock.engine.db.ServerModelStore import com.afollestad.nocknock.notifications.NockNotificationManager -import com.afollestad.nocknock.utilities.BuildConfig import com.afollestad.nocknock.utilities.ext.injector import com.afollestad.nocknock.utilities.js.JavaScript import kotlinx.coroutines.Dispatchers.IO @@ -32,6 +30,7 @@ import kotlinx.coroutines.launch import kotlinx.coroutines.withContext import java.lang.System.currentTimeMillis import javax.inject.Inject +import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad)*/ class CheckStatusJob : JobService() { @@ -41,12 +40,6 @@ class CheckStatusJob : JobService() { const val ACTION_JOB_RUNNING = "$APPLICATION_ID.STATUS_JOB_RUNNING" const val KEY_UPDATE_MODEL = "site_model" const val KEY_SITE_ID = "site.id" - - private fun log(message: String) { - if (BuildConfig.DEBUG) { - Log.d("CheckStatusJob", message) - } - } } @Inject lateinit var modelStore: ServerModelStore diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt index 5af52d1..11e21a4 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt @@ -10,20 +10,19 @@ import android.app.job.JobInfo.NETWORK_TYPE_ANY import android.app.job.JobScheduler import android.app.job.JobScheduler.RESULT_SUCCESS import android.os.PersistableBundle -import android.util.Log import com.afollestad.nocknock.data.ServerModel import com.afollestad.nocknock.data.ServerStatus.ERROR import com.afollestad.nocknock.data.ServerStatus.OK import com.afollestad.nocknock.engine.R import com.afollestad.nocknock.engine.db.ServerModelStore import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_SITE_ID -import com.afollestad.nocknock.utilities.BuildConfig import com.afollestad.nocknock.utilities.providers.StringProvider import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.Response import java.net.SocketTimeoutException import javax.inject.Inject +import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ data class CheckResult( @@ -56,14 +55,6 @@ class RealCheckStatusManager @Inject constructor( private val siteStore: ServerModelStore ) : CheckStatusManager { - companion object { - private fun log(message: String) { - if (BuildConfig.DEBUG) { - Log.d("CheckStatusManager", message) - } - } - } - override suspend fun ensureScheduledChecks() { val sites = siteStore.get() if (sites.isEmpty()) { diff --git a/notifications/build.gradle b/notifications/build.gradle index e3d7838..9578137 100644 --- a/notifications/build.gradle +++ b/notifications/build.gradle @@ -26,6 +26,7 @@ dependencies { implementation 'com.google.dagger:dagger:' + versions.dagger kapt 'com.google.dagger:dagger-compiler:' + versions.dagger + implementation 'com.jakewharton.timber:timber:' + versions.timber testImplementation 'junit:junit:' + versions.junit testImplementation 'org.mockito:mockito-core:' + versions.mockito testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:' + versions.mockitoKotlin diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt index 4865efc..1510489 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt @@ -5,10 +5,6 @@ */ package com.afollestad.nocknock.notifications -import android.app.NotificationChannel -import android.content.Context -import android.os.Build.VERSION_CODES -import androidx.annotation.RequiresApi import androidx.core.app.NotificationManagerCompat.IMPORTANCE_DEFAULT /** @author Aidan Follestad (@afollestad) */ @@ -25,14 +21,3 @@ enum class Channel( importance = IMPORTANCE_DEFAULT ) } - -/** @author Aidan Follestad (@afollestad) */ -@RequiresApi(VERSION_CODES.O) -fun Channel.toNotificationChannel(context: Context): NotificationChannel { - val titleText = context.getString(this.title) - val descriptionText = context.getString(this.description) - return NotificationChannel(this.id, titleText, this.importance) - .apply { - description = descriptionText - } -} diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt index 295c2ec..589cf9f 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt @@ -6,20 +6,19 @@ package com.afollestad.nocknock.notifications import android.annotation.TargetApi -import android.app.Application import android.app.NotificationManager import android.os.Build.VERSION_CODES -import android.util.Log -import androidx.core.app.NotificationCompat.DEFAULT_VIBRATE import com.afollestad.nocknock.data.ServerModel import com.afollestad.nocknock.notifications.Channel.CheckFailures import com.afollestad.nocknock.utilities.providers.BitmapProvider import com.afollestad.nocknock.utilities.providers.IntentProvider +import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider +import com.afollestad.nocknock.utilities.providers.NotificationProvider import com.afollestad.nocknock.utilities.providers.RealIntentProvider.Companion.BASE_NOTIFICATION_REQUEST_CODE import com.afollestad.nocknock.utilities.providers.StringProvider import com.afollestad.nocknock.utilities.qualifiers.AppIconRes -import com.afollestad.nocknock.utilities.util.hasOreo import javax.inject.Inject +import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ interface NockNotificationManager { @@ -37,22 +36,15 @@ interface NockNotificationManager { /** @author Aidan Follestad (@afollestad) */ class RealNockNotificationManager @Inject constructor( - private val app: Application, @AppIconRes private val appIconRes: Int, private val stockManager: NotificationManager, private val bitmapProvider: BitmapProvider, private val stringProvider: StringProvider, - private val intentProvider: IntentProvider + private val intentProvider: IntentProvider, + private val channelProvider: NotificationChannelProvider, + private val notificationProvider: NotificationProvider ) : NockNotificationManager { - companion object { - private fun log(message: String) { - if (BuildConfig.DEBUG) { - Log.d("NockNotificationManager", message) - } - } - } - private var isAppOpen = false override fun setIsAppOpen(open: Boolean) { @@ -73,15 +65,14 @@ class RealNockNotificationManager @Inject constructor( log("Posting status notification for site ${model.id}...") val intent = intentProvider.getPendingIntentForViewSite(model) - val newNotification = notification(app, CheckFailures) { - setContentTitle(model.name) - setContentText(stringProvider.get(R.string.something_wrong)) - setContentIntent(intent) - setSmallIcon(R.drawable.ic_notification) - setLargeIcon(bitmapProvider.get(appIconRes)) - setAutoCancel(true) - setDefaults(DEFAULT_VIBRATE) - } + val newNotification = notificationProvider.create( + channelId = CheckFailures.id, + title = model.name, + content = stringProvider.get(R.string.something_wrong), + intent = intent, + smallIcon = R.drawable.ic_notification, + largeIcon = bitmapProvider.get(appIconRes) + ) stockManager.notify(model.url, model.notificationId(), newNotification) log("Posted status notification for site ${model.notificationId()}.") @@ -96,13 +87,13 @@ class RealNockNotificationManager @Inject constructor( @TargetApi(VERSION_CODES.O) private fun createChannel(channel: Channel) { - if (!hasOreo()) { - log("Not running Android O, channels won't be created.") - return - } - - val notificationChannel = channel.toNotificationChannel(app) - stockManager.createNotificationChannel(notificationChannel) + val notificationChannel = channelProvider.create( + id = channel.id, + title = stringProvider.get(channel.title), + description = stringProvider.get(channel.description), + importance = channel.importance + ) + notificationChannel?.let(stockManager::createNotificationChannel) log("Created notification channel ${channel.id}") } diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/Notification.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/Notification.kt deleted file mode 100644 index aeb24f2..0000000 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/Notification.kt +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Licensed under Apache-2.0 - * - * Designed and developed by Aidan Follestad (@afollestad) - */ -package com.afollestad.nocknock.notifications - -import android.app.Notification -import android.content.Context -import androidx.core.app.NotificationCompat - -typealias NotificationBuilder = NotificationCompat.Builder -typealias NotificationConstructor = NotificationBuilder.() -> Unit - -/** @author Aidan Follestad (@afollestad) */ -fun notification( - context: Context, - channel: Channel, - builder: NotificationConstructor -): Notification { - val newNotification = NotificationCompat.Builder(context, channel.id) - builder(newNotification) - return newNotification.build() -} diff --git a/notifications/src/test/java/com/afollestad/nocknock/notifications/ExampleUnitTest.java b/notifications/src/test/java/com/afollestad/nocknock/notifications/ExampleUnitTest.java deleted file mode 100644 index 8af7ccc..0000000 --- a/notifications/src/test/java/com/afollestad/nocknock/notifications/ExampleUnitTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.afollestad.nocknock.notifications; - -import static org.junit.Assert.*; - -import org.junit.Test; - -/** - * Example local unit test, which will execute on the development machine (host). - * - * @see Testing documentation - */ -public class ExampleUnitTest { - @Test - public void addition_isCorrect() { - assertEquals(4, 2 + 2); - } -} diff --git a/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt b/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt new file mode 100644 index 0000000..362274d --- /dev/null +++ b/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt @@ -0,0 +1,151 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.notifications + +import android.app.Notification +import android.app.NotificationChannel +import android.app.NotificationManager +import android.app.PendingIntent +import android.graphics.Bitmap +import com.afollestad.nocknock.data.ServerModel +import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.notifications.Channel.CheckFailures +import com.afollestad.nocknock.utilities.providers.BitmapProvider +import com.afollestad.nocknock.utilities.providers.IntentProvider +import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider +import com.afollestad.nocknock.utilities.providers.NotificationProvider +import com.afollestad.nocknock.utilities.providers.RealIntentProvider.Companion.BASE_NOTIFICATION_REQUEST_CODE +import com.afollestad.nocknock.utilities.providers.StringProvider +import com.google.common.truth.Truth.assertThat +import com.nhaarman.mockitokotlin2.any +import com.nhaarman.mockitokotlin2.argumentCaptor +import com.nhaarman.mockitokotlin2.doAnswer +import com.nhaarman.mockitokotlin2.doReturn +import com.nhaarman.mockitokotlin2.mock +import com.nhaarman.mockitokotlin2.times +import com.nhaarman.mockitokotlin2.verify +import com.nhaarman.mockitokotlin2.verifyNoMoreInteractions +import com.nhaarman.mockitokotlin2.whenever +import org.junit.Before +import org.junit.Test + +class NockNotificationManagerTest { + + private val appIconRes = 1024 + private val somethingWentWrong = "something went wrong" + + private val stockManager = mock() + private val appIcon = mock() + private val bitmapProvider = mock { + on { get(appIconRes) } doReturn appIcon + } + private val stringProvider = mock { + on { get(R.string.something_wrong) } doReturn somethingWentWrong + } + private val intentProvider = mock() + private val channelProvider = mock() + private val notificationProvider = mock() + + private val manager = RealNockNotificationManager( + appIconRes, + stockManager, + bitmapProvider, + stringProvider, + intentProvider, + channelProvider, + notificationProvider + ) + + @Before fun setup() { + whenever(channelProvider.create(any(), any(), any(), any())).doAnswer { inv -> + val id = inv.getArgument(0) + val title = inv.getArgument(1) + val description = inv.getArgument(2) + val important = inv.getArgument(3) + return@doAnswer mock { + on { this.id } doReturn id + on { this.name } doReturn title + on { this.description } doReturn description + on { this.importance } doReturn important + } + } + } + + @Test fun createChannels() { + whenever(stringProvider.get(any())).doReturn("") + val createdChannel = mock { + on { this.id } doReturn CheckFailures.id + } + whenever(channelProvider.create(any(), any(), any(), any())) + .doReturn(createdChannel) + manager.createChannels() + + val captor = argumentCaptor() + verify(stockManager, times(1)).createNotificationChannel(captor.capture()) + + val channel = captor.allValues.single() + assertThat(channel.id).isEqualTo(CheckFailures.id) + + verifyNoMoreInteractions(stockManager) + } + + @Test fun postStatusNotification_appIsOpen() { + manager.setIsAppOpen(true) + manager.postStatusNotification(fakeModel()) + + verifyNoMoreInteractions(stockManager) + } + + @Test fun postStatusNotification_appNotOpen() { + manager.setIsAppOpen(false) + val model = fakeModel() + + val pendingIntent = mock() + whenever(intentProvider.getPendingIntentForViewSite(model)) + .doReturn(pendingIntent) + + val notification = mock() + whenever( + notificationProvider.create( + CheckFailures.id, + model.name, + somethingWentWrong, + pendingIntent, + R.drawable.ic_notification, + appIcon + ) + ).doReturn(notification) + + manager.postStatusNotification(model) + + verify(stockManager).notify( + model.url, + BASE_NOTIFICATION_REQUEST_CODE + model.id, + notification + ) + verifyNoMoreInteractions(stockManager) + } + + @Test fun cancelStatusNotification() { + val model = fakeModel() + manager.cancelStatusNotification(model) + verify(stockManager).cancel(BASE_NOTIFICATION_REQUEST_CODE + model.id) + verifyNoMoreInteractions(stockManager) + } + + @Test fun cancelStatusNotifications() { + manager.cancelStatusNotifications() + verify(stockManager).cancelAll() + verifyNoMoreInteractions(stockManager) + } + + private fun fakeModel() = ServerModel( + id = 1, + url = "https://hello.com", + name = "Testing", + validationMode = STATUS_CODE + ) +} diff --git a/utilities/build.gradle b/utilities/build.gradle index 627bbfc..433cdf4 100644 --- a/utilities/build.gradle +++ b/utilities/build.gradle @@ -20,6 +20,7 @@ android { dependencies { implementation 'androidx.annotation:annotation:' + versions.androidx + implementation 'androidx.appcompat:appcompat:' + versions.androidx implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:' + versions.kotlin api 'org.jetbrains.kotlinx:kotlinx-coroutines-core:' + versions.coroutines diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt index af4a35a..6e7defe 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt @@ -7,9 +7,15 @@ package com.afollestad.nocknock.utilities import com.afollestad.nocknock.utilities.providers.BitmapProvider import com.afollestad.nocknock.utilities.providers.IntentProvider +import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider +import com.afollestad.nocknock.utilities.providers.NotificationProvider import com.afollestad.nocknock.utilities.providers.RealBitmapProvider import com.afollestad.nocknock.utilities.providers.RealIntentProvider +import com.afollestad.nocknock.utilities.providers.RealNotificationChannelProvider +import com.afollestad.nocknock.utilities.providers.RealNotificationProvider +import com.afollestad.nocknock.utilities.providers.RealSdkProvider import com.afollestad.nocknock.utilities.providers.RealStringProvider +import com.afollestad.nocknock.utilities.providers.SdkProvider import com.afollestad.nocknock.utilities.providers.StringProvider import dagger.Binds import dagger.Module @@ -19,6 +25,12 @@ import javax.inject.Singleton @Module abstract class UtilitiesModule { + @Binds + @Singleton + abstract fun provideSdkProvider( + sdkProvider: RealSdkProvider + ): SdkProvider + @Binds @Singleton abstract fun provideBitmapProvider( @@ -36,4 +48,16 @@ abstract class UtilitiesModule { abstract fun provideIntentProvider( intentProvider: RealIntentProvider ): IntentProvider + + @Binds + @Singleton + abstract fun provideChannelProvider( + channelProvider: RealNotificationChannelProvider + ): NotificationChannelProvider + + @Binds + @Singleton + abstract fun provideNotificationProvider( + notificationProvider: RealNotificationProvider + ): NotificationProvider } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt index 7e25f1c..6d735e2 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt @@ -5,8 +5,6 @@ */ package com.afollestad.nocknock.utilities.js -import android.util.Log -import com.afollestad.nocknock.utilities.BuildConfig import org.mozilla.javascript.Context import org.mozilla.javascript.EvaluatorException import org.mozilla.javascript.Function @@ -62,9 +60,6 @@ object JavaScript { } } - log( - "Evaluated to $message ($success): $code" - ) return if (!success) message else null } finally { Context.exit() @@ -73,10 +68,4 @@ object JavaScript { return e.message } } - - private fun log(message: String) { - if (BuildConfig.DEBUG) { - Log.d("JavaScript", message) - } - } } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt new file mode 100644 index 0000000..694ef8a --- /dev/null +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt @@ -0,0 +1,45 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.utilities.providers + +import android.annotation.TargetApi +import android.app.NotificationChannel +import android.os.Build.VERSION_CODES +import javax.inject.Inject + +/** @author Aidan Follestad (@afollestad) */ +interface NotificationChannelProvider { + + /** @return null if the device doesn't have Android O. */ + fun create( + id: String, + title: String, + description: String, + importance: Int + ): NotificationChannel? +} + +/** @author Aidan Follestad (@afollestad) */ +class RealNotificationChannelProvider @Inject constructor( + private val sdkProvider: SdkProvider +) : NotificationChannelProvider { + + @TargetApi(VERSION_CODES.O) + override fun create( + id: String, + title: String, + description: String, + importance: Int + ): NotificationChannel? { + if (!sdkProvider.hasOreo()) { + return null + } + return NotificationChannel(id, title, importance) + .apply { + this.description = description + } + } +} diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt new file mode 100644 index 0000000..68f162f --- /dev/null +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt @@ -0,0 +1,52 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.utilities.providers + +import android.app.Application +import android.app.Notification +import android.app.PendingIntent +import android.graphics.Bitmap +import androidx.core.app.NotificationCompat +import androidx.core.app.NotificationCompat.DEFAULT_VIBRATE +import javax.inject.Inject + +/** @author Aidan Follestad (@afollestad) */ +interface NotificationProvider { + + fun create( + channelId: String, + title: String, + content: String, + intent: PendingIntent, + smallIcon: Int, + largeIcon: Bitmap + ): Notification +} + +/** @author Aidan Follestad (@afollestad) */ +class RealNotificationProvider @Inject constructor( + private val app: Application +) : NotificationProvider { + + override fun create( + channelId: String, + title: String, + content: String, + intent: PendingIntent, + smallIcon: Int, + largeIcon: Bitmap + ): Notification { + return NotificationCompat.Builder(app, channelId) + .setContentTitle(title) + .setContentText(content) + .setContentIntent(intent) + .setSmallIcon(smallIcon) + .setLargeIcon(largeIcon) + .setAutoCancel(true) + .setDefaults(DEFAULT_VIBRATE) + .build() + } +} diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt new file mode 100644 index 0000000..5c1ea7c --- /dev/null +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt @@ -0,0 +1,22 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.utilities.providers + +import android.os.Build.VERSION.SDK_INT +import android.os.Build.VERSION_CODES.O +import javax.inject.Inject + +/** @author Aidan Follestad (@afollestad) */ +interface SdkProvider { + + fun hasOreo(): Boolean +} + +/** @author Aidan Follestad (@afollestad) */ +class RealSdkProvider @Inject constructor() : SdkProvider { + + override fun hasOreo() = SDK_INT >= O +} diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/util/SdkUtil.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/util/SdkUtil.kt deleted file mode 100644 index 4078558..0000000 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/util/SdkUtil.kt +++ /dev/null @@ -1,11 +0,0 @@ -/* - * Licensed under Apache-2.0 - * - * Designed and developed by Aidan Follestad (@afollestad) - */ -package com.afollestad.nocknock.utilities.util - -import android.os.Build.VERSION.SDK_INT -import android.os.Build.VERSION_CODES.O - -fun hasOreo() = SDK_INT >= O From b8dd2c0d24467320433c74d2f017b9c54f9cb025 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sat, 1 Dec 2018 18:21:14 -0800 Subject: [PATCH 002/114] Instrumentation tests for ServerModelStore --- dependencies.gradle | 1 + engine/build.gradle | 5 + .../nocknock/engine/ServerModelStoreTest.kt | 119 ++++++++++++++++++ .../nocknock/engine/db/ServerModelDbHelper.kt | 5 + .../nocknock/engine/db/ServerModelStore.kt | 5 +- 5 files changed, 134 insertions(+), 1 deletion(-) create mode 100644 engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt diff --git a/dependencies.gradle b/dependencies.gradle index 46a4a43..2879f24 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -23,6 +23,7 @@ ext.versions = [ rxkPrefs : '1.2.0', timber : '4.7.1', + testRunner : '1.0.2', junit : '4.12', mockito : '2.23.0', mockitoKotlin : '2.0.0-RC1', diff --git a/engine/build.gradle b/engine/build.gradle index c26b99b..7267354 100644 --- a/engine/build.gradle +++ b/engine/build.gradle @@ -10,6 +10,8 @@ android { targetSdkVersion versions.compileSdk versionCode versions.publishVersionCode versionName versions.publishVersion + + testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } } @@ -32,6 +34,9 @@ dependencies { testImplementation 'org.mockito:mockito-core:' + versions.mockito testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:' + versions.mockitoKotlin testImplementation 'com.google.truth:truth:' + versions.truth + + androidTestImplementation 'com.android.support.test:runner:' + versions.testRunner + androidTestImplementation 'com.google.truth:truth:' + versions.truth } apply from: '../spotless.gradle' \ No newline at end of file diff --git a/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt b/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt new file mode 100644 index 0000000..eebf2f3 --- /dev/null +++ b/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt @@ -0,0 +1,119 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.engine + +import android.app.Application +import android.support.test.runner.AndroidJUnit4 +import com.afollestad.nocknock.data.ServerModel +import com.afollestad.nocknock.data.ServerStatus.CHECKING +import com.afollestad.nocknock.data.ServerStatus.ERROR +import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.engine.db.RealServerModelStore +import com.google.common.truth.Truth.assertThat +import kotlinx.coroutines.runBlocking +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith +import android.support.test.InstrumentationRegistry.getTargetContext as context + +@RunWith(AndroidJUnit4::class) +class ServerModelStoreTest { + + private lateinit var store: RealServerModelStore + + @Before fun setup() { + store = RealServerModelStore(context().applicationContext as Application) + store.db() + .wipe() + } + + @Test fun get() = runBlocking { + // Put some fake data to retrieve + store.put(fakeModel(1)) + val model2 = store.put(fakeModel(2)) + + val model = store.get(2) + .single() + assertThat(model).isEqualTo(model2.copy(id = 2)) + } + + @Test fun getAll() = runBlocking { + // Put some fake data to retrieve + val model1 = store.put(fakeModel(1)) + val model2 = store.put(fakeModel(2)) + + val models = store.get() + assertThat(models.size).isEqualTo(2) + assertThat(models[0]).isEqualTo(model1.copy(id = 1)) + assertThat(models[1]).isEqualTo(model2.copy(id = 2)) + } + + @Test fun update() = runBlocking { + store.put( + ServerModel( + name = "Wakanda Forever", + url = "https://www.wakanda.gov", + status = ERROR, + checkInterval = 5, + lastCheck = 10, + reason = "Body doesn't contain your term.", + validationMode = TERM_SEARCH, + validationContent = "Vibranium", + disabled = false + ) + ) + store.put(fakeModel(2)) + + val originalModel1 = store.get(id = 1) + .single() + + val defaultJs = "var responseObj = JSON.parse(response);\\nreturn responseObj.success === true;" + val newModel1 = originalModel1.copy( + name = "HYDRA", + url = "https://www.hyrda.dict", + status = CHECKING, + checkInterval = 10, + lastCheck = 20, + reason = "Evaluation failed.", + validationMode = JAVASCRIPT, + validationContent = defaultJs, + disabled = true + ) + assertThat(store.update(newModel1)).isEqualTo(1) + + val newModels = store.get() + assertThat(newModels.size).isEqualTo(2) + assertThat(newModels.first()).isEqualTo(newModel1) + } + + @Test fun delete() = runBlocking { + // Put some fake data to delete + val model1 = store.put(fakeModel(1)) + val model2 = store.put(fakeModel(2)) + + assertThat(store.delete(model1)).isEqualTo(1) + + val newModels = store.get() + assertThat(newModels.single()).isEqualTo(model2) + } + + @Test fun deleteAll() = runBlocking { + // Put some fake data to delete + store.put(fakeModel(1)) + store.put(fakeModel(2)) + + store.deleteAll() + assertThat(store.get()).isEmpty() + } + + private fun fakeModel(index: Int) = ServerModel( + name = "Model $index", + url = "https://hello.com/$index", + validationMode = STATUS_CODE + ) +} diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt index 42bc88a..4caaca1 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt @@ -52,4 +52,9 @@ class ServerModelDbHelper(context: Context) : SQLiteOpenHelper( oldVersion: Int, newVersion: Int ) = onUpgrade(db, oldVersion, newVersion) + + fun wipe() { + this.writableDatabase.execSQL(SQL_DELETE_ENTRIES) + onCreate(this.writableDatabase) + } } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt index cd40c5a..e96ed70 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt @@ -12,9 +12,10 @@ import com.afollestad.nocknock.data.ServerModel.Companion.COLUMN_ID import com.afollestad.nocknock.data.ServerModel.Companion.DEFAULT_SORT_ORDER import com.afollestad.nocknock.data.ServerModel.Companion.TABLE_NAME import com.afollestad.nocknock.utilities.ext.diffFrom +import org.jetbrains.annotations.TestOnly +import javax.inject.Inject import timber.log.Timber.d as log import timber.log.Timber.w as warn -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ interface ServerModelStore { @@ -128,6 +129,8 @@ class RealServerModelStore @Inject constructor(app: Application) : ServerModelSt return dbHelper.writableDatabase.delete(TABLE_NAME, null, null) } + @TestOnly fun db() = dbHelper + private fun readModels(cursor: Cursor): List { val results = mutableListOf() while (cursor.moveToNext()) { From 14a86568e6cae7d732012386f08785642d9d1305 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sat, 1 Dec 2018 19:58:09 -0800 Subject: [PATCH 003/114] Unit tests for CheckStatusManager --- .../engine/statuscheck/CheckStatusManager.kt | 38 +-- .../nocknock/engine/statuscheck/JobInfo.kt | 25 -- .../nocknock/engine/CheckStatusManagerTest.kt | 291 ++++++++++++++++++ .../afollestad/nocknock/engine/TestUtil.kt | 58 ++++ .../nocknock/utilities/UtilitiesModule.kt | 16 + .../utilities/providers/BundleProvider.kt | 39 +++ .../utilities/providers/JobInfoProvider.kt | 53 ++++ 7 files changed, 474 insertions(+), 46 deletions(-) delete mode 100644 engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/JobInfo.kt create mode 100644 engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt create mode 100644 engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt create mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt create mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt index 11e21a4..39e22fd 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt @@ -5,17 +5,16 @@ */ package com.afollestad.nocknock.engine.statuscheck -import android.app.Application -import android.app.job.JobInfo.NETWORK_TYPE_ANY import android.app.job.JobScheduler import android.app.job.JobScheduler.RESULT_SUCCESS -import android.os.PersistableBundle import com.afollestad.nocknock.data.ServerModel import com.afollestad.nocknock.data.ServerStatus.ERROR import com.afollestad.nocknock.data.ServerStatus.OK import com.afollestad.nocknock.engine.R import com.afollestad.nocknock.engine.db.ServerModelStore import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_SITE_ID +import com.afollestad.nocknock.utilities.providers.BundleProvider +import com.afollestad.nocknock.utilities.providers.JobInfoProvider import com.afollestad.nocknock.utilities.providers.StringProvider import okhttp3.OkHttpClient import okhttp3.Request @@ -38,7 +37,7 @@ interface CheckStatusManager { fun scheduleCheck( site: ServerModel, rightNow: Boolean = false, - cancelPrevious: Boolean = false, + cancelPrevious: Boolean = rightNow, fromFinishingJob: Boolean = false ) @@ -48,10 +47,11 @@ interface CheckStatusManager { } class RealCheckStatusManager @Inject constructor( - private val app: Application, private val jobScheduler: JobScheduler, private val okHttpClient: OkHttpClient, private val stringProvider: StringProvider, + private val bundleProvider: BundleProvider, + private val jobInfoProvider: JobInfoProvider, private val siteStore: ServerModelStore ) : CheckStatusManager { @@ -90,25 +90,21 @@ class RealCheckStatusManager @Inject constructor( } log("Requesting a check job for site to be scheduled: $site") - val extras = PersistableBundle().apply { + val extras = bundleProvider.createPersistable { putInt(KEY_SITE_ID, site.id) } + val jobInfo = jobInfoProvider.createCheckJob( + id = site.id, + onlyUnmeteredNetwork = false, + delayMs = if (rightNow) { + 1 + } else { + site.checkInterval + }, + extras = extras, + target = CheckStatusJob::class.java + ) - // Note: we don't use the periodic feature of JobScheduler because it requires a - // minimum of 15 minutes between each execution which may not be what's requested by the - // user of the app. - val jobInfo = jobInfo(app, site.id, CheckStatusJob::class.java) { - setRequiredNetworkType(NETWORK_TYPE_ANY) - if (rightNow) { - log(">> Job for site ${site.id} should be executed now") - setMinimumLatency(1) - } else { - log(">> Job for site ${site.id} should be in ${site.checkInterval}ms") - setMinimumLatency(site.checkInterval) - } - setExtras(extras) - setPersisted(true) - } val dispatchResult = jobScheduler.schedule(jobInfo) if (dispatchResult != RESULT_SUCCESS) { log("Failed to schedule a check job for site: ${site.id}") diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/JobInfo.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/JobInfo.kt deleted file mode 100644 index e13cac2..0000000 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/JobInfo.kt +++ /dev/null @@ -1,25 +0,0 @@ -/* - * Licensed under Apache-2.0 - * - * Designed and developed by Aidan Follestad (@afollestad) - */ -package com.afollestad.nocknock.engine.statuscheck - -import android.app.job.JobInfo -import android.app.job.JobService -import android.content.ComponentName -import android.content.Context - -typealias JobInfoBuilder = JobInfo.Builder - -fun jobInfo( - context: Context, - id: Int, - target: Class, - exec: JobInfoBuilder.() -> JobInfoBuilder -): JobInfo { - val component = ComponentName(context, target) - val builder = JobInfo.Builder(id, component) - exec(builder) - return builder.build() -} diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt new file mode 100644 index 0000000..d931a50 --- /dev/null +++ b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt @@ -0,0 +1,291 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.engine + +import android.app.job.JobInfo +import android.app.job.JobScheduler +import com.afollestad.nocknock.data.ServerModel +import com.afollestad.nocknock.data.ServerStatus.ERROR +import com.afollestad.nocknock.data.ServerStatus.OK +import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.engine.db.ServerModelStore +import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_SITE_ID +import com.afollestad.nocknock.engine.statuscheck.RealCheckStatusManager +import com.afollestad.nocknock.utilities.providers.StringProvider +import com.google.common.truth.Truth.assertThat +import com.nhaarman.mockitokotlin2.any +import com.nhaarman.mockitokotlin2.argumentCaptor +import com.nhaarman.mockitokotlin2.doAnswer +import com.nhaarman.mockitokotlin2.doReturn +import com.nhaarman.mockitokotlin2.mock +import com.nhaarman.mockitokotlin2.never +import com.nhaarman.mockitokotlin2.verify +import com.nhaarman.mockitokotlin2.verifyNoMoreInteractions +import com.nhaarman.mockitokotlin2.whenever +import kotlinx.coroutines.runBlocking +import okhttp3.Call +import okhttp3.OkHttpClient +import okhttp3.Protocol.HTTP_2 +import okhttp3.Request +import okhttp3.Response +import okhttp3.ResponseBody +import org.junit.Test +import java.net.SocketTimeoutException + +class CheckStatusManagerTest { + + private val timeoutError = "Oh no, a timeout" + + private val jobScheduler = mock() + private val okHttpClient = mock() + private val stringProvider = mock { + on { get(R.string.timeout) } doReturn timeoutError + } + private val bundleProvider = testBundleProvider() + private val jobInfoProvider = testJobInfoProvider() + private val store = mock() + + private val manager = RealCheckStatusManager( + jobScheduler, + okHttpClient, + stringProvider, + bundleProvider, + jobInfoProvider, + store + ) + + @Test fun ensureScheduledChecks_noEnabledSites() = runBlocking { + val model1 = fakeModel().copy(disabled = true) + whenever(store.get()).doReturn(listOf(model1)) + + manager.ensureScheduledChecks() + + verifyNoMoreInteractions(jobScheduler) + } + + @Test fun ensureScheduledChecks_sitesAlreadyHaveJobs() = runBlocking { + val model1 = fakeModel() + val job1 = fakeJob(model1.id) + whenever(store.get()).doReturn(listOf(model1)) + whenever(jobScheduler.allPendingJobs).doReturn(listOf(job1)) + + manager.ensureScheduledChecks() + + verify(jobScheduler, never()).schedule(any()) + } + + @Test fun ensureScheduledChecks() = runBlocking { + val model1 = fakeModel() + whenever(store.get()).doReturn(listOf(model1)) + whenever(jobScheduler.allPendingJobs).doReturn(listOf()) + + manager.ensureScheduledChecks() + + val jobCaptor = argumentCaptor() + verify(jobScheduler).schedule(jobCaptor.capture()) + val jobInfo = jobCaptor.allValues.single() + assertThat(jobInfo.id).isEqualTo(model1.id) + assertThat(jobInfo.extras.getInt(KEY_SITE_ID)).isEqualTo(model1.id) + } + + @Test fun scheduleCheck_rightNow() { + val model1 = fakeModel() + whenever(jobScheduler.allPendingJobs).doReturn(listOf()) + + manager.scheduleCheck( + site = model1, + rightNow = true + ) + + val jobCaptor = argumentCaptor() + verify(jobScheduler).schedule(jobCaptor.capture()) + verify(jobScheduler).cancel(model1.id) + + val jobInfo = jobCaptor.allValues.single() + assertThat(jobInfo.id).isEqualTo(model1.id) + assertThat(jobInfo.extras.getInt(KEY_SITE_ID)).isEqualTo(model1.id) + } + + @Test(expected = IllegalStateException::class) + fun scheduleCheck_notFromFinishingJob_haveExistingJob() { + val model1 = fakeModel() + val job1 = fakeJob(model1.id) + whenever(jobScheduler.allPendingJobs).doReturn(listOf(job1)) + + manager.scheduleCheck( + site = model1, + fromFinishingJob = false + ) + } + + @Test fun scheduleCheck_fromFinishingJob_haveExistingJob() { + val model1 = fakeModel() + val job1 = fakeJob(model1.id) + whenever(jobScheduler.allPendingJobs).doReturn(listOf(job1)) + + manager.scheduleCheck( + site = model1, + fromFinishingJob = true + ) + + val jobCaptor = argumentCaptor() + verify(jobScheduler).schedule(jobCaptor.capture()) + verify(jobScheduler, never()).cancel(model1.id) + + val jobInfo = jobCaptor.allValues.single() + assertThat(jobInfo.id).isEqualTo(model1.id) + assertThat(jobInfo.extras.getInt(KEY_SITE_ID)).isEqualTo(model1.id) + } + + @Test fun scheduleCheck() { + val model1 = fakeModel() + whenever(jobScheduler.allPendingJobs).doReturn(listOf()) + + manager.scheduleCheck( + site = model1, + fromFinishingJob = true + ) + + val jobCaptor = argumentCaptor() + verify(jobScheduler).schedule(jobCaptor.capture()) + verify(jobScheduler, never()).cancel(model1.id) + + val jobInfo = jobCaptor.allValues.single() + assertThat(jobInfo.id).isEqualTo(model1.id) + assertThat(jobInfo.extras.getInt(KEY_SITE_ID)).isEqualTo(model1.id) + } + + @Test fun cancelCheck() { + val model1 = fakeModel() + manager.cancelCheck(model1) + verify(jobScheduler).cancel(model1.id) + } + + @Test fun performCheck_httpNotSuccess() = runBlocking { + val response = fakeResponse(500, "Internal Server Error", "Hello World") + val call = mock { + on { execute() } doReturn response + } + whenever(okHttpClient.newCall(any())).doReturn(call) + + val model1 = fakeModel() + val result = manager.performCheck(model1) + + assertThat(result.model).isEqualTo( + model1.copy( + status = ERROR, + reason = "Response 500 - Hello World" + ) + ) + } + + @Test fun performCheck_socketTimeout() = runBlocking { + val error = SocketTimeoutException("Oh no!") + val call = mock { + on { execute() } doAnswer { throw error } + } + whenever(okHttpClient.newCall(any())).doReturn(call) + + val model1 = fakeModel() + val result = manager.performCheck(model1) + + assertThat(result.model).isEqualTo( + model1.copy( + status = ERROR, + reason = timeoutError + ) + ) + } + + @Test fun performCheck_exception() = runBlocking { + val error = Exception("Oh no!") + val call = mock { + on { execute() } doAnswer { throw error } + } + whenever(okHttpClient.newCall(any())).doReturn(call) + + val model1 = fakeModel() + val result = manager.performCheck(model1) + + assertThat(result.model).isEqualTo( + model1.copy( + status = ERROR, + reason = "Oh no!" + ) + ) + } + + @Test fun performCheck_success() = runBlocking { + val response = fakeResponse(200, "OK", "Hello World") + val call = mock { + on { execute() } doReturn response + } + whenever(okHttpClient.newCall(any())).doReturn(call) + + val model1 = fakeModel() + val result = manager.performCheck(model1) + + assertThat(result.model).isEqualTo( + model1.copy( + status = OK, + reason = null + ) + ) + } + + @Test fun performCheck_401_butStillSuccess() = runBlocking { + val response = fakeResponse(401, "Unauthorized", "Hello World") + val call = mock { + on { execute() } doReturn response + } + whenever(okHttpClient.newCall(any())).doReturn(call) + + val model1 = fakeModel() + val result = manager.performCheck(model1) + + assertThat(result.model).isEqualTo( + model1.copy( + status = OK, + reason = null + ) + ) + } + + private fun fakeResponse( + code: Int, + message: String, + body: String? + ): Response { + val responseBody = if (body != null) { + ResponseBody.create(null, body) + } else { + null + } + val request = Request.Builder() + .url("https://placeholder.com") + .build() + return Response.Builder() + .protocol(HTTP_2) + .request(request) + .message(message) + .code(code) + .body(responseBody) + .build() + } + + private fun fakeModel() = ServerModel( + id = 1, + name = "Wakanda Forever", + url = "https://www.wakanda.gov", + validationMode = STATUS_CODE + ) + + private fun fakeJob(id: Int): JobInfo { + return mock { + on { this.id } doReturn id + } + } +} diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt b/engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt new file mode 100644 index 0000000..e71219d --- /dev/null +++ b/engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt @@ -0,0 +1,58 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.engine + +import android.app.job.JobInfo +import android.content.ComponentName +import android.os.PersistableBundle +import com.afollestad.nocknock.utilities.providers.BundleProvider +import com.afollestad.nocknock.utilities.providers.IBundle +import com.afollestad.nocknock.utilities.providers.IBundler +import com.afollestad.nocknock.utilities.providers.JobInfoProvider +import com.nhaarman.mockitokotlin2.any +import com.nhaarman.mockitokotlin2.doAnswer +import com.nhaarman.mockitokotlin2.doReturn +import com.nhaarman.mockitokotlin2.mock +import com.nhaarman.mockitokotlin2.whenever + +fun testBundleProvider(): BundleProvider { + val provider = mock() + whenever(provider.createPersistable(any())).doAnswer { + val realBundle = mock() + val creator = it.getArgument(0) + creator(object : IBundle { + override fun putInt( + key: String, + value: Int + ) { + whenever(realBundle.getInt(key)).doReturn(value) + } + }) + return@doAnswer realBundle + } + return provider +} + +fun testJobInfoProvider(): JobInfoProvider { + val provider = mock() + whenever(provider.createCheckJob(any(), any(), any(), any(), any())).doAnswer { inv -> + val jobInfo = mock() + val id = inv.getArgument(0) + val delay = inv.getArgument(2) + val extras = inv.getArgument(3) + val target = inv.getArgument>(4) + val component = mock() + whenever(component.className).doReturn(target.name) + + whenever(jobInfo.id).doReturn(id) + whenever(jobInfo.minLatencyMillis).doReturn(delay) + whenever(jobInfo.extras).doReturn(extras) + whenever(jobInfo.service).doReturn(component) + + return@doAnswer jobInfo + } + return provider +} diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt index 6e7defe..03e77b9 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt @@ -6,11 +6,15 @@ package com.afollestad.nocknock.utilities import com.afollestad.nocknock.utilities.providers.BitmapProvider +import com.afollestad.nocknock.utilities.providers.BundleProvider import com.afollestad.nocknock.utilities.providers.IntentProvider +import com.afollestad.nocknock.utilities.providers.JobInfoProvider import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider import com.afollestad.nocknock.utilities.providers.NotificationProvider import com.afollestad.nocknock.utilities.providers.RealBitmapProvider +import com.afollestad.nocknock.utilities.providers.RealBundleProvider import com.afollestad.nocknock.utilities.providers.RealIntentProvider +import com.afollestad.nocknock.utilities.providers.RealJobInfoProvider import com.afollestad.nocknock.utilities.providers.RealNotificationChannelProvider import com.afollestad.nocknock.utilities.providers.RealNotificationProvider import com.afollestad.nocknock.utilities.providers.RealSdkProvider @@ -60,4 +64,16 @@ abstract class UtilitiesModule { abstract fun provideNotificationProvider( notificationProvider: RealNotificationProvider ): NotificationProvider + + @Binds + @Singleton + abstract fun provideBundleProvider( + bundleProvider: RealBundleProvider + ): BundleProvider + + @Binds + @Singleton + abstract fun provideJobInfoProvider( + jobInfoProvider: RealJobInfoProvider + ): JobInfoProvider } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt new file mode 100644 index 0000000..1185723 --- /dev/null +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt @@ -0,0 +1,39 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.utilities.providers + +import android.os.PersistableBundle +import javax.inject.Inject + +interface IBundle { + fun putInt( + key: String, + value: Int + ) +} + +typealias IBundler = IBundle.() -> Unit + +/** @author Aidan Follestad (@afollestad) */ +interface BundleProvider { + + fun createPersistable(builder: IBundle.() -> Unit): PersistableBundle +} + +/** @author Aidan Follestad (@afollestad) */ +class RealBundleProvider @Inject constructor() : BundleProvider { + + override fun createPersistable(bundler: IBundler): PersistableBundle { + val realBundle = PersistableBundle() + bundler(object : IBundle { + override fun putInt( + key: String, + value: Int + ) = realBundle.putInt(key, value) + }) + return realBundle + } +} diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt new file mode 100644 index 0000000..4b188de --- /dev/null +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt @@ -0,0 +1,53 @@ +/* + * Licensed under Apache-2.0 + * + * Designed and developed by Aidan Follestad (@afollestad) + */ +package com.afollestad.nocknock.utilities.providers + +import android.app.Application +import android.app.job.JobInfo +import android.app.job.JobInfo.NETWORK_TYPE_ANY +import android.app.job.JobInfo.NETWORK_TYPE_UNMETERED +import android.content.ComponentName +import android.os.PersistableBundle +import javax.inject.Inject + +interface JobInfoProvider { + + fun createCheckJob( + id: Int, + onlyUnmeteredNetwork: Boolean, + delayMs: Long, + extras: PersistableBundle, + target: Class<*> + ): JobInfo +} + +class RealJobInfoProvider @Inject constructor( + private val app: Application +) : JobInfoProvider { + + // Note: we don't use the periodic feature of JobScheduler because it requires a + // minimum of 15 minutes between each execution which may not be what's requested by the + // user of the app. + override fun createCheckJob( + id: Int, + onlyUnmeteredNetwork: Boolean, + delayMs: Long, + extras: PersistableBundle, + target: Class<*> + ): JobInfo { + val component = ComponentName(app, target) + val networkType = if (onlyUnmeteredNetwork) { + NETWORK_TYPE_UNMETERED + } else { + NETWORK_TYPE_ANY + } + return JobInfo.Builder(id, component) + .setRequiredNetworkType(networkType) + .setMinimumLatency(delayMs) + .setExtras(extras) + .build() + } +} From 8a1816c3e86b6ef5e5d4d2935e461c631778c5d1 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sat, 1 Dec 2018 20:03:13 -0800 Subject: [PATCH 004/114] Update .travis.ci for Codecov --- .travis.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.travis.yml b/.travis.yml index c1eda38..c353445 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,8 @@ language: android +env: + - CODECOV_TOKEN=bfdfe8e9-af1c-454f-aa27-87291922866e +after_success: + - bash <(curl -s https://codecov.io/bash) jdk: oraclejdk8 android: components: From 92878c875e0081e9242d89af96dbdefc5eab194c Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sat, 1 Dec 2018 20:44:18 -0800 Subject: [PATCH 005/114] Fix ViewPresenterTest --- .../java/com/afollestad/nocknock/ViewSitePresenterTest.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt index 5ad8e3b..d938966 100644 --- a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt @@ -63,7 +63,7 @@ class ViewSitePresenterTest { }.whenever(view) .scopeWhileAttached(any(), any()) - val model = fakeModel().copy(lastCheck = 0) + val model = fakeModel() val intent = fakeIntent("") whenever(intent.getSerializableExtra(KEY_VIEW_MODEL)) .doReturn(model) @@ -80,7 +80,7 @@ class ViewSitePresenterTest { val badIntent = fakeIntent("Hello World") presenter.onBroadcast(badIntent) - val model = fakeModel() + val model = fakeModel().copy(lastCheck = 0) val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) whenever(goodIntent.getSerializableExtra(KEY_UPDATE_MODEL)) .doReturn(model) @@ -94,7 +94,7 @@ class ViewSitePresenterTest { val badIntent = fakeIntent(ACTION_STATUS_UPDATE) presenter.onBroadcast(badIntent) - val model = fakeModel() + val model = fakeModel().copy(lastCheck = 0) val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) whenever(goodIntent.getSerializableExtra(KEY_VIEW_MODEL)) .doReturn(model) @@ -358,4 +358,4 @@ class ViewSitePresenterTest { on { getAction() } doReturn action } } -} +} \ No newline at end of file From 7e46b84d08af752fceadbd8d6434ee7892b15758 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sat, 1 Dec 2018 21:00:04 -0800 Subject: [PATCH 006/114] Undid changes to .travis.yml for now --- .travis.yml | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/.travis.yml b/.travis.yml index c353445..f96029e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,4 @@ language: android -env: - - CODECOV_TOKEN=bfdfe8e9-af1c-454f-aa27-87291922866e -after_success: - - bash <(curl -s https://codecov.io/bash) jdk: oraclejdk8 android: components: @@ -14,13 +10,5 @@ android: - extra-android-m2repository - extra-google-m2repository - # Additional components - #- extra-google-google_play_services - #- addon-google_apis-google-19 - - # Specify at least one system image, if you need to run emulator(s) during your tests - #- sys-img-armeabi-v7a-android-19 - #- sys-img-x86-android-17 - licenses: - '.+' From 62ef385b659eff2105ec1634015a8df414adcc33 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sun, 2 Dec 2018 13:36:46 -0800 Subject: [PATCH 007/114] Configurable response timeouts, resolves #31 --- .../nocknock/ui/addsite/AddSiteActivity.kt | 11 ++++- .../nocknock/ui/addsite/AddSitePresenter.kt | 17 +++++--- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 13 +++++- .../nocknock/ui/viewsite/ViewSitePresenter.kt | 17 +++++--- app/src/main/res/layout/activity_addsite.xml | 22 ++++++++++ app/src/main/res/layout/activity_viewsite.xml | 22 ++++++++++ app/src/main/res/values/strings.xml | 4 ++ .../nocknock/AddSitePresenterTest.kt | 40 ++++++++++++++---- .../nocknock/ViewSitePresenterTest.kt | 42 +++++++++++++++---- .../afollestad/nocknock/data/ServerModel.kt | 8 +++- .../nocknock/engine/db/ServerModelDbHelper.kt | 14 +++++-- .../engine/statuscheck/CheckStatusManager.kt | 19 ++++++++- .../nocknock/engine/CheckStatusManagerTest.kt | 12 +++++- .../nocknock/utilities/ext/TimeExt.kt | 10 ++++- .../viewcomponents/ext/TextViewExt.kt | 9 +++- 15 files changed, 220 insertions(+), 40 deletions(-) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt index 65e71c8..ab9f933 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt @@ -22,12 +22,14 @@ import com.afollestad.nocknock.viewcomponents.ext.conceal import com.afollestad.nocknock.viewcomponents.ext.onItemSelected import com.afollestad.nocknock.viewcomponents.ext.onLayout import com.afollestad.nocknock.viewcomponents.ext.showOrHide +import com.afollestad.nocknock.viewcomponents.ext.textAsInt import com.afollestad.nocknock.viewcomponents.ext.trimmedText import kotlinx.android.synthetic.main.activity_addsite.checkIntervalLayout import kotlinx.android.synthetic.main.activity_addsite.doneBtn import kotlinx.android.synthetic.main.activity_addsite.inputName import kotlinx.android.synthetic.main.activity_addsite.inputUrl import kotlinx.android.synthetic.main.activity_addsite.loadingProgress +import kotlinx.android.synthetic.main.activity_addsite.responseTimeoutInput import kotlinx.android.synthetic.main.activity_addsite.responseValidationMode import kotlinx.android.synthetic.main.activity_addsite.responseValidationSearchTerm import kotlinx.android.synthetic.main.activity_addsite.rootView @@ -99,6 +101,7 @@ class AddSiteActivity : AppCompatActivity(), AddSiteView { val checkInterval = checkIntervalLayout.getSelectedCheckInterval() val validationMode = responseValidationMode.selectedItemPosition.indexToValidationMode() + val defaultTimeout = getString(R.string.response_timeout_default).toInt() isClosing = true presenter.commit( @@ -106,7 +109,8 @@ class AddSiteActivity : AppCompatActivity(), AddSiteView { url = inputUrl.trimmedText(), checkInterval = checkInterval, validationMode = validationMode, - validationContent = validationMode.validationContent() + validationContent = validationMode.validationContent(), + networkTimeout = responseTimeoutInput.textAsInt(defaultValue = defaultTimeout) ) } } @@ -165,6 +169,11 @@ class AddSiteActivity : AppCompatActivity(), AddSiteView { null } ) + responseTimeoutInput.error = if (errors.networkTimeout != null) { + getString(errors.networkTimeout!!) + } else { + null + } } override fun onSiteAdded() { diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt index 61e1b7e..e95d379 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt @@ -27,11 +27,12 @@ data class InputErrors( var url: Int? = null, var checkInterval: Int? = null, var termSearch: Int? = null, - var javaScript: Int? = null + var javaScript: Int? = null, + var networkTimeout: Int? = null ) { @CheckResult fun any(): Boolean { return name != null || url != null || checkInterval != null || - termSearch != null || javaScript != null + termSearch != null || javaScript != null || networkTimeout != null } } @@ -52,7 +53,8 @@ interface AddSitePresenter { url: String, checkInterval: Long, validationMode: ValidationMode, - validationContent: String? + validationContent: String?, + networkTimeout: Int ) fun dropView() @@ -106,7 +108,8 @@ class RealAddSitePresenter @Inject constructor( url: String, checkInterval: Long, validationMode: ValidationMode, - validationContent: String? + validationContent: String?, + networkTimeout: Int ) { val inputErrors = InputErrors() @@ -126,6 +129,9 @@ class RealAddSitePresenter @Inject constructor( } else if (validationMode == JAVASCRIPT && validationContent.isNullOrEmpty()) { inputErrors.javaScript = R.string.please_enter_javaScript } + if (networkTimeout <= 0) { + inputErrors.networkTimeout = R.string.please_enter_networkTimeout + } if (inputErrors.any()) { view?.setInputErrors(inputErrors) @@ -138,7 +144,8 @@ class RealAddSitePresenter @Inject constructor( status = WAITING, checkInterval = checkInterval, validationMode = validationMode, - validationContent = validationContent + validationContent = validationContent, + networkTimeout = networkTimeout ) with(view!!) { diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index 59d2a69..c44510f 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -33,6 +33,7 @@ import com.afollestad.nocknock.viewcomponents.ext.dimenFloat import com.afollestad.nocknock.viewcomponents.ext.onItemSelected import com.afollestad.nocknock.viewcomponents.ext.onScroll import com.afollestad.nocknock.viewcomponents.ext.showOrHide +import com.afollestad.nocknock.viewcomponents.ext.textAsInt import com.afollestad.nocknock.viewcomponents.ext.trimmedText import kotlinx.android.synthetic.main.activity_viewsite.checkIntervalLayout import kotlinx.android.synthetic.main.activity_viewsite.disableChecksButton @@ -41,6 +42,7 @@ import kotlinx.android.synthetic.main.activity_viewsite.iconStatus import kotlinx.android.synthetic.main.activity_viewsite.inputName import kotlinx.android.synthetic.main.activity_viewsite.inputUrl import kotlinx.android.synthetic.main.activity_viewsite.loadingProgress +import kotlinx.android.synthetic.main.activity_viewsite.responseTimeoutInput import kotlinx.android.synthetic.main.activity_viewsite.responseValidationMode import kotlinx.android.synthetic.main.activity_viewsite.responseValidationSearchTerm import kotlinx.android.synthetic.main.activity_viewsite.rootView @@ -113,13 +115,15 @@ class ViewSiteActivity : AppCompatActivity(), ViewSiteView { val checkInterval = checkIntervalLayout.getSelectedCheckInterval() val validationMode = responseValidationMode.selectedItemPosition.indexToValidationMode() + val defaultTimeout = getString(R.string.response_timeout_default).toInt() presenter.commit( name = inputName.trimmedText(), url = inputUrl.trimmedText(), checkInterval = checkInterval, validationMode = validationMode, - validationContent = validationMode.validationContent() + validationContent = validationMode.validationContent(), + networkTimeout = responseTimeoutInput.textAsInt(defaultValue = defaultTimeout) ) } @@ -189,6 +193,8 @@ class ViewSiteActivity : AppCompatActivity(), ViewSiteView { } } + responseTimeoutInput.setText(model.networkTimeout.toString()) + disableChecksButton.showOrHide(!this.disabled) doneBtn.setText( if (this.disabled) R.string.renable_and_save_changes @@ -228,6 +234,11 @@ class ViewSiteActivity : AppCompatActivity(), ViewSiteView { null } ) + responseTimeoutInput.error = if (errors.networkTimeout != null) { + getString(errors.networkTimeout!!) + } else { + null + } } override fun scopeWhileAttached( diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt index 376b3c0..0241979 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt @@ -34,11 +34,12 @@ data class InputErrors( var url: Int? = null, var checkInterval: Int? = null, var termSearch: Int? = null, - var javaScript: Int? = null + var javaScript: Int? = null, + var networkTimeout: Int? = null ) { @CheckResult fun any(): Boolean { return name != null || url != null || checkInterval != null || - termSearch != null || javaScript != null + termSearch != null || javaScript != null || networkTimeout != null } } @@ -66,7 +67,8 @@ interface ViewSitePresenter { url: String, checkInterval: Long, validationMode: ValidationMode, - validationContent: String? + validationContent: String?, + networkTimeout: Int ) fun checkNow() @@ -151,7 +153,8 @@ class RealViewSitePresenter @Inject constructor( url: String, checkInterval: Long, validationMode: ValidationMode, - validationContent: String? + validationContent: String?, + networkTimeout: Int ) { val inputErrors = InputErrors() @@ -171,6 +174,9 @@ class RealViewSitePresenter @Inject constructor( } else if (validationMode == JAVASCRIPT && validationContent.isNullOrEmpty()) { inputErrors.javaScript = R.string.please_enter_javaScript } + if (networkTimeout <= 0) { + inputErrors.networkTimeout = R.string.please_enter_networkTimeout + } if (inputErrors.any()) { view?.setInputErrors(inputErrors) @@ -184,7 +190,8 @@ class RealViewSitePresenter @Inject constructor( checkInterval = checkInterval, validationMode = validationMode, validationContent = validationContent, - disabled = false + disabled = false, + networkTimeout = networkTimeout ) with(view!!) { diff --git a/app/src/main/res/layout/activity_addsite.xml b/app/src/main/res/layout/activity_addsite.xml index 90298cb..c19fba1 100644 --- a/app/src/main/res/layout/activity_addsite.xml +++ b/app/src/main/res/layout/activity_addsite.xml @@ -100,6 +100,28 @@ android:layout_marginTop="@dimen/content_inset" /> + + + + + + + + Please input a check interval. Please input a search term. Please input a validation script. + Please enter a network timeout greater than 0. Options Already checking sites! @@ -49,6 +50,9 @@ Disable Enable Checks & Save Changes + Network Response Timeout + 10000 + Refresh Status diff --git a/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt index 692c5ca..d1941eb 100644 --- a/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt @@ -113,7 +113,8 @@ class AddSitePresenterTest { "https://test.com", 1, STATUS_CODE, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -131,7 +132,8 @@ class AddSitePresenterTest { "", 1, STATUS_CODE, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -149,7 +151,8 @@ class AddSitePresenterTest { "ftp://hello.com", 1, STATUS_CODE, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -167,7 +170,8 @@ class AddSitePresenterTest { "https://hello.com", -1, STATUS_CODE, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -185,7 +189,8 @@ class AddSitePresenterTest { "https://hello.com", 1, TERM_SEARCH, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -197,13 +202,33 @@ class AddSitePresenterTest { assertThat(errors.termSearch).isEqualTo(R.string.please_enter_search_term) } + @Test fun commit_networkTimeout_error() { + presenter.commit( + "Testing", + "https://hello.com", + 1, + STATUS_CODE, + null, + 0 + ) + + val inputErrorsCaptor = argumentCaptor() + verify(view).setInputErrors(inputErrorsCaptor.capture()) + verify(checkStatusManager, never()) + .scheduleCheck(any(), any(), any(), any()) + + val errors = inputErrorsCaptor.firstValue + assertThat(errors.networkTimeout).isEqualTo(R.string.please_enter_networkTimeout) + } + @Test fun commit_javaScript_error() { presenter.commit( "Testing", "https://hello.com", 1, JAVASCRIPT, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -221,7 +246,8 @@ class AddSitePresenterTest { "https://hello.com", 1, STATUS_CODE, - null + null, + 60000 ) val modelCaptor = argumentCaptor() diff --git a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt index d938966..eb7b7f8 100644 --- a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt @@ -156,7 +156,8 @@ class ViewSitePresenterTest { "https://test.com", 1, STATUS_CODE, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -174,7 +175,8 @@ class ViewSitePresenterTest { "", 1, STATUS_CODE, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -192,7 +194,8 @@ class ViewSitePresenterTest { "ftp://hello.com", 1, STATUS_CODE, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -210,7 +213,8 @@ class ViewSitePresenterTest { "https://hello.com", -1, STATUS_CODE, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -228,7 +232,8 @@ class ViewSitePresenterTest { "https://hello.com", 1, TERM_SEARCH, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -246,7 +251,8 @@ class ViewSitePresenterTest { "https://hello.com", 1, JAVASCRIPT, - null + null, + 60000 ) val inputErrorsCaptor = argumentCaptor() @@ -258,6 +264,25 @@ class ViewSitePresenterTest { assertThat(errors.javaScript).isEqualTo(R.string.please_enter_javaScript) } + @Test fun commit_networkTimeout_error() { + presenter.commit( + "Testing", + "https://hello.com", + 1, + STATUS_CODE, + null, + 0 + ) + + val inputErrorsCaptor = argumentCaptor() + verify(view).setInputErrors(inputErrorsCaptor.capture()) + verify(checkStatusManager, never()) + .scheduleCheck(any(), any(), any(), any()) + + val errors = inputErrorsCaptor.firstValue + assertThat(errors.networkTimeout).isEqualTo(R.string.please_enter_networkTimeout) + } + @Test fun commit_success() = runBlocking { val name = "Testing" val url = "https://hello.com" @@ -274,7 +299,8 @@ class ViewSitePresenterTest { url, checkInterval, validationMode, - validationContent + validationContent, + 60000 ) val modelCaptor = argumentCaptor() @@ -358,4 +384,4 @@ class ViewSitePresenterTest { on { getAction() } doReturn action } } -} \ No newline at end of file +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt b/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt index ecba970..b98931f 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt @@ -27,7 +27,8 @@ data class ServerModel( val reason: String? = null, val validationMode: ValidationMode, val validationContent: String? = null, - val disabled: Boolean = false + val disabled: Boolean = false, + val networkTimeout: Int = 0 ) : IdProvider { companion object { @@ -42,6 +43,7 @@ data class ServerModel( const val COLUMN_VALIDATION_MODE = "validation_mode" const val COLUMN_VALIDATION_CONTENT = "validation_content" const val COLUMN_DISABLED = "disabled" + const val COLUMN_NETWORK_TIMEOUT = "network_timeout" const val DEFAULT_SORT_ORDER = "$COLUMN_NAME ASC, $COLUMN_DISABLED DESC" @@ -58,7 +60,8 @@ data class ServerModel( cursor.getColumnIndex(COLUMN_VALIDATION_MODE) ).toValidationMode(), validationContent = cursor.getString(cursor.getColumnIndex(COLUMN_VALIDATION_CONTENT)), - disabled = cursor.getInt(cursor.getColumnIndex(COLUMN_DISABLED)) == 1 + disabled = cursor.getInt(cursor.getColumnIndex(COLUMN_DISABLED)) == 1, + networkTimeout = cursor.getInt(cursor.getColumnIndex(COLUMN_NETWORK_TIMEOUT)) ) } } @@ -81,5 +84,6 @@ data class ServerModel( put(COLUMN_VALIDATION_MODE, validationMode.value) put(COLUMN_VALIDATION_CONTENT, validationContent) put(COLUMN_DISABLED, disabled) + put(COLUMN_NETWORK_TIMEOUT, networkTimeout) } } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt index 4caaca1..d1bff17 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt @@ -21,7 +21,9 @@ private const val SQL_CREATE_ENTRIES = "${ServerModel.COLUMN_REASON} TEXT," + "${ServerModel.COLUMN_VALIDATION_MODE} INTEGER," + "${ServerModel.COLUMN_VALIDATION_CONTENT} TEXT," + - "${ServerModel.COLUMN_DISABLED} INTEGER)" + "${ServerModel.COLUMN_DISABLED} INTEGER," + + "${ServerModel.COLUMN_NETWORK_TIMEOUT} INTEGER" + + ")" private const val SQL_DELETE_ENTRIES = "DROP TABLE IF EXISTS ${ServerModel.TABLE_NAME}" @@ -30,7 +32,7 @@ class ServerModelDbHelper(context: Context) : SQLiteOpenHelper( context, DATABASE_NAME, null, DATABASE_VERSION ) { companion object { - const val DATABASE_VERSION = 2 + const val DATABASE_VERSION = 3 const val DATABASE_NAME = "ServerModels.db" } @@ -43,8 +45,12 @@ class ServerModelDbHelper(context: Context) : SQLiteOpenHelper( oldVersion: Int, newVersion: Int ) { - db.execSQL(SQL_DELETE_ENTRIES) - onCreate(db) + if (newVersion == 3 && oldVersion == 2) { + db.execSQL( + "ALTER TABLE ${ServerModel.TABLE_NAME} " + + "ADD COLUMN ${ServerModel.COLUMN_NETWORK_TIMEOUT} INTEGER DEFAULT 10000" + ) + } } override fun onDowngrade( diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt index 39e22fd..7b0c68e 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt @@ -19,7 +19,9 @@ import com.afollestad.nocknock.utilities.providers.StringProvider import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.Response +import org.jetbrains.annotations.TestOnly import java.net.SocketTimeoutException +import java.util.concurrent.TimeUnit.MILLISECONDS import javax.inject.Inject import timber.log.Timber.d as log @@ -29,6 +31,8 @@ data class CheckResult( val response: Response? = null ) +typealias ClientTimeoutChanger = (client: OkHttpClient, timeout: Int) -> OkHttpClient + /** @author Aidan Follestad (@afollestad) */ interface CheckStatusManager { @@ -55,6 +59,12 @@ class RealCheckStatusManager @Inject constructor( private val siteStore: ServerModelStore ) : CheckStatusManager { + private var clientTimeoutChanger: ClientTimeoutChanger = { client, timeout -> + client.newBuilder() + .callTimeout(timeout.toLong(), MILLISECONDS) + .build() + } + override suspend fun ensureScheduledChecks() { val sites = siteStore.get() if (sites.isEmpty()) { @@ -121,6 +131,7 @@ class RealCheckStatusManager @Inject constructor( override suspend fun performCheck(site: ServerModel): CheckResult { check(site.id != 0) { "Cannot schedule checks for jobs with no ID." } + check(site.networkTimeout > 0) { "Network timeout not set for site ${site.id}" } log("performCheck(${site.id}) - GET ${site.url}") val request = Request.Builder() @@ -129,8 +140,10 @@ class RealCheckStatusManager @Inject constructor( .build() return try { - val response = okHttpClient.newCall(request) + val client = clientTimeoutChanger(okHttpClient, site.networkTimeout) + val response = client.newCall(request) .execute() + if (response.isSuccessful || response.code() == 401) { log("performCheck(${site.id}) = Successful") CheckResult( @@ -164,4 +177,8 @@ class RealCheckStatusManager @Inject constructor( private fun jobForSite(site: ServerModel) = jobScheduler.allPendingJobs .firstOrNull { job -> job.id == site.id } + + @TestOnly fun setClientTimeoutChanger(changer: ClientTimeoutChanger) { + this.clientTimeoutChanger = changer + } } diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt index d931a50..71e45bb 100644 --- a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt +++ b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt @@ -55,7 +55,12 @@ class CheckStatusManagerTest { bundleProvider, jobInfoProvider, store - ) + ).apply { + setClientTimeoutChanger { _, timeout -> + whenever(okHttpClient.callTimeoutMillis()).doReturn(timeout) + return@setClientTimeoutChanger okHttpClient + } + } @Test fun ensureScheduledChecks_noEnabledSites() = runBlocking { val model1 = fakeModel().copy(disabled = true) @@ -234,6 +239,8 @@ class CheckStatusManagerTest { reason = null ) ) + assertThat(okHttpClient.callTimeoutMillis()) + .isEqualTo(model1.networkTimeout) } @Test fun performCheck_401_butStillSuccess() = runBlocking { @@ -280,7 +287,8 @@ class CheckStatusManagerTest { id = 1, name = "Wakanda Forever", url = "https://www.wakanda.gov", - validationMode = STATUS_CODE + validationMode = STATUS_CODE, + networkTimeout = 60000 ) private fun fakeJob(id: Int): JobInfo { diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt index b3fdc20..e659d16 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt @@ -24,7 +24,13 @@ fun Long.timeString() = when { "${ceil((this.toFloat() / DAY.toFloat()).toDouble()).toInt()}d" this >= HOUR -> "${ceil((this.toFloat() / HOUR.toFloat()).toDouble()).toInt()}h" - this >= MINUTE -> - "${ceil((this.toFloat() / MINUTE.toFloat()).toDouble()).toInt()}m" + this >= MINUTE -> { + val result = "${ceil((this.toFloat() / MINUTE.toFloat()).toDouble()).toInt()}m" + if (result == "60m") { + "1h" + } else { + result + } + } else -> "<1m" } diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt index fc34583..533a8f1 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt @@ -9,9 +9,14 @@ import android.widget.TextView fun TextView.trimmedText() = text.toString().trim() -fun TextView.textAsLong(): Long { +fun TextView.textAsInt(defaultValue: Int = 0): Int { val text = trimmedText() - return if (text.isEmpty()) 0L else text.toLong() + return if (text.isEmpty()) defaultValue else text.toInt() +} + +fun TextView.textAsLong(defaultValue: Long = 0L): Long { + val text = trimmedText() + return if (text.isEmpty()) defaultValue else text.toLong() } ///** @author https://stackoverflow.com/a/53296137/309644 */ From 38d7bcb7f9e022177d6e12c53099f1daa28387eb Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sun, 2 Dec 2018 14:49:39 -0800 Subject: [PATCH 008/114] Change how ServerModelDbHelper does DB upgrade checks --- .../com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt index d1bff17..e12535f 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt @@ -45,7 +45,7 @@ class ServerModelDbHelper(context: Context) : SQLiteOpenHelper( oldVersion: Int, newVersion: Int ) { - if (newVersion == 3 && oldVersion == 2) { + if (oldVersion < 3) { db.execSQL( "ALTER TABLE ${ServerModel.TABLE_NAME} " + "ADD COLUMN ${ServerModel.COLUMN_NETWORK_TIMEOUT} INTEGER DEFAULT 10000" From f9711137b9c78e072787fd117361faa83b221f54 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Mon, 3 Dec 2018 10:36:34 -0800 Subject: [PATCH 009/114] Add AVD to Travis CI builder --- .idea/misc.xml | 2 +- .travis.yml | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index 06ee295..1a0fbc3 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -29,7 +29,7 @@ - + diff --git a/.travis.yml b/.travis.yml index f96029e..40a7b55 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,10 @@ language: android jdk: oraclejdk8 +before_script: + - echo no | android create avd --force -n test -t android-22 --abi armeabi-v7a + - emulator -avd test -no-audio -no-window & + - android-wait-for-emulator + - adb shell input keyevent 82 & android: components: - tools From cad589eebc9c43c8aecff4c83986f9ad8cbbb7a2 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Mon, 3 Dec 2018 12:45:11 -0800 Subject: [PATCH 010/114] Update license header --- .idea/misc.xml | 2 +- .../main/java/com/afollestad/nocknock/AppExt.kt | 16 +++++++++++++--- .../java/com/afollestad/nocknock/NockNockApp.kt | 16 +++++++++++++--- .../afollestad/nocknock/adapter/ServerAdapter.kt | 16 +++++++++++++--- .../com/afollestad/nocknock/di/AppComponent.kt | 16 +++++++++++++--- .../com/afollestad/nocknock/di/MainBindModule.kt | 16 +++++++++++++--- .../com/afollestad/nocknock/di/MainModule.kt | 16 +++++++++++++--- .../afollestad/nocknock/dialogs/AboutDialog.kt | 16 +++++++++++++--- .../nocknock/ui/addsite/AddSiteActivity.kt | 16 +++++++++++++--- .../nocknock/ui/addsite/AddSiteActivityExt.kt | 16 +++++++++++++--- .../nocknock/ui/addsite/AddSitePresenter.kt | 16 +++++++++++++--- .../nocknock/ui/addsite/AddSiteView.kt | 16 +++++++++++++--- .../afollestad/nocknock/ui/main/MainActivity.kt | 16 +++++++++++++--- .../nocknock/ui/main/MainActivityExt.kt | 16 +++++++++++++--- .../afollestad/nocknock/ui/main/MainPresenter.kt | 16 +++++++++++++--- .../com/afollestad/nocknock/ui/main/MainView.kt | 16 +++++++++++++--- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 16 +++++++++++++--- .../nocknock/ui/viewsite/ViewSiteActivityExt.kt | 16 +++++++++++++--- .../nocknock/ui/viewsite/ViewSitePresenter.kt | 16 +++++++++++++--- .../nocknock/ui/viewsite/ViewSiteView.kt | 16 +++++++++++++--- .../afollestad/nocknock/AddSitePresenterTest.kt | 16 +++++++++++++--- .../com/afollestad/nocknock/MainPresenterTest.kt | 16 +++++++++++++--- .../afollestad/nocknock/ViewSitePresenterTest.kt | 16 +++++++++++++--- .../com/afollestad/nocknock/data/ServerModel.kt | 16 +++++++++++++--- .../com/afollestad/nocknock/data/ServerStatus.kt | 16 +++++++++++++--- .../afollestad/nocknock/data/ValidationMode.kt | 16 +++++++++++++--- .../nocknock/engine/ServerModelStoreTest.kt | 16 +++++++++++++--- .../afollestad/nocknock/engine/EngineModule.kt | 16 +++++++++++++--- .../nocknock/engine/db/ServerModelDbHelper.kt | 16 +++++++++++++--- .../nocknock/engine/db/ServerModelStore.kt | 16 +++++++++++++--- .../nocknock/engine/statuscheck/BootReceiver.kt | 16 +++++++++++++--- .../engine/statuscheck/CheckStatusJob.kt | 16 +++++++++++++--- .../engine/statuscheck/CheckStatusManager.kt | 16 +++++++++++++--- .../nocknock/engine/CheckStatusManagerTest.kt | 16 +++++++++++++--- .../com/afollestad/nocknock/engine/TestUtil.kt | 16 +++++++++++++--- .../afollestad/nocknock/notifications/Channel.kt | 16 +++++++++++++--- .../notifications/NockNotificationManager.kt | 16 +++++++++++++--- .../notifications/NotificationsModule.kt | 16 +++++++++++++--- .../notifications/NockNotificationManagerTest.kt | 16 +++++++++++++--- spotless.gradle | 2 +- spotless.license.kt | 15 +++++++++++++++ .../afollestad/nocknock/utilities/Injector.kt | 16 +++++++++++++--- .../nocknock/utilities/UtilitiesModule.kt | 16 +++++++++++++--- .../nocknock/utilities/ext/ActivityExt.kt | 16 +++++++++++++--- .../nocknock/utilities/ext/AnimationExt.kt | 16 +++++++++++++--- .../nocknock/utilities/ext/ContentValuesExt.kt | 16 +++++++++++++--- .../nocknock/utilities/ext/ContextExt.kt | 16 +++++++++++++--- .../nocknock/utilities/ext/CoroutineExt.kt | 16 +++++++++++++--- .../afollestad/nocknock/utilities/ext/DateExt.kt | 16 +++++++++++++--- .../nocknock/utilities/ext/InjectorExt.kt | 16 +++++++++++++--- .../afollestad/nocknock/utilities/ext/TimeExt.kt | 16 +++++++++++++--- .../afollestad/nocknock/utilities/ext/UriExt.kt | 16 +++++++++++++--- .../nocknock/utilities/js/JavaScript.kt | 16 +++++++++++++--- .../utilities/providers/BitmapProvider.kt | 16 +++++++++++++--- .../utilities/providers/BundleProvider.kt | 16 +++++++++++++--- .../utilities/providers/IntentProvider.kt | 16 +++++++++++++--- .../utilities/providers/JobInfoProvider.kt | 16 +++++++++++++--- .../providers/NotificationChannelProvider.kt | 16 +++++++++++++--- .../utilities/providers/NotificationProvider.kt | 16 +++++++++++++--- .../nocknock/utilities/providers/SdkProvider.kt | 16 +++++++++++++--- .../utilities/providers/StringProvider.kt | 16 +++++++++++++--- .../nocknock/utilities/qualifiers/AppIconRes.kt | 16 +++++++++++++--- .../utilities/qualifiers/MainActivityClass.kt | 16 +++++++++++++--- .../utilities/ui/DebouncedOnClickListener.kt | 16 +++++++++++++--- .../viewcomponents/CheckIntervalLayout.kt | 16 +++++++++++++--- .../viewcomponents/JavaScriptInputLayout.kt | 16 +++++++++++++--- .../viewcomponents/LoadingIndicatorFrame.kt | 16 +++++++++++++--- .../nocknock/viewcomponents/StatusImageView.kt | 16 +++++++++++++--- .../nocknock/viewcomponents/ext/ScrollViewExt.kt | 16 +++++++++++++--- .../nocknock/viewcomponents/ext/SpinnerExt.kt | 16 +++++++++++++--- .../nocknock/viewcomponents/ext/TextViewExt.kt | 16 +++++++++++++--- .../nocknock/viewcomponents/ext/ViewExt.kt | 16 +++++++++++++--- 72 files changed, 914 insertions(+), 209 deletions(-) create mode 100644 spotless.license.kt diff --git a/.idea/misc.xml b/.idea/misc.xml index 1a0fbc3..06ee295 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -29,7 +29,7 @@ - + diff --git a/app/src/main/java/com/afollestad/nocknock/AppExt.kt b/app/src/main/java/com/afollestad/nocknock/AppExt.kt index efd36d4..b1c22cf 100644 --- a/app/src/main/java/com/afollestad/nocknock/AppExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/AppExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock diff --git a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt index f50be42..c1cf284 100644 --- a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt +++ b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock diff --git a/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.kt b/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.kt index 3bf58cc..c87760e 100644 --- a/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.kt +++ b/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.adapter diff --git a/app/src/main/java/com/afollestad/nocknock/di/AppComponent.kt b/app/src/main/java/com/afollestad/nocknock/di/AppComponent.kt index 7ae703b..58f3027 100644 --- a/app/src/main/java/com/afollestad/nocknock/di/AppComponent.kt +++ b/app/src/main/java/com/afollestad/nocknock/di/AppComponent.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.di diff --git a/app/src/main/java/com/afollestad/nocknock/di/MainBindModule.kt b/app/src/main/java/com/afollestad/nocknock/di/MainBindModule.kt index 31d14d2..eb58766 100644 --- a/app/src/main/java/com/afollestad/nocknock/di/MainBindModule.kt +++ b/app/src/main/java/com/afollestad/nocknock/di/MainBindModule.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.di diff --git a/app/src/main/java/com/afollestad/nocknock/di/MainModule.kt b/app/src/main/java/com/afollestad/nocknock/di/MainModule.kt index 6e873ca..4054fe4 100644 --- a/app/src/main/java/com/afollestad/nocknock/di/MainModule.kt +++ b/app/src/main/java/com/afollestad/nocknock/di/MainModule.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.di diff --git a/app/src/main/java/com/afollestad/nocknock/dialogs/AboutDialog.kt b/app/src/main/java/com/afollestad/nocknock/dialogs/AboutDialog.kt index 4c16f20..7c8e8e4 100644 --- a/app/src/main/java/com/afollestad/nocknock/dialogs/AboutDialog.kt +++ b/app/src/main/java/com/afollestad/nocknock/dialogs/AboutDialog.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.dialogs diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt index ab9f933..0a99070 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.addsite diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt index 7f5eb7f..4def223 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.addsite diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt index e95d379..aff0c90 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.addsite diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteView.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteView.kt index 8c6084f..f6a6caf 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteView.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteView.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.addsite diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt index e9e3e83..b77de55 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.main diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt index b955307..e9780bf 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.main diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt index 69f3bdb..9f3fd8d 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.main diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt index 34665d2..d0dfa71 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.main diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index c44510f..8dc66a8 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.viewsite diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt index 41858c4..063fbcc 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.viewsite diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt index 0241979..8c66570 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.viewsite diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt index 0cbd515..4c79368 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.ui.viewsite diff --git a/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt index d1941eb..20d925c 100644 --- a/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock diff --git a/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt index f64df8d..56bc2ff 100644 --- a/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock diff --git a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt index eb7b7f8..2a7e1dd 100644 --- a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock diff --git a/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt b/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt index b98931f..474e514 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.data diff --git a/data/src/main/java/com/afollestad/nocknock/data/ServerStatus.kt b/data/src/main/java/com/afollestad/nocknock/data/ServerStatus.kt index c37742e..9cc28d0 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/ServerStatus.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/ServerStatus.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.data diff --git a/data/src/main/java/com/afollestad/nocknock/data/ValidationMode.kt b/data/src/main/java/com/afollestad/nocknock/data/ValidationMode.kt index beb55a6..b2150ff 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/ValidationMode.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/ValidationMode.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.data diff --git a/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt b/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt index eebf2f3..0563db7 100644 --- a/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt +++ b/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt index 413ac22..b9fd1e1 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt index e12535f..2fc9a4d 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine.db diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt index e96ed70..9c7ecce 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine.db diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt index accc18d..1095220 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine.statuscheck diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt index d7f6e80..efa092d 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine.statuscheck diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt index 7b0c68e..cc50105 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine.statuscheck diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt index 71e45bb..a97d034 100644 --- a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt +++ b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt b/engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt index e71219d..af7113a 100644 --- a/engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt +++ b/engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.engine diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt index 1510489..dcf9f76 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.notifications diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt index 589cf9f..73300dc 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.notifications diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt index a5c7a5d..a5212bd 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.notifications diff --git a/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt b/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt index 362274d..c050eea 100644 --- a/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt +++ b/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.notifications diff --git a/spotless.gradle b/spotless.gradle index a8b91f4..fba51c4 100644 --- a/spotless.gradle +++ b/spotless.gradle @@ -10,7 +10,7 @@ spotless { kotlin { target "**/*.kt" ktlint().userData(['indent_size': '2', 'continuation_indent_size': '2']) - licenseHeader '/*\n * Licensed under Apache-2.0\n *\n * Designed and developed by Aidan Follestad (@afollestad)\n */' + licenseHeaderFile '../spotless.license.kt' trimTrailingWhitespace() endWithNewline() } diff --git a/spotless.license.kt b/spotless.license.kt new file mode 100644 index 0000000..e10880e --- /dev/null +++ b/spotless.license.kt @@ -0,0 +1,15 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ \ No newline at end of file diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/Injector.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/Injector.kt index ad80fc0..89972e4 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/Injector.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/Injector.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt index 03e77b9..a2a9770 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ActivityExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ActivityExt.kt index 7653d84..9238e6c 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ActivityExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ActivityExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt index 2a54b19..171a5cd 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContentValuesExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContentValuesExt.kt index a8cdead..b13dfd0 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContentValuesExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContentValuesExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt index fc82413..4080195 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/CoroutineExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/CoroutineExt.kt index 1426624..48085c2 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/CoroutineExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/CoroutineExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt index d29c261..5ea3d77 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/InjectorExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/InjectorExt.kt index e6ae4ac..ebf2fb0 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/InjectorExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/InjectorExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt index e659d16..a7c65e2 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt index cac3c06..c46086e 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ext diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt index 6d735e2..cb94693 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.js diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt index 1c2d21f..0bbe9c3 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.providers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt index 1185723..8fc655b 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.providers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt index 6fe0966..cee9298 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.providers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt index 4b188de..9852c50 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.providers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt index 694ef8a..0215605 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.providers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt index 68f162f..6c3547f 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.providers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt index 5c1ea7c..8701f41 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.providers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt index 06bb32b..1f263b5 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.providers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/AppIconRes.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/AppIconRes.kt index 1037af7..bae9b30 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/AppIconRes.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/AppIconRes.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.qualifiers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/MainActivityClass.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/MainActivityClass.kt index 9db4598..db9ee3a 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/MainActivityClass.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/MainActivityClass.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.qualifiers diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt index 1446bbf..bfb7a86 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.utilities.ui diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/CheckIntervalLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/CheckIntervalLayout.kt index 519d3b0..2a7ccfe 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/CheckIntervalLayout.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/CheckIntervalLayout.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.viewcomponents diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/JavaScriptInputLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/JavaScriptInputLayout.kt index 5c9ee03..2636008 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/JavaScriptInputLayout.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/JavaScriptInputLayout.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.viewcomponents diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt index 591f4a3..1e45e83 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.viewcomponents diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt index 4a2fd63..9f907e6 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.viewcomponents diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt index 1c45cd5..431fb8e 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.viewcomponents.ext diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt index b2f6058..bb754f5 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.viewcomponents.ext diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt index 533a8f1..2d5576e 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.viewcomponents.ext diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt index 5f86e74..9af6367 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt @@ -1,7 +1,17 @@ -/* - * Licensed under Apache-2.0 - * +/** * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.afollestad.nocknock.viewcomponents.ext From 88ae30c0c956b01829bbd7921ac50fb32bcc7ce3 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Wed, 5 Dec 2018 13:30:04 -0800 Subject: [PATCH 011/114] Switch from SQLite to Room --- app/build.gradle | 2 +- app/src/main/AndroidManifest.xml | 2 +- .../com/afollestad/nocknock/NockNockApp.kt | 4 +- .../{ServerAdapter.kt => SiteAdapter.kt} | 55 +-- .../afollestad/nocknock/di/AppComponent.java | 71 ++++ .../afollestad/nocknock/di/AppComponent.kt | 73 ---- .../afollestad/nocknock/di/MainBindModule.kt | 49 --- .../afollestad/nocknock/di/MainModule.java | 74 ++++ .../nocknock/ui/addsite/AddSiteActivity.kt | 12 +- .../nocknock/ui/addsite/AddSitePresenter.kt | 46 ++- .../nocknock/ui/main/MainActivity.kt | 17 +- .../nocknock/ui/main/MainActivityExt.kt | 10 +- .../nocknock/ui/main/MainPresenter.kt | 70 +++- .../afollestad/nocknock/ui/main/MainView.kt | 12 +- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 55 +-- .../ui/viewsite/ViewSiteActivityExt.kt | 8 +- .../nocknock/ui/viewsite/ViewSitePresenter.kt | 86 +++-- .../nocknock/ui/viewsite/ViewSiteView.kt | 4 +- app/src/main/res/layout/activity_main.xml | 8 + app/src/main/res/values/strings.xml | 25 +- .../nocknock/AddSitePresenterTest.kt | 40 +- .../afollestad/nocknock/MainPresenterTest.kt | 62 ++-- .../java/com/afollestad/nocknock/TestUtil.kt | 125 +++++++ .../nocknock/ViewSitePresenterTest.kt | 137 ++++--- data/build.gradle | 14 + data/src/androidTest/AndroidManifest.xml | 10 + .../nocknock/data/AppDatabaseTest.kt | 350 ++++++++++++++++++ .../com/afollestad/nocknock/data/TestUtil.kt | 60 +++ .../afollestad/nocknock/data/AppDatabase.kt | 147 ++++++++ .../afollestad/nocknock/data/ServerStatus.kt | 50 --- .../com/afollestad/nocknock/data/SiteDao.kt | 43 ++- .../nocknock/data/SiteSettingsDao.kt | 44 +++ .../nocknock/data/ValidationResultsDao.kt | 44 +++ .../nocknock/data/legacy/DbMigrator.kt | 105 ++++++ .../nocknock/data/{ => legacy}/ServerModel.kt | 91 +++-- .../data/legacy}/ServerModelDbHelper.kt | 12 +- .../nocknock/data/legacy}/ServerModelStore.kt | 100 ++--- .../nocknock/data/model/Converters.kt | 42 +++ .../afollestad/nocknock/data/model/Site.kt | 76 ++++ .../nocknock/data/model/SiteSettings.kt | 47 +++ .../afollestad/nocknock/data/model/Status.kt | 59 +++ .../data/{ => model}/ValidationMode.kt | 18 +- .../nocknock/data/model/ValidationResult.kt | 43 +++ dependencies.gradle | 7 +- engine/build.gradle | 5 - .../nocknock/engine/ServerModelStoreTest.kt | 129 ------- .../nocknock/engine/EngineModule.java | 28 +- .../engine/statuscheck/BootReceiver.kt | 2 +- .../{CheckStatusJob.kt => ValidationJob.kt} | 102 ++--- ...kStatusManager.kt => ValidationManager.kt} | 74 ++-- .../nocknock/engine/CheckStatusManagerTest.kt | 16 +- notifications/build.gradle | 1 - .../notifications/NockNotificationManager.kt | 22 +- ...ionsModule.kt => NotificationsModule.java} | 17 +- .../NockNotificationManagerTest.kt | 4 +- ...tilitiesModule.kt => UtilitiesModule.java} | 80 ++-- .../utilities/ext/ContentValuesExt.kt | 59 --- .../utilities/providers/BundleProvider.kt | 12 +- .../utilities/providers/IntentProvider.kt | 16 +- .../viewcomponents/LoadingIndicatorFrame.kt | 6 +- .../viewcomponents/StatusImageView.kt | 12 +- 61 files changed, 2066 insertions(+), 928 deletions(-) rename app/src/main/java/com/afollestad/nocknock/adapter/{ServerAdapter.kt => SiteAdapter.kt} (74%) create mode 100644 app/src/main/java/com/afollestad/nocknock/di/AppComponent.java delete mode 100644 app/src/main/java/com/afollestad/nocknock/di/AppComponent.kt delete mode 100644 app/src/main/java/com/afollestad/nocknock/di/MainBindModule.kt create mode 100644 app/src/main/java/com/afollestad/nocknock/di/MainModule.java create mode 100644 app/src/test/java/com/afollestad/nocknock/TestUtil.kt create mode 100644 data/src/androidTest/AndroidManifest.xml create mode 100644 data/src/androidTest/java/com/afollestad/nocknock/data/AppDatabaseTest.kt create mode 100644 data/src/androidTest/java/com/afollestad/nocknock/data/TestUtil.kt create mode 100644 data/src/main/java/com/afollestad/nocknock/data/AppDatabase.kt delete mode 100644 data/src/main/java/com/afollestad/nocknock/data/ServerStatus.kt rename engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt => data/src/main/java/com/afollestad/nocknock/data/SiteDao.kt (50%) create mode 100644 data/src/main/java/com/afollestad/nocknock/data/SiteSettingsDao.kt create mode 100644 data/src/main/java/com/afollestad/nocknock/data/ValidationResultsDao.kt create mode 100644 data/src/main/java/com/afollestad/nocknock/data/legacy/DbMigrator.kt rename data/src/main/java/com/afollestad/nocknock/data/{ => legacy}/ServerModel.kt (55%) rename {engine/src/main/java/com/afollestad/nocknock/engine/db => data/src/main/java/com/afollestad/nocknock/data/legacy}/ServerModelDbHelper.kt (90%) rename {engine/src/main/java/com/afollestad/nocknock/engine/db => data/src/main/java/com/afollestad/nocknock/data/legacy}/ServerModelStore.kt (60%) create mode 100644 data/src/main/java/com/afollestad/nocknock/data/model/Converters.kt create mode 100644 data/src/main/java/com/afollestad/nocknock/data/model/Site.kt create mode 100644 data/src/main/java/com/afollestad/nocknock/data/model/SiteSettings.kt create mode 100644 data/src/main/java/com/afollestad/nocknock/data/model/Status.kt rename data/src/main/java/com/afollestad/nocknock/data/{ => model}/ValidationMode.kt (66%) create mode 100644 data/src/main/java/com/afollestad/nocknock/data/model/ValidationResult.kt delete mode 100644 engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt rename app/src/main/java/com/afollestad/nocknock/di/MainModule.kt => engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java (55%) rename engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/{CheckStatusJob.kt => ValidationJob.kt} (59%) rename engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/{CheckStatusManager.kt => ValidationManager.kt} (71%) rename notifications/src/main/java/com/afollestad/nocknock/notifications/{NotificationsModule.kt => NotificationsModule.java} (70%) rename utilities/src/main/java/com/afollestad/nocknock/utilities/{UtilitiesModule.kt => UtilitiesModule.java} (59%) delete mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContentValuesExt.kt diff --git a/app/build.gradle b/app/build.gradle index aad5e53..0a8d678 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -18,9 +18,9 @@ android { } dependencies { - implementation project(':data') implementation project(':utilities') implementation project(':engine') + implementation project(':data') implementation project(':notifications') implementation project(':viewcomponents') diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 87a00d8..c0b8ee5 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -42,7 +42,7 @@ android:windowSoftInputMode="stateHidden"/> diff --git a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt index c1cf284..492ce0e 100644 --- a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt +++ b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt @@ -19,7 +19,7 @@ import android.app.Application import com.afollestad.nocknock.di.AppComponent import com.afollestad.nocknock.di.DaggerAppComponent import com.afollestad.nocknock.engine.statuscheck.BootReceiver -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob +import com.afollestad.nocknock.engine.statuscheck.ValidationJob import com.afollestad.nocknock.notifications.NockNotificationManager import com.afollestad.nocknock.ui.addsite.AddSiteActivity import com.afollestad.nocknock.ui.main.MainActivity @@ -82,7 +82,7 @@ class NockNockApp : Application(), Injector { is MainActivity -> appComponent.inject(target) is ViewSiteActivity -> appComponent.inject(target) is AddSiteActivity -> appComponent.inject(target) - is CheckStatusJob -> appComponent.inject(target) + is ValidationJob -> appComponent.inject(target) is BootReceiver -> appComponent.inject(target) else -> throw IllegalStateException("Can't inject into $target") } diff --git a/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.kt b/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt similarity index 74% rename from app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.kt rename to app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt index c87760e..a519e5a 100644 --- a/app/src/main/java/com/afollestad/nocknock/adapter/ServerAdapter.kt +++ b/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt @@ -20,9 +20,10 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.isPending -import com.afollestad.nocknock.data.textRes +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.isPending +import com.afollestad.nocknock.data.model.textRes import com.afollestad.nocknock.utilities.ui.onDebouncedClick import kotlinx.android.synthetic.main.list_item_server.view.iconStatus import kotlinx.android.synthetic.main.list_item_server.view.textInterval @@ -30,10 +31,10 @@ import kotlinx.android.synthetic.main.list_item_server.view.textName import kotlinx.android.synthetic.main.list_item_server.view.textStatus import kotlinx.android.synthetic.main.list_item_server.view.textUrl -typealias Listener = (model: ServerModel, longClick: Boolean) -> Unit +typealias Listener = (model: Site, longClick: Boolean) -> Unit /** @author Aidan Follestad (@afollestad) */ -class ServerVH constructor( +class SiteViewHolder constructor( itemView: View, private val adapter: ServerAdapter ) : RecyclerView.ViewHolder(itemView), View.OnLongClickListener { @@ -45,24 +46,32 @@ class ServerVH constructor( itemView.setOnLongClickListener(this) } - fun bind(model: ServerModel) { + fun bind(model: Site) { + requireNotNull(model.settings) { "Settings must be populated." } + itemView.textName.text = model.name itemView.textUrl.text = model.url - itemView.iconStatus.setStatus(model.status) - val statusText = model.status.textRes() - if (statusText == 0) { - itemView.textStatus.text = model.reason + val lastResult = model.lastResult + if (lastResult != null) { + itemView.iconStatus.setStatus(lastResult.status) + val statusText = lastResult.status.textRes() + if (statusText == 0) { + itemView.textStatus.text = lastResult.reason + } else { + itemView.textStatus.setText(statusText) + } } else { - itemView.textStatus.setText(statusText) + itemView.iconStatus.setStatus(WAITING) + itemView.textStatus.setText(R.string.none) } val res = itemView.resources when { - model.disabled -> { + model.settings?.disabled == true -> { itemView.textInterval.setText(R.string.checks_disabled) } - model.status.isPending() -> { + model.lastResult?.status.isPending() -> { itemView.textInterval.text = res.getString( R.string.next_check_x, res.getString(R.string.now) @@ -84,21 +93,21 @@ class ServerVH constructor( } /** @author Aidan Follestad (@afollestad) */ -class ServerAdapter(private val listener: Listener) : RecyclerView.Adapter() { +class ServerAdapter(private val listener: Listener) : RecyclerView.Adapter() { - private val models = mutableListOf() + private val models = mutableListOf() internal fun performClick( index: Int, longClick: Boolean ) = listener.invoke(models[index], longClick) - fun add(model: ServerModel) { + fun add(model: Site) { models.add(model) notifyItemInserted(models.size - 1) } - fun update(target: ServerModel) { + fun update(target: Site) { for ((i, model) in models.withIndex()) { if (model.id == target.id) { update(i, target) @@ -109,7 +118,7 @@ class ServerAdapter(private val listener: Listener) : RecyclerView.Adapter) { + fun set(newModels: List) { this.models.clear() if (!newModels.isEmpty()) { this.models.addAll(newModels) @@ -140,14 +149,14 @@ class ServerAdapter(private val listener: Listener) : RecyclerView.Adapter provideMainActivityClass() { + return MainActivity.class; + } + + @Provides + @Singleton + static AppDatabase provideAppDatabase(Application app) { + return databaseBuilder(app, AppDatabase.class, DATABASE_NAME).build(); + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt index 0a99070..48d0671 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt @@ -20,11 +20,11 @@ import android.os.Bundle import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.ValidationMode -import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.data.indexToValidationMode +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.model.indexToValidationMode import com.afollestad.nocknock.utilities.ext.ScopeReceiver import com.afollestad.nocknock.utilities.ext.injector import com.afollestad.nocknock.utilities.ext.scopeWhileAttached @@ -119,7 +119,7 @@ class AddSiteActivity : AppCompatActivity(), AddSiteView { url = inputUrl.trimmedText(), checkInterval = checkInterval, validationMode = validationMode, - validationContent = validationMode.validationContent(), + validationArgs = validationMode.validationContent(), networkTimeout = responseTimeoutInput.textAsInt(defaultValue = defaultTimeout) ) } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt index aff0c90..45fc9f3 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt @@ -17,13 +17,14 @@ package com.afollestad.nocknock.ui.addsite import androidx.annotation.CheckResult import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ServerStatus.WAITING -import com.afollestad.nocknock.data.ValidationMode -import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusManager +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.putSite +import com.afollestad.nocknock.engine.statuscheck.ValidationManager import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.async @@ -63,7 +64,7 @@ interface AddSitePresenter { url: String, checkInterval: Long, validationMode: ValidationMode, - validationContent: String?, + validationArgs: String?, networkTimeout: Int ) @@ -72,8 +73,8 @@ interface AddSitePresenter { /** @author Aidan Follestad (@afollestad) */ class RealAddSitePresenter @Inject constructor( - private val serverModelStore: ServerModelStore, - private val checkStatusManager: CheckStatusManager + private val database: AppDatabase, + private val checkStatusManager: ValidationManager ) : AddSitePresenter { private var view: AddSiteView? = null @@ -118,7 +119,7 @@ class RealAddSitePresenter @Inject constructor( url: String, checkInterval: Long, validationMode: ValidationMode, - validationContent: String?, + validationArgs: String?, networkTimeout: Int ) { val inputErrors = InputErrors() @@ -134,9 +135,9 @@ class RealAddSitePresenter @Inject constructor( if (checkInterval <= 0) { inputErrors.checkInterval = R.string.please_enter_check_interval } - if (validationMode == TERM_SEARCH && validationContent.isNullOrEmpty()) { + if (validationMode == TERM_SEARCH && validationArgs.isNullOrEmpty()) { inputErrors.termSearch = R.string.please_enter_search_term - } else if (validationMode == JAVASCRIPT && validationContent.isNullOrEmpty()) { + } else if (validationMode == JAVASCRIPT && validationArgs.isNullOrEmpty()) { inputErrors.javaScript = R.string.please_enter_javaScript } if (networkTimeout <= 0) { @@ -148,14 +149,19 @@ class RealAddSitePresenter @Inject constructor( return } - val newModel = ServerModel( + val newSettings = SiteSettings( + validationIntervalMs = checkInterval, + validationMode = validationMode, + validationArgs = validationArgs, + networkTimeout = networkTimeout, + disabled = false + ) + val newModel = Site( + id = 0, name = name, url = url, - status = WAITING, - checkInterval = checkInterval, - validationMode = validationMode, - validationContent = validationContent, - networkTimeout = networkTimeout + settings = newSettings, + lastResult = null ) with(view!!) { @@ -163,7 +169,7 @@ class RealAddSitePresenter @Inject constructor( launch(coroutineContext) { setLoading() val storedModel = async(IO) { - serverModelStore.put(newModel) + database.putSite(newModel) }.await() checkStatusManager.scheduleCheck( diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt index b77de55..3ff7999 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt @@ -28,9 +28,9 @@ import com.afollestad.materialdialogs.MaterialDialog import com.afollestad.materialdialogs.list.listItems import com.afollestad.nocknock.R import com.afollestad.nocknock.adapter.ServerAdapter -import com.afollestad.nocknock.data.ServerModel +import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.dialogs.AboutDialog -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.ACTION_STATUS_UPDATE +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE import com.afollestad.nocknock.utilities.ext.ScopeReceiver import com.afollestad.nocknock.utilities.ext.injector import com.afollestad.nocknock.utilities.ext.safeRegisterReceiver @@ -39,6 +39,7 @@ import com.afollestad.nocknock.utilities.ext.scopeWhileAttached import com.afollestad.nocknock.viewcomponents.ext.showOrHide import kotlinx.android.synthetic.main.activity_main.fab import kotlinx.android.synthetic.main.activity_main.list +import kotlinx.android.synthetic.main.activity_main.loadingProgress import kotlinx.android.synthetic.main.activity_main.rootView import kotlinx.android.synthetic.main.activity_main.toolbar import kotlinx.android.synthetic.main.include_empty_view.emptyText @@ -109,18 +110,22 @@ class MainActivity : AppCompatActivity(), MainView { super.onDestroy() } - override fun setModels(models: List) { + override fun setLoading() = loadingProgress.setLoading() + + override fun setDoneLoading() = loadingProgress.setDone() + + override fun setModels(models: List) { list.post { adapter.set(models) emptyText.showOrHide(models.isEmpty()) } } - override fun updateModel(model: ServerModel) { + override fun updateModel(model: Site) { list.post { adapter.update(model) } } - override fun onSiteDeleted(model: ServerModel) { + override fun onSiteDeleted(model: Site) { list.post { adapter.remove(model) emptyText.showOrHide(adapter.itemCount == 0) @@ -133,7 +138,7 @@ class MainActivity : AppCompatActivity(), MainView { ) = rootView.scopeWhileAttached(context, exec) private fun onSiteSelected( - model: ServerModel, + model: Site, longClick: Boolean ) { if (longClick) { diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt index e9780bf..acfbfd4 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt @@ -18,7 +18,7 @@ package com.afollestad.nocknock.ui.main import android.content.Intent import com.afollestad.materialdialogs.MaterialDialog import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.ServerModel +import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.toHtml import com.afollestad.nocknock.ui.addsite.AddSiteActivity import com.afollestad.nocknock.ui.addsite.KEY_FAB_SIZE @@ -47,16 +47,16 @@ private fun MainActivity.intentToAdd( addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION) } -internal fun MainActivity.viewSite(model: ServerModel) { +internal fun MainActivity.viewSite(model: Site) { startActivityForResult(intentToView(model), VIEW_SITE_RQ) } -private fun MainActivity.intentToView(model: ServerModel) = +private fun MainActivity.intentToView(model: Site) = Intent(this, ViewSiteActivity::class.java).apply { putExtra(KEY_VIEW_MODEL, model) } -internal fun MainActivity.maybeRemoveSite(model: ServerModel) { +internal fun MainActivity.maybeRemoveSite(model: Site) { MaterialDialog(this).show { title(R.string.remove_site) message(text = context.getString(R.string.remove_site_prompt, model.name).toHtml()) @@ -67,7 +67,7 @@ internal fun MainActivity.maybeRemoveSite(model: ServerModel) { internal fun MainActivity.processIntent(intent: Intent) { if (intent.hasExtra(KEY_VIEW_NOTIFICATION_MODEL)) { - val model = intent.getSerializableExtra(KEY_VIEW_NOTIFICATION_MODEL) as ServerModel + val model = intent.getSerializableExtra(KEY_VIEW_NOTIFICATION_MODEL) as Site viewSite(model) } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt index 9f3fd8d..efd9c64 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt @@ -15,18 +15,25 @@ */ package com.afollestad.nocknock.ui.main +import android.app.Application +import android.content.Context.MODE_PRIVATE import android.content.Intent -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_UPDATE_MODEL -import com.afollestad.nocknock.engine.statuscheck.CheckStatusManager +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.allSites +import com.afollestad.nocknock.data.deleteSite +import com.afollestad.nocknock.data.legacy.DbMigrator +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_UPDATE_MODEL +import com.afollestad.nocknock.engine.statuscheck.ValidationManager import com.afollestad.nocknock.notifications.NockNotificationManager +import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.async import kotlinx.coroutines.launch import javax.inject.Inject +import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ interface MainPresenter { @@ -37,18 +44,19 @@ interface MainPresenter { fun resume() - fun refreshSite(site: ServerModel) + fun refreshSite(site: Site) - fun removeSite(site: ServerModel) + fun removeSite(site: Site) fun dropView() } /** @author Aidan Follestad (@afollestad) */ class RealMainPresenter @Inject constructor( - private val serverModelStore: ServerModelStore, + private val app: Application, + private val database: AppDatabase, private val notificationManager: NockNotificationManager, - private val checkStatusManager: CheckStatusManager + private val checkStatusManager: ValidationManager ) : MainPresenter { private var view: MainView? = null @@ -61,40 +69,46 @@ class RealMainPresenter @Inject constructor( override fun onBroadcast(intent: Intent) { if (intent.action == ACTION_STATUS_UPDATE) { - val model = intent.getSerializableExtra(KEY_UPDATE_MODEL) as? ServerModel ?: return + val model = intent.getSerializableExtra(KEY_UPDATE_MODEL) as? Site + ?: return view?.updateModel(model) } } override fun resume() { notificationManager.cancelStatusNotifications() + view!!.run { setModels(listOf()) + setLoading() + scopeWhileAttached(Main) { launch(coroutineContext) { - val models = async(IO) { - serverModelStore.get() - }.await() + doMigrationIfNeeded() + + val models = async(IO) { database.allSites() }.await() + setModels(models) + setDoneLoading() } } } } - override fun refreshSite(site: ServerModel) { + override fun refreshSite(site: Site) = checkStatusManager.scheduleCheck( site = site, rightNow = true, cancelPrevious = true ) - } - override fun removeSite(site: ServerModel) { + override fun removeSite(site: Site) { checkStatusManager.cancelCheck(site) notificationManager.cancelStatusNotification(site) + view!!.scopeWhileAttached(Main) { launch(coroutineContext) { - async(IO) { serverModelStore.delete(site) }.await() + async(IO) { database.deleteSite(site) }.await() view?.onSiteDeleted(site) } } @@ -104,6 +118,28 @@ class RealMainPresenter @Inject constructor( view = null } + private suspend fun CoroutineScope.doMigrationIfNeeded() { + if (needDbMigration()) { + log("Doing database migration...") + val migratedCount = async(IO) { + DbMigrator(app, database).migrateAll() + }.await() + didDbMigration() + log("Database migration done! Migrated $migratedCount models.") + ensureCheckJobs() + } + } + + private fun needDbMigration(): Boolean = + !app.getSharedPreferences("settings", MODE_PRIVATE) + .getBoolean("did_db_migration", false) + + private fun didDbMigration() = + app.getSharedPreferences("settings", MODE_PRIVATE) + .edit() + .putBoolean("did_db_migration", true) + .apply() + private fun ensureCheckJobs() { view!!.scopeWhileAttached(IO) { launch(coroutineContext) { diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt index d0dfa71..a8004d2 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt @@ -15,18 +15,22 @@ */ package com.afollestad.nocknock.ui.main -import com.afollestad.nocknock.data.ServerModel +import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.utilities.ext.ScopeReceiver import kotlin.coroutines.CoroutineContext /** @author Aidan Follestad (@afollestad) */ interface MainView { - fun setModels(models: List) + fun setLoading() - fun updateModel(model: ServerModel) + fun setDoneLoading() - fun onSiteDeleted(model: ServerModel) + fun setModels(models: List) + + fun updateModel(model: Site) + + fun onSiteDeleted(model: Site) fun scopeWhileAttached( context: CoroutineContext, diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index 8dc66a8..b383aeb 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -24,15 +24,15 @@ import android.os.Bundle import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.LAST_CHECK_NONE -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ValidationMode -import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.data.indexToValidationMode -import com.afollestad.nocknock.data.textRes -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.ACTION_STATUS_UPDATE +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.model.indexToValidationMode +import com.afollestad.nocknock.data.model.textRes +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE import com.afollestad.nocknock.utilities.ext.ScopeReceiver import com.afollestad.nocknock.utilities.ext.formatDate import com.afollestad.nocknock.utilities.ext.injector @@ -63,6 +63,7 @@ import kotlinx.android.synthetic.main.activity_viewsite.textNextCheck import kotlinx.android.synthetic.main.activity_viewsite.textUrlWarning import kotlinx.android.synthetic.main.activity_viewsite.toolbar import kotlinx.android.synthetic.main.activity_viewsite.validationModeDescription +import java.lang.System.currentTimeMillis import javax.inject.Inject import kotlin.coroutines.CoroutineContext @@ -132,7 +133,7 @@ class ViewSiteActivity : AppCompatActivity(), ViewSiteView { url = inputUrl.trimmedText(), checkInterval = checkInterval, validationMode = validationMode, - validationContent = validationMode.validationContent(), + validationArgs = validationMode.validationContent(), networkTimeout = responseTimeoutInput.textAsInt(defaultValue = defaultTimeout) ) } @@ -170,44 +171,48 @@ class ViewSiteActivity : AppCompatActivity(), ViewSiteView { override fun setValidationModeDescription(res: Int) = validationModeDescription.setText(res) - override fun displayModel(model: ServerModel) = with(model) { - iconStatus.setStatus(this.status) + override fun displayModel(model: Site) = with(model) { + val siteSettings = this.settings + requireNotNull(siteSettings) { "Site settings must be populated." } + + iconStatus.setStatus(this.lastResult?.status ?: WAITING) inputName.setText(this.name) inputUrl.setText(this.url) - if (this.lastCheck == LAST_CHECK_NONE) { + if (this.lastResult == null) { textLastCheckResult.setText(R.string.none) } else { - val statusText = this.status.textRes() + val statusText = this.lastResult!!.status.textRes() textLastCheckResult.text = if (statusText == 0) { - this.reason + this.lastResult!!.reason } else { getString(statusText) } } - if (this.disabled) { + if (siteSettings.disabled) { textNextCheck.setText(R.string.auto_checks_disabled) } else { - textNextCheck.text = (this.lastCheck + this.checkInterval).formatDate() + val lastCheck = this.lastResult?.timestampMs ?: currentTimeMillis() + textNextCheck.text = (lastCheck + siteSettings.validationIntervalMs).formatDate() } - checkIntervalLayout.set(this.checkInterval) + checkIntervalLayout.set(siteSettings.validationIntervalMs) - responseValidationMode.setSelection(validationMode.value - 1) - when (this.validationMode) { - TERM_SEARCH -> responseValidationSearchTerm.setText(this.validationContent ?: "") - JAVASCRIPT -> scriptInputLayout.setCode(this.validationContent) + responseValidationMode.setSelection(siteSettings.validationMode.value - 1) + when (siteSettings.validationMode) { + TERM_SEARCH -> responseValidationSearchTerm.setText(siteSettings.validationArgs ?: "") + JAVASCRIPT -> scriptInputLayout.setCode(siteSettings.validationArgs) else -> { responseValidationSearchTerm.setText("") scriptInputLayout.clear() } } - responseTimeoutInput.setText(model.networkTimeout.toString()) + responseTimeoutInput.setText(siteSettings.networkTimeout.toString()) - disableChecksButton.showOrHide(!this.disabled) + disableChecksButton.showOrHide(!siteSettings.disabled) doneBtn.setText( - if (this.disabled) R.string.renable_and_save_changes + if (siteSettings.disabled) R.string.renable_and_save_changes else R.string.save_changes ) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt index 063fbcc..6888d76 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt @@ -18,8 +18,8 @@ package com.afollestad.nocknock.ui.viewsite import android.widget.ImageView import com.afollestad.materialdialogs.MaterialDialog import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.isPending +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.isPending import com.afollestad.nocknock.toHtml import com.afollestad.nocknock.utilities.ext.animateRotation import kotlinx.android.synthetic.main.activity_viewsite.toolbar @@ -46,11 +46,11 @@ internal fun ViewSiteActivity.maybeDisableChecks() { } } -internal fun ViewSiteActivity.invalidateMenuForStatus(model: ServerModel) { +internal fun ViewSiteActivity.invalidateMenuForStatus(model: Site) { val refreshIcon = toolbar.menu.findItem(R.id.refresh) .actionView as ImageView - if (model.status.isPending()) { + if (model.lastResult?.status.isPending()) { refreshIcon.animateRotation() } else { refreshIcon.run { diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt index 8c66570..4f936d2 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt @@ -18,15 +18,17 @@ package com.afollestad.nocknock.ui.viewsite import android.content.Intent import androidx.annotation.CheckResult import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ServerStatus.WAITING -import com.afollestad.nocknock.data.ValidationMode -import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_UPDATE_MODEL -import com.afollestad.nocknock.engine.statuscheck.CheckStatusManager +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.deleteSite +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.updateSite +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_UPDATE_MODEL +import com.afollestad.nocknock.engine.statuscheck.ValidationManager import com.afollestad.nocknock.notifications.NockNotificationManager import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Dispatchers.Main @@ -77,7 +79,7 @@ interface ViewSitePresenter { url: String, checkInterval: Long, validationMode: ValidationMode, - validationContent: String?, + validationArgs: String?, networkTimeout: Int ) @@ -87,26 +89,26 @@ interface ViewSitePresenter { fun removeSite() - fun currentModel(): ServerModel + fun currentModel(): Site fun dropView() } /** @author Aidan Follestad (@afollestad) */ class RealViewSitePresenter @Inject constructor( - private val serverModelStore: ServerModelStore, - private val checkStatusManager: CheckStatusManager, + private val database: AppDatabase, + private val checkStatusManager: ValidationManager, private val notificationManager: NockNotificationManager ) : ViewSitePresenter { private var view: ViewSiteView? = null - private var currentModel: ServerModel? = null + private var currentModel: Site? = null override fun takeView( view: ViewSiteView, intent: Intent ) { - this.currentModel = intent.getSerializableExtra(KEY_VIEW_MODEL) as ServerModel + this.currentModel = intent.getSerializableExtra(KEY_VIEW_MODEL) as Site this.view = view.apply { displayModel(currentModel!!) } @@ -114,7 +116,8 @@ class RealViewSitePresenter @Inject constructor( override fun onBroadcast(intent: Intent) { if (intent.action == ACTION_STATUS_UPDATE) { - val model = intent.getSerializableExtra(KEY_UPDATE_MODEL) as? ServerModel ?: return + val model = intent.getSerializableExtra(KEY_UPDATE_MODEL) as? Site + ?: return this.currentModel = model view?.displayModel(model) } @@ -122,7 +125,7 @@ class RealViewSitePresenter @Inject constructor( override fun onNewIntent(intent: Intent?) { if (intent != null && intent.hasExtra(KEY_VIEW_MODEL)) { - currentModel = intent.getSerializableExtra(KEY_VIEW_MODEL) as ServerModel + currentModel = intent.getSerializableExtra(KEY_VIEW_MODEL) as Site view?.displayModel(currentModel!!) } } @@ -163,7 +166,7 @@ class RealViewSitePresenter @Inject constructor( url: String, checkInterval: Long, validationMode: ValidationMode, - validationContent: String?, + validationArgs: String?, networkTimeout: Int ) { val inputErrors = InputErrors() @@ -179,9 +182,9 @@ class RealViewSitePresenter @Inject constructor( if (checkInterval <= 0) { inputErrors.checkInterval = R.string.please_enter_check_interval } - if (validationMode == TERM_SEARCH && validationContent.isNullOrEmpty()) { + if (validationMode == TERM_SEARCH && validationArgs.isNullOrEmpty()) { inputErrors.termSearch = R.string.please_enter_search_term - } else if (validationMode == JAVASCRIPT && validationContent.isNullOrEmpty()) { + } else if (validationMode == JAVASCRIPT && validationArgs.isNullOrEmpty()) { inputErrors.javaScript = R.string.please_enter_javaScript } if (networkTimeout <= 0) { @@ -193,27 +196,34 @@ class RealViewSitePresenter @Inject constructor( return } - val newModel = currentModel!!.copy( - name = name, - url = url, - status = WAITING, - checkInterval = checkInterval, + val updatedSettings = currentModel!!.settings!!.copy( + validationIntervalMs = checkInterval, validationMode = validationMode, - validationContent = validationContent, + validationArgs = validationArgs, disabled = false, networkTimeout = networkTimeout ) + val updatedModel = currentModel!!.copy( + name = name, + url = url, + settings = updatedSettings + ) + .withStatus(status = WAITING) with(view!!) { scopeWhileAttached(Main) { launch(coroutineContext) { setLoading() - async(IO) { serverModelStore.update(newModel) }.await() + async(IO) { + database.updateSite(updatedModel) + }.await() + checkStatusManager.scheduleCheck( - site = newModel, + site = updatedModel, rightNow = true, cancelPrevious = true ) + setDoneLoading() view?.finish() } @@ -222,7 +232,7 @@ class RealViewSitePresenter @Inject constructor( } override fun checkNow() = with(view!!) { - val checkModel = currentModel!!.copy( + val checkModel = currentModel!!.withStatus( status = WAITING ) view?.displayModel(checkModel) @@ -242,8 +252,16 @@ class RealViewSitePresenter @Inject constructor( scopeWhileAttached(Main) { launch(coroutineContext) { setLoading() - currentModel = currentModel!!.copy(disabled = true) - async(IO) { serverModelStore.update(currentModel!!) }.await() + currentModel = currentModel!!.copy( + settings = currentModel!!.settings!!.copy( + disabled = true + ) + ) + + async(IO) { + database.updateSite(currentModel!!) + }.await() + setDoneLoading() view?.displayModel(currentModel!!) } @@ -260,7 +278,9 @@ class RealViewSitePresenter @Inject constructor( scopeWhileAttached(Main) { launch(coroutineContext) { setLoading() - async(IO) { serverModelStore.delete(site) }.await() + async(IO) { + database.deleteSite(site) + }.await() setDoneLoading() view?.finish() } @@ -275,7 +295,7 @@ class RealViewSitePresenter @Inject constructor( currentModel = null } - @TestOnly fun setModel(model: ServerModel) { + @TestOnly fun setModel(model: Site) { this.currentModel = model } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt index 4c79368..7ce7180 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt @@ -16,7 +16,7 @@ package com.afollestad.nocknock.ui.viewsite import androidx.annotation.StringRes -import com.afollestad.nocknock.data.ServerModel +import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.utilities.ext.ScopeReceiver import kotlin.coroutines.CoroutineContext @@ -27,7 +27,7 @@ interface ViewSiteView { fun setDoneLoading() - fun displayModel(model: ServerModel) + fun displayModel(model: Site) fun showOrHideUrlSchemeWarning(show: Boolean) diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 0ca585a..3d271c7 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -48,4 +48,12 @@ app:rippleColor="#40ffffff" /> + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e0273e3..ce75a62 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -22,33 +22,32 @@ Please enter a name! Please enter a URL. Please enter a valid URL. - Please input a check interval. + Please input a validation interval. Please input a search term. Please input a validation script. Please enter a network timeout greater than 0. Options - Already checking sites! Remove Site %1$s from your sites?]]> Remove Save Changes View Site - Last Check Result - Next Check - Next Check: %1$s + Last Validation Result + Next Validation + Next Validation: %1$s Now None (turned off) None - Disable Automatic Checks + Disable Automatic Validation %1$s? The site will not be validated in the background - until you re-enable checks for it. You can still manually perform checks by tapping the + Disable automatic validation for %1$s? The site will not be checked in the background + until you re-enable validation for it. You can still manually perform validation by tapping the Refresh icon at the top of this page. ]]> Disable - Enable Checks & Save Changes + Enable Auto Validation & Save Changes Network Response Timeout 10000 @@ -56,22 +55,22 @@ Refresh Status - Warning: this app checks for server availability with HTTP requests. It\'s recommended that you + Warning: this app validates sites availability with HTTP requests. It\'s recommended that you use an HTTP URL. Response Validation Mode Search term… - The HTTP status code is checked. If it\'s a successful status code, the site passes the check. + The HTTP status code is checked. If it\'s a successful status code, the site passes validation. The status code check is done first. If it\'s successful, the response body is checked. - If it contains your search term, the site passes the check. + If it contains your search term, the site passes validation. The status code check is done first. If it\'s successful, the response body is passed to the - JavaScript function above. If the function returns true, the site passes the check. Throw an + JavaScript function above. If the function returns true, the site passes validation. Throw an exception to pass custom error messages to Nock Nock. diff --git a/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt index 20d925c..3c3dd01 100644 --- a/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt @@ -15,12 +15,12 @@ */ package com.afollestad.nocknock -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusManager +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.engine.statuscheck.ValidationManager import com.afollestad.nocknock.ui.addsite.AddSiteView import com.afollestad.nocknock.ui.addsite.InputErrors import com.afollestad.nocknock.ui.addsite.RealAddSitePresenter @@ -42,16 +42,12 @@ import org.junit.Test class AddSitePresenterTest { - private val serverModelStore = mock { - on { runBlocking { put(any()) } } doAnswer { inv -> - inv.getArgument(0) - } - } - private val checkStatusManager = mock() + private val database = mockDatabase() + private val checkStatusManager = mock() private val view = mock() private val presenter = RealAddSitePresenter( - serverModelStore, + database, checkStatusManager ) @@ -260,10 +256,21 @@ class AddSitePresenterTest { 60000 ) - val modelCaptor = argumentCaptor() + val siteCaptor = argumentCaptor() + val settingsCaptor = argumentCaptor() + verify(view).setLoading() - verify(serverModelStore).put(modelCaptor.capture()) - val model = modelCaptor.firstValue + verify(database.siteDao()).insert(siteCaptor.capture()) + verify(database.siteSettingsDao()).insert(settingsCaptor.capture()) + verify(database.validationResultsDao(), never()).insert(any()) + + val settings = settingsCaptor.firstValue + val model = siteCaptor.firstValue.copy( + id = 1, // fill it in because our insert captor doesn't catch this + settings = settings, + lastResult = null + ) + verify(view, never()).setInputErrors(any()) verify(checkStatusManager).scheduleCheck( site = model, @@ -271,6 +278,7 @@ class AddSitePresenterTest { cancelPrevious = true, fromFinishingJob = false ) + verify(view).setDoneLoading() verify(view).onSiteAdded() } diff --git a/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt index 56bc2ff..04135d7 100644 --- a/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt @@ -15,13 +15,14 @@ */ package com.afollestad.nocknock +import android.app.Application +import android.content.Context.MODE_PRIVATE import android.content.Intent -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_UPDATE_MODEL -import com.afollestad.nocknock.engine.statuscheck.CheckStatusManager +import android.content.SharedPreferences +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_UPDATE_MODEL +import com.afollestad.nocknock.engine.statuscheck.ValidationManager import com.afollestad.nocknock.notifications.NockNotificationManager import com.afollestad.nocknock.ui.main.MainView import com.afollestad.nocknock.ui.main.RealMainPresenter @@ -42,13 +43,22 @@ import org.junit.Test class MainPresenterTest { - private val serverModelStore = mock() + private val prefs = mock { + on { getBoolean("did_db_migration", false) } doReturn true + } + private val app = mock { + on { getSharedPreferences("settings", MODE_PRIVATE) } doReturn prefs + } + + private val database = mockDatabase() + private val notificationManager = mock() - private val checkStatusManager = mock() + private val checkStatusManager = mock() private val view = mock() private val presenter = RealMainPresenter( - serverModelStore, + app, + database, notificationManager, checkStatusManager ) @@ -72,55 +82,45 @@ class MainPresenterTest { val badIntent = fakeIntent("Hello World") presenter.onBroadcast(badIntent) - val model = fakeModel() val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) whenever(goodIntent.getSerializableExtra(KEY_UPDATE_MODEL)) - .doReturn(model) + .doReturn(MOCK_MODEL_2) presenter.onBroadcast(goodIntent) - verify(view, times(1)).updateModel(model) + verify(view, times(1)).updateModel(MOCK_MODEL_2) } @Test fun resume() = runBlocking { - val model = fakeModel() - whenever(serverModelStore.get()).doReturn(listOf(model)) presenter.resume() verify(notificationManager).cancelStatusNotifications() - val modelsCaptor = argumentCaptor>() + val modelsCaptor = argumentCaptor>() verify(view, times(2)).setModels(modelsCaptor.capture()) assertThat(modelsCaptor.firstValue).isEmpty() - assertThat(modelsCaptor.lastValue.single()).isEqualTo(model) + assertThat(modelsCaptor.lastValue).isEqualTo(ALL_MOCK_MODELS) } @Test fun refreshSite() { - val model = fakeModel() - presenter.refreshSite(model) + presenter.refreshSite(MOCK_MODEL_3) verify(checkStatusManager).scheduleCheck( - site = model, + site = MOCK_MODEL_3, rightNow = true, cancelPrevious = true ) } @Test fun removeSite() = runBlocking { - val model = fakeModel() - presenter.removeSite(model) + presenter.removeSite(MOCK_MODEL_1) - verify(checkStatusManager).cancelCheck(model) - verify(notificationManager).cancelStatusNotification(model) - verify(serverModelStore).delete(model) - verify(view).onSiteDeleted(model) + verify(checkStatusManager).cancelCheck(MOCK_MODEL_1) + verify(notificationManager).cancelStatusNotification(MOCK_MODEL_1) + verify(database.siteDao()).delete(MOCK_MODEL_1) + verify(database.siteSettingsDao()).delete(MOCK_MODEL_1.settings!!) + verify(view).onSiteDeleted(MOCK_MODEL_1) } - private fun fakeModel() = ServerModel( - name = "Test", - url = "https://test.com", - validationMode = STATUS_CODE - ) - private fun fakeIntent(action: String): Intent { return mock { on { getAction() } doReturn action diff --git a/app/src/test/java/com/afollestad/nocknock/TestUtil.kt b/app/src/test/java/com/afollestad/nocknock/TestUtil.kt new file mode 100644 index 0000000..fe5d524 --- /dev/null +++ b/app/src/test/java/com/afollestad/nocknock/TestUtil.kt @@ -0,0 +1,125 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock + +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.SiteDao +import com.afollestad.nocknock.data.SiteSettingsDao +import com.afollestad.nocknock.data.ValidationResultsDao +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.Status +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationResult +import com.nhaarman.mockitokotlin2.doAnswer +import com.nhaarman.mockitokotlin2.doReturn +import com.nhaarman.mockitokotlin2.isA +import com.nhaarman.mockitokotlin2.mock +import java.lang.System.currentTimeMillis + +fun fakeSettingsModel( + id: Long, + validationMode: ValidationMode = STATUS_CODE +) = SiteSettings( + siteId = id, + validationIntervalMs = 600000, + validationMode = validationMode, + validationArgs = null, + disabled = false, + networkTimeout = 10000 +) + +fun fakeResultModel( + id: Long, + status: Status = OK, + reason: String? = null +) = ValidationResult( + siteId = id, + status = status, + reason = reason, + timestampMs = currentTimeMillis() +) + +fun fakeModel(id: Long) = Site( + id = id, + name = "Test", + url = "https://test.com", + settings = fakeSettingsModel(id), + lastResult = fakeResultModel(id) +) + +val MOCK_MODEL_1 = fakeModel(1) +val MOCK_MODEL_2 = fakeModel(2) +val MOCK_MODEL_3 = fakeModel(3) +val ALL_MOCK_MODELS = listOf(MOCK_MODEL_1, MOCK_MODEL_2, MOCK_MODEL_3) + +fun mockDatabase(): AppDatabase { + val siteDao = mock { + on { insert(isA()) } doReturn 1 + on { one(isA()) } doAnswer { inv -> + val id = inv.getArgument(0) + return@doAnswer when (id) { + 1L -> listOf(MOCK_MODEL_1) + 2L -> listOf(MOCK_MODEL_2) + 3L -> listOf(MOCK_MODEL_3) + else -> listOf() + } + } + on { all() } doReturn ALL_MOCK_MODELS + on { update(isA()) } doAnswer { inv -> + return@doAnswer inv.arguments.size + } + on { delete(isA()) } doAnswer { inv -> + return@doAnswer inv.arguments.size + } + } + val settingsDao = mock { + on { insert(isA()) } doReturn 1L + on { forSite(isA()) } doAnswer { inv -> + val id = inv.getArgument(0) + return@doAnswer when (id) { + 1L -> listOf(MOCK_MODEL_1.settings!!) + 2L -> listOf(MOCK_MODEL_2.settings!!) + 3L -> listOf(MOCK_MODEL_3.settings!!) + else -> listOf() + } + } + on { update(isA()) } doReturn 1 + on { delete(isA()) } doReturn 1 + } + val resultsDao = mock { + on { insert(isA()) } doReturn 1L + on { forSite(isA()) } doAnswer { inv -> + val id = inv.getArgument(0) + return@doAnswer when (id) { + 1L -> listOf(MOCK_MODEL_1.lastResult!!) + 2L -> listOf(MOCK_MODEL_2.lastResult!!) + 3L -> listOf(MOCK_MODEL_3.lastResult!!) + else -> listOf() + } + } + on { update(isA()) } doReturn 1 + on { delete(isA()) } doReturn 1 + } + + return mock { + on { siteDao() } doReturn siteDao + on { siteSettingsDao() } doReturn settingsDao + on { validationResultsDao() } doReturn resultsDao + } +} diff --git a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt index 2a7e1dd..37a78b0 100644 --- a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt @@ -16,16 +16,17 @@ package com.afollestad.nocknock import android.content.Intent -import com.afollestad.nocknock.data.LAST_CHECK_NONE -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ServerStatus.WAITING -import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_UPDATE_MODEL -import com.afollestad.nocknock.engine.statuscheck.CheckStatusManager +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.Status.ERROR +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.model.ValidationResult +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_UPDATE_MODEL +import com.afollestad.nocknock.engine.statuscheck.ValidationManager import com.afollestad.nocknock.notifications.NockNotificationManager import com.afollestad.nocknock.ui.viewsite.InputErrors import com.afollestad.nocknock.ui.viewsite.KEY_VIEW_MODEL @@ -47,20 +48,17 @@ import kotlinx.coroutines.runBlocking import org.junit.After import org.junit.Before import org.junit.Test +import java.lang.System.currentTimeMillis class ViewSitePresenterTest { - private val serverModelStore = mock { - on { runBlocking { put(any()) } } doAnswer { inv -> - inv.getArgument(0) - } - } - private val checkStatusManager = mock() + private val database = mockDatabase() + private val checkStatusManager = mock() private val notificationManager = mock() private val view = mock() private val presenter = RealViewSitePresenter( - serverModelStore, + database, checkStatusManager, notificationManager ) @@ -73,13 +71,12 @@ class ViewSitePresenterTest { }.whenever(view) .scopeWhileAttached(any(), any()) - val model = fakeModel() val intent = fakeIntent("") whenever(intent.getSerializableExtra(KEY_VIEW_MODEL)) - .doReturn(model) + .doReturn(MOCK_MODEL_1) presenter.takeView(view, intent) - assertThat(presenter.currentModel()).isEqualTo(model) - verify(view, times(1)).displayModel(model) + assertThat(presenter.currentModel()).isEqualTo(MOCK_MODEL_1) + verify(view, times(1)).displayModel(MOCK_MODEL_1) } @After fun destroy() { @@ -90,27 +87,25 @@ class ViewSitePresenterTest { val badIntent = fakeIntent("Hello World") presenter.onBroadcast(badIntent) - val model = fakeModel().copy(lastCheck = 0) val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) whenever(goodIntent.getSerializableExtra(KEY_UPDATE_MODEL)) - .doReturn(model) + .doReturn(MOCK_MODEL_2) presenter.onBroadcast(goodIntent) - assertThat(presenter.currentModel()).isEqualTo(model) - verify(view, times(1)).displayModel(model) + assertThat(presenter.currentModel()).isEqualTo(MOCK_MODEL_2) + verify(view, times(1)).displayModel(MOCK_MODEL_2) } @Test fun onNewIntent() { val badIntent = fakeIntent(ACTION_STATUS_UPDATE) presenter.onBroadcast(badIntent) - val model = fakeModel().copy(lastCheck = 0) val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) whenever(goodIntent.getSerializableExtra(KEY_VIEW_MODEL)) - .doReturn(model) + .doReturn(MOCK_MODEL_3) presenter.onBroadcast(goodIntent) - verify(view, times(1)).displayModel(model) + verify(view, times(1)).displayModel(MOCK_MODEL_3) } @Test fun onUrlInputFocusChange_focused() { @@ -298,10 +293,19 @@ class ViewSitePresenterTest { val url = "https://hello.com" val checkInterval = 60000L val validationMode = TERM_SEARCH - val validationContent = "Hello World" + val validationArgs = "Hello World" - val disabledModel = presenter.currentModel() - .copy(disabled = true) + val currentModel = presenter.currentModel() + val initialLastResult = ValidationResult( + siteId = currentModel.id, + timestampMs = currentTimeMillis() - 60000, + status = ERROR, + reason = "Oh no!" + ) + val disabledModel = currentModel.copy( + settings = currentModel.settings!!.copy(disabled = true), + lastResult = initialLastResult + ) presenter.setModel(disabledModel) presenter.commit( @@ -309,21 +313,38 @@ class ViewSitePresenterTest { url, checkInterval, validationMode, - validationContent, + validationArgs, 60000 ) - val modelCaptor = argumentCaptor() - verify(view).setLoading() - verify(serverModelStore).update(modelCaptor.capture()) + val siteCaptor = argumentCaptor() + val settingsCaptor = argumentCaptor() + val resultCaptor = argumentCaptor() - val model = modelCaptor.firstValue - assertThat(model.name).isEqualTo(name) - assertThat(model.url).isEqualTo(url) - assertThat(model.checkInterval).isEqualTo(checkInterval) - assertThat(model.validationMode).isEqualTo(validationMode) - assertThat(model.validationContent).isEqualTo(validationContent) - assertThat(model.disabled).isFalse() + verify(view).setLoading() + verify(database.siteDao()).update(siteCaptor.capture()) + verify(database.siteSettingsDao()).update(settingsCaptor.capture()) + verify(database.validationResultsDao()).update(resultCaptor.capture()) + + val model = siteCaptor.firstValue + model.apply { + assertThat(this.name).isEqualTo(name) + assertThat(this.url).isEqualTo(url) + } + + val settings = settingsCaptor.firstValue + settings.apply { + assertThat(this.validationIntervalMs).isEqualTo(checkInterval) + assertThat(this.validationArgs).isEqualTo(validationArgs) + assertThat(this.disabled).isFalse() + } + + val result = resultCaptor.firstValue + result.apply { + assertThat(this.status).isEqualTo(WAITING) + assertThat(this.reason).isNull() + assertThat(this.timestampMs).isGreaterThan(0) + } verify(view, never()).setInputErrors(any()) verify(checkStatusManager).scheduleCheck( @@ -338,9 +359,7 @@ class ViewSitePresenterTest { @Test fun checkNow() { val newModel = presenter.currentModel() - .copy( - status = WAITING - ) + .withStatus(status = WAITING) presenter.checkNow() verify(view, never()).setLoading() @@ -360,11 +379,18 @@ class ViewSitePresenterTest { verify(notificationManager).cancelStatusNotification(model) verify(view).setLoading() - val modelCaptor = argumentCaptor() - verify(serverModelStore).update(modelCaptor.capture()) + val modelCaptor = argumentCaptor() + val settingsCaptor = argumentCaptor() + val resultCaptor = argumentCaptor() + + verify(database.siteDao()).update(modelCaptor.capture()) + verify(database.siteSettingsDao()).update(settingsCaptor.capture()) + verify(database.validationResultsDao()).update(resultCaptor.capture()) + val newModel = modelCaptor.firstValue - assertThat(newModel.disabled).isTrue() - assertThat(newModel.lastCheck).isEqualTo(LAST_CHECK_NONE) + val newSettings = settingsCaptor.firstValue + val result = resultCaptor.firstValue + assertThat(newSettings.disabled).isTrue() verify(view).setDoneLoading() verify(view, times(1)).displayModel(newModel) @@ -377,18 +403,15 @@ class ViewSitePresenterTest { verify(checkStatusManager).cancelCheck(model) verify(notificationManager).cancelStatusNotification(model) verify(view).setLoading() - verify(serverModelStore).delete(model) + + verify(database.siteSettingsDao()).delete(model.settings!!) + verify(database.validationResultsDao()).delete(model.lastResult!!) + verify(database.siteDao()).delete(model) + verify(view).setDoneLoading() verify(view).finish() } - private fun fakeModel() = ServerModel( - id = 1, - name = "Test", - url = "https://test.com", - validationMode = STATUS_CODE - ) - private fun fakeIntent(action: String): Intent { return mock { on { getAction() } doReturn action diff --git a/data/build.gradle b/data/build.gradle index 4ff907d..6a79c06 100644 --- a/data/build.gradle +++ b/data/build.gradle @@ -1,6 +1,7 @@ apply from: '../dependencies.gradle' apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +apply plugin: 'kotlin-kapt' android { compileSdkVersion versions.compileSdk @@ -10,6 +11,8 @@ android { targetSdkVersion versions.compileSdk versionCode versions.publishVersionCode versionName versions.publishVersion + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } } @@ -17,6 +20,17 @@ dependencies { implementation project(':utilities') implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:' + versions.kotlin + + implementation 'com.google.dagger:dagger:' + versions.dagger + annotationProcessor 'com.google.dagger:dagger-compiler:' + versions.dagger + + api 'androidx.room:room-runtime:' + versions.room + kapt 'androidx.room:room-compiler:' + versions.room + + androidTestImplementation 'androidx.test:runner:' + versions.androidxTestRunner + androidTestImplementation 'androidx.test:rules:' + versions.androidxTestRunner + androidTestImplementation 'androidx.test:core:' + versions.androidxTest + androidTestImplementation 'com.google.truth:truth:' + versions.truth } apply from: '../spotless.gradle' \ No newline at end of file diff --git a/data/src/androidTest/AndroidManifest.xml b/data/src/androidTest/AndroidManifest.xml new file mode 100644 index 0000000..17a2157 --- /dev/null +++ b/data/src/androidTest/AndroidManifest.xml @@ -0,0 +1,10 @@ + + + + + + diff --git a/data/src/androidTest/java/com/afollestad/nocknock/data/AppDatabaseTest.kt b/data/src/androidTest/java/com/afollestad/nocknock/data/AppDatabaseTest.kt new file mode 100644 index 0000000..27e222c --- /dev/null +++ b/data/src/androidTest/java/com/afollestad/nocknock/data/AppDatabaseTest.kt @@ -0,0 +1,350 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@file:Suppress("RemoveEmptyPrimaryConstructor") + +package com.afollestad.nocknock.data + +import android.content.Context +import androidx.room.Room.inMemoryDatabaseBuilder +import androidx.test.core.app.ApplicationProvider.getApplicationContext +import androidx.test.runner.AndroidJUnit4 +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.Status.ERROR +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.model.ValidationResult +import com.google.common.truth.Truth.assertThat +import org.junit.After +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith +import java.io.IOException +import java.lang.System.currentTimeMillis + +/** @author Aidan Follestad (@afollestad) */ +@RunWith(AndroidJUnit4::class) +class AppDatabaseTest() { + + private lateinit var db: AppDatabase + private lateinit var sitesDao: SiteDao + private lateinit var settingsDao: SiteSettingsDao + private lateinit var resultsDao: ValidationResultsDao + + @Before fun setup() { + val context = getApplicationContext() + db = inMemoryDatabaseBuilder(context, AppDatabase::class.java).build() + sitesDao = db.siteDao() + settingsDao = db.siteSettingsDao() + resultsDao = db.validationResultsDao() + } + + @After + @Throws(IOException::class) + fun destroy() { + db.close() + } + + // SiteDao + + @Test fun site_insert_and_get_all() { + val model1 = Site( + name = "Test 1", + url = "https://test1.com", + settings = null, + lastResult = null + ) + val newId1 = sitesDao.insert(model1) + assertThat(newId1).isGreaterThan(0) + + val model2 = Site( + name = "Test 2", + url = "https://test2.com", + settings = null, + lastResult = null + ) + val newId2 = sitesDao.insert(model2) + assertThat(newId2).isGreaterThan(newId1) + + val models = sitesDao.all() + assertThat(models.size).isEqualTo(2) + assertThat(models[0]).isEqualTo(model1.copy(id = newId1)) + assertThat(models[1]).isEqualTo(model2.copy(id = newId2)) + } + + @Test fun site_insert_and_get_one() { + val model = Site( + name = "Test", + url = "https://test.com", + settings = null, + lastResult = null + ) + val newId = sitesDao.insert(model) + assertThat(newId).isGreaterThan(0) + + val models = sitesDao.all() + assertThat(models.single()).isEqualTo(model.copy(id = newId)) + } + + @Test fun site_insert_and_update() { + val initialModel = Site( + name = "Test 1", + url = "https://test1.com", + settings = null, + lastResult = null + ) + val newId = sitesDao.insert(initialModel) + assertThat(newId).isGreaterThan(0) + + val insertedModel = sitesDao.all() + .single() + val updatedModel = insertedModel.copy( + name = "Test 2", + url = "https://hi.com" + ) + assertThat(sitesDao.update(updatedModel)).isEqualTo(1) + + val finalModel = sitesDao.all() + .single() + assertThat(finalModel).isNotEqualTo(initialModel.copy(id = newId)) + } + + @Test fun site_insert_and_delete() { + val model1 = Site( + name = "Test 1", + url = "https://test1.com", + settings = null, + lastResult = null + ) + val newId1 = sitesDao.insert(model1) + assertThat(newId1).isGreaterThan(0) + + val model2 = Site( + name = "Test 2", + url = "https://test2.com", + settings = null, + lastResult = null + ) + val newId2 = sitesDao.insert(model2) + assertThat(newId2).isGreaterThan(newId1) + + val models1 = sitesDao.all() + sitesDao.delete(models1[0]) + + val models2 = sitesDao.all() + assertThat(models2.single()).isEqualTo(models1[1]) + } + + // SiteSettingsDao + + @Test fun settings_insert_and_forSite() { + val model = SiteSettings( + siteId = 1, + validationIntervalMs = 60000, + validationMode = STATUS_CODE, + validationArgs = null, + disabled = false, + networkTimeout = 10000 + ) + val newId = settingsDao.insert(model) + assertThat(newId).isEqualTo(1) + + val finalModel = settingsDao.forSite(newId) + .single() + assertThat(finalModel).isEqualTo(model.copy(siteId = newId)) + } + + @Test fun settings_update() { + settingsDao.insert( + SiteSettings( + siteId = 1, + validationIntervalMs = 60000, + validationMode = STATUS_CODE, + validationArgs = null, + disabled = false, + networkTimeout = 10000 + ) + ) + + val insertedModel = settingsDao.forSite(1) + .single() + val updatedModel = insertedModel.copy( + validationIntervalMs = 10000, + validationMode = TERM_SEARCH, + validationArgs = "test", + disabled = false, + networkTimeout = 1000 + ) + assertThat(settingsDao.update(updatedModel)).isEqualTo(1) + + val finalModel = settingsDao.forSite(1) + .single() + assertThat(finalModel).isEqualTo(updatedModel) + } + + @Test fun settings_delete() { + settingsDao.insert( + SiteSettings( + siteId = 1, + validationIntervalMs = 60000, + validationMode = STATUS_CODE, + validationArgs = null, + disabled = false, + networkTimeout = 10000 + ) + ) + + val insertedModel = settingsDao.forSite(1) + .single() + settingsDao.delete(insertedModel) + assertThat(settingsDao.forSite(1)).isEmpty() + } + + // ValidationResultsDao + + @Test fun validation_insert_and_forSite() { + val model = ValidationResult( + siteId = 1, + timestampMs = currentTimeMillis(), + status = ERROR, + reason = "Oh no" + ) + val newId = resultsDao.insert(model) + assertThat(newId).isEqualTo(1) + + val finalModel = resultsDao.forSite(newId) + .single() + assertThat(finalModel).isEqualTo(model.copy(siteId = newId)) + } + + @Test fun validation_update() { + resultsDao.insert( + ValidationResult( + siteId = 1, + timestampMs = currentTimeMillis(), + status = ERROR, + reason = "Oh no" + ) + ) + + val insertedModel = resultsDao.forSite(1) + .single() + val updatedModel = insertedModel.copy( + timestampMs = currentTimeMillis() + 1000, + status = OK, + reason = null + ) + assertThat(resultsDao.update(updatedModel)).isEqualTo(1) + + val finalModel = resultsDao.forSite(1) + .single() + assertThat(finalModel).isEqualTo(updatedModel) + } + + @Test fun validation_delete() { + resultsDao.insert( + ValidationResult( + siteId = 1, + timestampMs = currentTimeMillis(), + status = ERROR, + reason = "Oh no" + ) + ) + + val insertedModel = resultsDao.forSite(1) + .single() + resultsDao.delete(insertedModel) + assertThat(resultsDao.forSite(1)).isEmpty() + } + + // Extension Methods + + @Test fun extension_put_and_allSites() { + db.putSite(MOCK_MODEL_1) + db.putSite(MOCK_MODEL_2) + db.putSite(MOCK_MODEL_3) + + val allSites = db.allSites() + assertThat(allSites.size).isEqualTo(3) + assertThat(allSites[0]).isEqualTo(MOCK_MODEL_1) + assertThat(allSites[1]).isEqualTo(MOCK_MODEL_2) + assertThat(allSites[2]).isEqualTo(MOCK_MODEL_3) + } + + @Test fun extension_put_getSite() { + db.putSite(MOCK_MODEL_1) + db.putSite(MOCK_MODEL_2) + db.putSite(MOCK_MODEL_3) + val allSites = db.allSites() + + val site = db.getSite(2) + assertThat(site).isEqualTo(allSites[1]) + } + + @Test fun extension_put_updateSite() { + db.putSite(MOCK_MODEL_1) + db.putSite(MOCK_MODEL_2) + db.putSite(MOCK_MODEL_3) + val modelToUpdate = db.allSites()[1] + + val updatedSettings = modelToUpdate.settings!!.copy( + validationIntervalMs = 1, + validationMode = JAVASCRIPT, + validationArgs = "throw 'Hello World'", + disabled = false, + networkTimeout = 50 + ) + val updatedValidationResult = modelToUpdate.lastResult!!.copy( + timestampMs = currentTimeMillis() + 10, + status = ERROR, + reason = "Oh no" + ) + val updatedModel = modelToUpdate.copy( + name = "Oijrfouhef", + url = "https://iojfdfsdk.io", + settings = updatedSettings, + lastResult = updatedValidationResult + ) + + db.updateSite(updatedModel) + + val finalSite = db.getSite(modelToUpdate.id)!! + assertThat(finalSite.settings).isEqualTo(updatedSettings) + assertThat(finalSite.lastResult).isEqualTo(updatedValidationResult) + assertThat(finalSite).isEqualTo(updatedModel) + } + + @Test fun extension_put_and_deleteSite() { + db.putSite(MOCK_MODEL_1) + db.putSite(MOCK_MODEL_2) + db.putSite(MOCK_MODEL_3) + val allSites = db.allSites() + + db.deleteSite(MOCK_MODEL_2) + + val remainingSettings = settingsDao.all() + assertThat(remainingSettings.size).isEqualTo(2) + assertThat(remainingSettings[0]).isEqualTo(allSites[0].settings!!) + assertThat(remainingSettings[1]).isEqualTo(allSites[2].settings!!) + + val remainingResults = resultsDao.all() + assertThat(remainingResults.size).isEqualTo(2) + assertThat(remainingResults[0]).isEqualTo(allSites[0].lastResult!!) + assertThat(remainingResults[1]).isEqualTo(allSites[2].lastResult!!) + } +} diff --git a/data/src/androidTest/java/com/afollestad/nocknock/data/TestUtil.kt b/data/src/androidTest/java/com/afollestad/nocknock/data/TestUtil.kt new file mode 100644 index 0000000..7d3ed01 --- /dev/null +++ b/data/src/androidTest/java/com/afollestad/nocknock/data/TestUtil.kt @@ -0,0 +1,60 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.data + +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.Status +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationResult +import java.lang.System.currentTimeMillis + +fun fakeSettingsModel( + id: Long, + validationMode: ValidationMode = STATUS_CODE +) = SiteSettings( + siteId = id, + validationIntervalMs = 600000, + validationMode = validationMode, + validationArgs = null, + disabled = false, + networkTimeout = 10000 +) + +fun fakeResultModel( + id: Long, + status: Status = OK, + reason: String? = null +) = ValidationResult( + siteId = id, + status = status, + reason = reason, + timestampMs = currentTimeMillis() +) + +fun fakeModel(id: Long) = Site( + id = id, + name = "Test", + url = "https://test.com", + settings = fakeSettingsModel(id), + lastResult = fakeResultModel(id) +) + +val MOCK_MODEL_1 = fakeModel(1) +val MOCK_MODEL_2 = fakeModel(2) +val MOCK_MODEL_3 = fakeModel(3) diff --git a/data/src/main/java/com/afollestad/nocknock/data/AppDatabase.kt b/data/src/main/java/com/afollestad/nocknock/data/AppDatabase.kt new file mode 100644 index 0000000..8e49e08 --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/AppDatabase.kt @@ -0,0 +1,147 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.data + +import androidx.room.Database +import androidx.room.RoomDatabase +import androidx.room.TypeConverters +import com.afollestad.nocknock.data.model.Converters +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.ValidationResult + +/** @author Aidan Follestad (@afollestad) */ +@Database( + entities = [ + ValidationResult::class, + SiteSettings::class, + Site::class + ], + version = 1, + exportSchema = false +) +@TypeConverters(Converters::class) +abstract class AppDatabase : RoomDatabase() { + + abstract fun siteDao(): SiteDao + + abstract fun siteSettingsDao(): SiteSettingsDao + + abstract fun validationResultsDao(): ValidationResultsDao +} + +/** + * Gets all sites and maps their settings and last validation results. + * + * @author Aidan Follestad (@afollestad) + */ +fun AppDatabase.allSites(): List { + return siteDao().all() + .map { + val settings = siteSettingsDao().forSite(it.id) + .single() + val lastResult = validationResultsDao().forSite(it.id) + .singleOrNull() + return@map it.copy( + settings = settings, + lastResult = lastResult + ) + } +} + +/** + * Gets a single site and maps its settings and last validation result. + * + * @author Aidan Follestad (@afollestad) + */ +fun AppDatabase.getSite(id: Long): Site? { + val result = siteDao().one(id) + .singleOrNull() ?: return null + val settings = siteSettingsDao().forSite(id) + .single() + val lastResult = validationResultsDao().forSite(id) + .singleOrNull() + return result.copy( + settings = settings, + lastResult = lastResult + ) +} + +/** + * Inserts a site along with its settings and last result into the database. + * + * @author Aidan Follestad (@afollestad) + */ +fun AppDatabase.putSite(site: Site): Site { + requireNotNull(site.settings) { "Settings must be populated." } + val newId = siteDao().insert(site) + val settingsWithSiteId = + site.settings!!.copy( + siteId = newId + ) + siteSettingsDao().insert(settingsWithSiteId) + site.lastResult?.let { validationResultsDao().insert(it) } + return site.copy( + id = newId, + settings = settingsWithSiteId + ) +} + +/** + * Updates a site, along with its settings and last result, in the database. + * + * @author Aidan Follestad (@afollestad) + */ +fun AppDatabase.updateSite(site: Site) { + siteDao().update(site) + if (site.settings != null) { + val existing = siteSettingsDao().forSite(site.id) + .singleOrNull() + if (existing != null) { + siteSettingsDao().update(site.settings!!) + } else { + siteSettingsDao().insert( + site.settings!!.copy( + siteId = site.id + ) + ) + } + } + if (site.lastResult != null) { + val existing = validationResultsDao().forSite(site.id) + .singleOrNull() + if (existing != null) { + validationResultsDao().update(site.lastResult!!) + } else { + validationResultsDao().insert(site.lastResult!!) + } + } +} + +/** + * Deletes a site along with its settings and last result from the database. + * + * @author Aidan Follestad (@afollestad) + */ +fun AppDatabase.deleteSite(site: Site) { + if (site.settings != null) { + siteSettingsDao().delete(site.settings!!) + } + if (site.lastResult != null) { + validationResultsDao().delete(site.lastResult!!) + } + siteDao().delete(site) +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/ServerStatus.kt b/data/src/main/java/com/afollestad/nocknock/data/ServerStatus.kt deleted file mode 100644 index 9cc28d0..0000000 --- a/data/src/main/java/com/afollestad/nocknock/data/ServerStatus.kt +++ /dev/null @@ -1,50 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.data - -import com.afollestad.nocknock.data.ServerStatus.CHECKING -import com.afollestad.nocknock.data.ServerStatus.OK -import com.afollestad.nocknock.data.ServerStatus.WAITING - -/** @author Aidan Follestad (@afollestad) */ -enum class ServerStatus(val value: Int) { - OK(1), - WAITING(2), - CHECKING(3), - ERROR(4); - - companion object { - - fun fromValue(value: Int) = when (value) { - OK.value -> OK - WAITING.value -> WAITING - CHECKING.value -> CHECKING - ERROR.value -> ERROR - else -> throw IllegalArgumentException("Unknown validationMode: $value") - } - } -} - -fun ServerStatus.textRes() = when (this) { - OK -> R.string.everything_checks_out - WAITING -> R.string.waiting - CHECKING -> R.string.checking_status - else -> 0 -} - -fun Int.toServerStatus() = ServerStatus.fromValue(this) - -fun ServerStatus.isPending() = this == WAITING || this == CHECKING diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt b/data/src/main/java/com/afollestad/nocknock/data/SiteDao.kt similarity index 50% rename from engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt rename to data/src/main/java/com/afollestad/nocknock/data/SiteDao.kt index b9fd1e1..135a8f1 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/SiteDao.kt @@ -13,29 +13,32 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.engine +package com.afollestad.nocknock.data -import com.afollestad.nocknock.engine.db.RealServerModelStore -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusManager -import com.afollestad.nocknock.engine.statuscheck.RealCheckStatusManager -import dagger.Binds -import dagger.Module -import javax.inject.Singleton +import androidx.room.Dao +import androidx.room.Delete +import androidx.room.Insert +import androidx.room.OnConflictStrategy.FAIL +import androidx.room.Query +import androidx.room.Update +import com.afollestad.nocknock.data.model.Site /** @author Aidan Follestad (@afollestad) */ -@Module -abstract class EngineModule { +@Dao +interface SiteDao { - @Binds - @Singleton - abstract fun provideServerModelStore( - serverModelStore: RealServerModelStore - ): ServerModelStore + @Query("SELECT * FROM sites ORDER BY name ASC") + fun all(): List - @Binds - @Singleton - abstract fun provideCheckStatusManager( - checkStatusManager: RealCheckStatusManager - ): CheckStatusManager + @Query("SELECT * FROM sites WHERE id = :id LIMIT 1") + fun one(id: Long): List + + @Insert(onConflict = FAIL) + fun insert(site: Site): Long + + @Update(onConflict = FAIL) + fun update(site: Site): Int + + @Delete + fun delete(site: Site): Int } diff --git a/data/src/main/java/com/afollestad/nocknock/data/SiteSettingsDao.kt b/data/src/main/java/com/afollestad/nocknock/data/SiteSettingsDao.kt new file mode 100644 index 0000000..b11f418 --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/SiteSettingsDao.kt @@ -0,0 +1,44 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.data + +import androidx.room.Dao +import androidx.room.Delete +import androidx.room.Insert +import androidx.room.OnConflictStrategy.FAIL +import androidx.room.Query +import androidx.room.Update +import com.afollestad.nocknock.data.model.SiteSettings + +/** @author Aidan Follestad (@afollestad) */ +@Dao +interface SiteSettingsDao { + + @Query("SELECT * FROM site_settings ORDER BY siteId ASC") + fun all(): List + + @Query("SELECT * FROM site_settings WHERE siteId = :siteId LIMIT 1") + fun forSite(siteId: Long): List + + @Insert(onConflict = FAIL) + fun insert(siteSetting: SiteSettings): Long + + @Update(onConflict = FAIL) + fun update(siteSetting: SiteSettings): Int + + @Delete + fun delete(siteSetting: SiteSettings): Int +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/ValidationResultsDao.kt b/data/src/main/java/com/afollestad/nocknock/data/ValidationResultsDao.kt new file mode 100644 index 0000000..d6c81dc --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/ValidationResultsDao.kt @@ -0,0 +1,44 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.data + +import androidx.room.Dao +import androidx.room.Delete +import androidx.room.Insert +import androidx.room.OnConflictStrategy.FAIL +import androidx.room.Query +import androidx.room.Update +import com.afollestad.nocknock.data.model.ValidationResult + +/** @author Aidan Follestad (@afollestad) */ +@Dao +interface ValidationResultsDao { + + @Query("SELECT * FROM validation_results ORDER BY siteId ASC") + fun all(): List + + @Query("SELECT * FROM validation_results WHERE siteId = :siteId LIMIT 1") + fun forSite(siteId: Long): List + + @Insert(onConflict = FAIL) + fun insert(siteSetting: ValidationResult): Long + + @Update(onConflict = FAIL) + fun update(siteSetting: ValidationResult): Int + + @Delete + fun delete(siteSetting: ValidationResult): Int +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/legacy/DbMigrator.kt b/data/src/main/java/com/afollestad/nocknock/data/legacy/DbMigrator.kt new file mode 100644 index 0000000..5af752b --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/legacy/DbMigrator.kt @@ -0,0 +1,105 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@file:Suppress("DEPRECATION") + +package com.afollestad.nocknock.data.legacy + +import android.app.Application +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.Status.CHECKING +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.ValidationResult +import javax.inject.Inject + +/** + * Migrates from manual SQLite management to Room. + * + * @author Aidan Follestad (@afollestad) + */ +class DbMigrator @Inject constructor( + app: Application, + private val appDb: AppDatabase +) { + private val legacyStore = ServerModelStore(app) + + fun migrateAll(): Int { + val legacyModels = legacyStore.get() + var count = 0 + + for (oldModel in legacyModels) { + // Insert site + val site = oldModel.toNewModel() + val siteId = appDb.siteDao() + .insert(site) + + // Insert site settings + val settingsWithId = site.settings!!.copy( + siteId = siteId + ) + appDb.siteSettingsDao() + .insert(settingsWithId) + + // Insert validation result + site.lastResult?.let { + val resultWithId = it.copy( + siteId = siteId + ) + appDb.validationResultsDao() + .insert(resultWithId) + } + + count++ + } + + legacyStore.wipe() + return count + } + + private fun ServerModel.toNewModel(): Site { + return Site( + id = 0, + name = this.name, + url = this.url, + settings = this.toSettingsModel(), + lastResult = this.toValidationModel() + ) + } + + private fun ServerModel.toSettingsModel(): SiteSettings { + return SiteSettings( + siteId = 0, + validationIntervalMs = this.checkInterval, + validationMode = this.validationMode, + validationArgs = this.validationContent, + disabled = this.disabled, + networkTimeout = this.networkTimeout + ) + } + + private fun ServerModel.toValidationModel(): ValidationResult? { + if (this.lastCheck == LAST_CHECK_NONE) { + return null + } + return ValidationResult( + siteId = 0, + timestampMs = this.lastCheck, + status = if (this.status == CHECKING) WAITING else this.status, + reason = this.reason + ) + } +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModel.kt similarity index 55% rename from data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt rename to data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModel.kt index 474e514..9882705 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/ServerModel.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModel.kt @@ -13,25 +13,28 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.data +@file:Suppress("DEPRECATION") + +package com.afollestad.nocknock.data.legacy import android.content.ContentValues import android.database.Cursor -import com.afollestad.nocknock.data.ServerStatus.OK -import com.afollestad.nocknock.utilities.ext.timeString -import com.afollestad.nocknock.utilities.providers.IdProvider -import java.lang.System.currentTimeMillis -import kotlin.math.max +import com.afollestad.nocknock.data.model.Status +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.toSiteStatus +import com.afollestad.nocknock.data.model.toValidationMode const val CHECK_INTERVAL_UNSET = -1L const val LAST_CHECK_NONE = -1L /** @author Aidan Follestad (@afollestad)*/ +@Deprecated("Deprecated in favor of Site.") data class ServerModel( var id: Int = 0, val name: String, val url: String, - val status: ServerStatus = OK, + val status: Status = OK, val checkInterval: Long = CHECK_INTERVAL_UNSET, val lastCheck: Long = LAST_CHECK_NONE, val reason: String? = null, @@ -39,7 +42,7 @@ data class ServerModel( val validationContent: String? = null, val disabled: Boolean = false, val networkTimeout: Int = 0 -) : IdProvider { +) { companion object { const val TABLE_NAME = "server_models" @@ -59,31 +62,65 @@ data class ServerModel( fun pull(cursor: Cursor): ServerModel { return ServerModel( - id = cursor.getInt(cursor.getColumnIndex(COLUMN_ID)), - name = cursor.getString(cursor.getColumnIndex(COLUMN_NAME)), - url = cursor.getString(cursor.getColumnIndex(COLUMN_URL)), - status = cursor.getInt(cursor.getColumnIndex(COLUMN_STATUS)).toServerStatus(), - checkInterval = cursor.getLong(cursor.getColumnIndex(COLUMN_CHECK_INTERVAL)), - lastCheck = cursor.getLong(cursor.getColumnIndex(COLUMN_LAST_CHECK)), - reason = cursor.getString(cursor.getColumnIndex(COLUMN_REASON)), + id = cursor.getInt( + cursor.getColumnIndex( + COLUMN_ID + ) + ), + name = cursor.getString( + cursor.getColumnIndex( + COLUMN_NAME + ) + ), + url = cursor.getString( + cursor.getColumnIndex( + COLUMN_URL + ) + ), + status = cursor.getInt( + cursor.getColumnIndex( + COLUMN_STATUS + ) + ).toSiteStatus(), + checkInterval = cursor.getLong( + cursor.getColumnIndex( + COLUMN_CHECK_INTERVAL + ) + ), + lastCheck = cursor.getLong( + cursor.getColumnIndex( + COLUMN_LAST_CHECK + ) + ), + reason = cursor.getString( + cursor.getColumnIndex( + COLUMN_REASON + ) + ), validationMode = cursor.getInt( - cursor.getColumnIndex(COLUMN_VALIDATION_MODE) + cursor.getColumnIndex( + COLUMN_VALIDATION_MODE + ) ).toValidationMode(), - validationContent = cursor.getString(cursor.getColumnIndex(COLUMN_VALIDATION_CONTENT)), - disabled = cursor.getInt(cursor.getColumnIndex(COLUMN_DISABLED)) == 1, - networkTimeout = cursor.getInt(cursor.getColumnIndex(COLUMN_NETWORK_TIMEOUT)) + validationContent = cursor.getString( + cursor.getColumnIndex( + COLUMN_VALIDATION_CONTENT + ) + ), + disabled = cursor.getInt( + cursor.getColumnIndex( + COLUMN_DISABLED + ) + ) == 1, + networkTimeout = cursor.getInt( + cursor.getColumnIndex( + COLUMN_NETWORK_TIMEOUT + ) + ) ) } } - override fun id() = id - - fun intervalText(): String { - val now = currentTimeMillis() - val nextCheck = max(lastCheck, 0) + checkInterval - return (nextCheck - now).timeString() - } - fun toContentValues() = ContentValues().apply { put(COLUMN_NAME, name) put(COLUMN_URL, url) diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelDbHelper.kt similarity index 90% rename from engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt rename to data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelDbHelper.kt index 2fc9a4d..f0bdb2f 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelDbHelper.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelDbHelper.kt @@ -13,12 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.engine.db +@file:Suppress("DEPRECATION") + +package com.afollestad.nocknock.data.legacy import android.content.Context import android.database.sqlite.SQLiteDatabase import android.database.sqlite.SQLiteOpenHelper -import com.afollestad.nocknock.data.ServerModel private const val SQL_CREATE_ENTRIES = "CREATE TABLE ${ServerModel.TABLE_NAME} (" + @@ -38,8 +39,10 @@ private const val SQL_CREATE_ENTRIES = private const val SQL_DELETE_ENTRIES = "DROP TABLE IF EXISTS ${ServerModel.TABLE_NAME}" /** @author Aidan Follestad (@afollestad) */ -class ServerModelDbHelper(context: Context) : SQLiteOpenHelper( - context, DATABASE_NAME, null, DATABASE_VERSION +@Deprecated("Use AppDatabase.") +internal class ServerModelDbHelper(context: Context) : SQLiteOpenHelper( + context, DATABASE_NAME, null, + DATABASE_VERSION ) { companion object { const val DATABASE_VERSION = 3 @@ -71,6 +74,5 @@ class ServerModelDbHelper(context: Context) : SQLiteOpenHelper( fun wipe() { this.writableDatabase.execSQL(SQL_DELETE_ENTRIES) - onCreate(this.writableDatabase) } } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelStore.kt similarity index 60% rename from engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt rename to data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelStore.kt index 9c7ecce..2d0a0cb 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/db/ServerModelStore.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelStore.kt @@ -13,42 +13,24 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.engine.db +@file:Suppress("DEPRECATION") + +package com.afollestad.nocknock.data.legacy import android.app.Application +import android.content.ContentValues import android.database.Cursor -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ServerModel.Companion.COLUMN_ID -import com.afollestad.nocknock.data.ServerModel.Companion.DEFAULT_SORT_ORDER -import com.afollestad.nocknock.data.ServerModel.Companion.TABLE_NAME -import com.afollestad.nocknock.utilities.ext.diffFrom -import org.jetbrains.annotations.TestOnly -import javax.inject.Inject -import timber.log.Timber.d as log -import timber.log.Timber.w as warn +import com.afollestad.nocknock.data.legacy.ServerModel.Companion.COLUMN_ID +import com.afollestad.nocknock.data.legacy.ServerModel.Companion.DEFAULT_SORT_ORDER +import com.afollestad.nocknock.data.legacy.ServerModel.Companion.TABLE_NAME /** @author Aidan Follestad (@afollestad) */ -interface ServerModelStore { - - suspend fun get(id: Int? = null): List - - suspend fun put(model: ServerModel): ServerModel - - suspend fun update(model: ServerModel): Int - - suspend fun delete(model: ServerModel): Int - - suspend fun delete(id: Int): Int - - suspend fun deleteAll(): Int -} - -/** @author Aidan Follestad (@afollestad) */ -class RealServerModelStore @Inject constructor(app: Application) : ServerModelStore { +@Deprecated("Deprecated in favor of AppDatabase.") +internal class ServerModelStore(app: Application) { private val dbHelper = ServerModelDbHelper(app) - override suspend fun get(id: Int?): List { + fun get(id: Int? = null): List { if (id == null) { return getAll() } @@ -88,19 +70,16 @@ class RealServerModelStore @Inject constructor(app: Application) : ServerModelSt cursor.use { return readModels(it) } } - override suspend fun put(model: ServerModel): ServerModel { + fun put(model: ServerModel): ServerModel { check(model.id == 0) { "Cannot put a model that already has an ID." } val writer = dbHelper.writableDatabase val newId = writer.insert(TABLE_NAME, null, model.toContentValues()) return model.copy(id = newId.toInt()) - .apply { - log("Inserted new site model: $this") - } } - override suspend fun update(model: ServerModel): Int { + fun update(model: ServerModel): Int { check(model.id != 0) { "Cannot update a model that does not have an ID." } val oldModel = get(model.id).single() @@ -111,35 +90,27 @@ class RealServerModelStore @Inject constructor(app: Application) : ServerModelSt val valuesDiff = oldValues.diffFrom(newValues) if (valuesDiff.size() == 0) { - warn("Nothing has changed - nothing to update!") return 0 } val selection = "$COLUMN_ID = ?" val selectionArgs = arrayOf("${model.id}") - log("Updated model: $model") return writer.update(TABLE_NAME, valuesDiff, selection, selectionArgs) } - override suspend fun delete(model: ServerModel) = delete(model.id) + fun delete(model: ServerModel) = delete(model.id) - override suspend fun delete(id: Int): Int { + fun delete(id: Int): Int { check(id != 0) { "Cannot delete a model that doesn't have an ID." } val selection = "$COLUMN_ID = ?" val selectionArgs = arrayOf("$id") - log("Deleted model: $id") return dbHelper.writableDatabase.delete(TABLE_NAME, selection, selectionArgs) } - override suspend fun deleteAll(): Int { - log("Deleted all models") - return dbHelper.writableDatabase.delete(TABLE_NAME, null, null) - } - - @TestOnly fun db() = dbHelper + fun wipe() = dbHelper.wipe() private fun readModels(cursor: Cursor): List { val results = mutableListOf() @@ -148,4 +119,45 @@ class RealServerModelStore @Inject constructor(app: Application) : ServerModelSt } return results } + + /** + * Returns a [ContentValues] instance which contains only values that have changed between + * the receiver (original) and parameter (new) instances. + */ + private fun ContentValues.diffFrom(contentValues: ContentValues): ContentValues { + val diff = ContentValues() + for ((name, oldValue) in this.valueSet()) { + val newValue = contentValues.get(name) + if (newValue != oldValue) { + diff.putAny(name, newValue) + } + } + return diff + } + + /** + * Auto casts an [Any] value and uses the appropriate `put` method to store it + * in the [ContentValues] instance. + */ + private fun ContentValues.putAny( + name: String, + value: Any? + ) { + if (value == null) { + putNull(name) + return + } + when (value) { + is String -> put(name, value) + is Byte -> put(name, value) + is Short -> put(name, value) + is Int -> put(name, value) + is Long -> put(name, value) + is Float -> put(name, value) + is Double -> put(name, value) + is Boolean -> put(name, value) + is ByteArray -> put(name, value) + else -> throw IllegalArgumentException("ContentValues can't hold $value") + } + } } diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/Converters.kt b/data/src/main/java/com/afollestad/nocknock/data/model/Converters.kt new file mode 100644 index 0000000..b532829 --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/model/Converters.kt @@ -0,0 +1,42 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.data.model + +import androidx.room.TypeConverter + +/** @author Aidan Follestad (@afollestad) */ +class Converters { + + @TypeConverter + fun fromStatus(status: Status): Int { + return status.value + } + + @TypeConverter + fun toStatus(raw: Int): Status { + return Status.fromValue(raw) + } + + @TypeConverter + fun fromValidationMode(mode: ValidationMode): Int { + return mode.value + } + + @TypeConverter + fun toValidationMode(raw: Int): ValidationMode { + return ValidationMode.fromValue(raw) + } +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt b/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt new file mode 100644 index 0000000..b0539d7 --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt @@ -0,0 +1,76 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.data.model + +import androidx.room.Entity +import androidx.room.Ignore +import androidx.room.PrimaryKey +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.utilities.ext.timeString +import com.afollestad.nocknock.utilities.providers.CanNotifyModel +import java.lang.System.currentTimeMillis +import kotlin.math.max + +/** @author Aidan Follestad (@afollestad) */ +@Entity(tableName = "sites") +data class Site( + /** The site's unique ID. */ + @PrimaryKey(autoGenerate = true) var id: Long = 0, + /** The site's user-given name. */ + var name: String, + /** The URl at which validation attempts are made to. */ + var url: String, + /** Settings for the site. */ + @Ignore var settings: SiteSettings?, + /** The last validation attempt result for the site, if any. */ + @Ignore var lastResult: ValidationResult? +) : CanNotifyModel { + + constructor() : this(0, "", "", null, null) + + override fun notiId(): Int = id.toInt() + + override fun notiName(): String = name + + override fun notiTag(): String = url + + fun intervalText(): String { + requireNotNull(settings) { "Settings not queried." } + val lastCheck = lastResult?.timestampMs ?: -1 + val checkInterval = settings!!.validationIntervalMs + val now = System.currentTimeMillis() + val nextCheck = max(lastCheck, 0) + checkInterval + return (nextCheck - now).timeString() + } + + fun withStatus( + status: Status? = null, + reason: String? = null, + timestamp: Long? = null + ): Site { + val newLastResult = lastResult?.copy( + status = status ?: lastResult!!.status, + reason = reason, + timestampMs = timestamp ?: lastResult!!.timestampMs + ) ?: ValidationResult( + siteId = this.id, + timestampMs = timestamp ?: currentTimeMillis(), + status = status ?: WAITING, + reason = reason + ) + return this.copy(lastResult = newLastResult) + } +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/SiteSettings.kt b/data/src/main/java/com/afollestad/nocknock/data/model/SiteSettings.kt new file mode 100644 index 0000000..91667a7 --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/model/SiteSettings.kt @@ -0,0 +1,47 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@file:Suppress("unused") + +package com.afollestad.nocknock.data.model + +import androidx.room.Entity +import androidx.room.PrimaryKey +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import java.io.Serializable + +/** + * Represents the current user configuration for a [Site]. + * + * @author Aidan Follestad (@afollestad) + */ +@Entity(tableName = "site_settings") +data class SiteSettings( + /** The [Site] these settings belong to. */ + @PrimaryKey(autoGenerate = false) var siteId: Long = 0, + /** How often a validation attempt is made, in milliseconds. */ + var validationIntervalMs: Long, + /** The method of which is used to validate the [Site]. */ + var validationMode: ValidationMode, + /** Args that are used for the [ValidationMode], e.g. a search term. */ + var validationArgs: String?, + /** Whether or not the [Site] is enabled for automatic periodic checks. */ + var disabled: Boolean, + /** The network response timeout for validation attempts. */ + var networkTimeout: Int +) : Serializable { + + constructor() : this(0, 0, STATUS_CODE, null, false, 0) +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt b/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt new file mode 100644 index 0000000..4dcc3a0 --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt @@ -0,0 +1,59 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.data.model + +import com.afollestad.nocknock.data.R.string +import com.afollestad.nocknock.data.model.Status.CHECKING +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.Status.WAITING + +/** + * Represents the current status of a [Site] - or whether or not the + * site passed its most recent check. + * + * @author Aidan Follestad (@afollestad) + */ +enum class Status(val value: Int) { + /** The site has not been validated yet, pending the background job. */ + WAITING(1), + /** The site is currently being validated. */ + CHECKING(2), + /** The most recent validation attempt passed. */ + OK(3), + /** The site did not pass a recent validation attempt. */ + ERROR(4); + + companion object { + fun fromValue(value: Int) = when (value) { + OK.value -> OK + WAITING.value -> WAITING + CHECKING.value -> CHECKING + ERROR.value -> ERROR + else -> throw IllegalArgumentException("Unknown status: $value") + } + } +} + +fun Status.textRes() = when (this) { + OK -> string.everything_checks_out + WAITING -> string.waiting + CHECKING -> string.checking_status + else -> 0 +} + +fun Status?.isPending() = this == WAITING || this == CHECKING + +fun Int.toSiteStatus() = Status.fromValue(this) diff --git a/data/src/main/java/com/afollestad/nocknock/data/ValidationMode.kt b/data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt similarity index 66% rename from data/src/main/java/com/afollestad/nocknock/data/ValidationMode.kt rename to data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt index b2150ff..7a461b0 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/ValidationMode.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt @@ -13,12 +13,20 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.data +package com.afollestad.nocknock.data.model -/** @author Aidan Follestad (@afollestad) */ +/** + * Represents the validation mode of a [Site] - this is the type of + * check that is performed to get the site's current [Status]. + * + * @author Aidan Follestad (@afollestad) + */ enum class ValidationMode(val value: Int) { + /** The site is running normally if its status code is successful. */ STATUS_CODE(1), + /** The site is running normally if a piece of text is found in its response body. */ TERM_SEARCH(2), + /** The site is running normally if a block of given JavaScript executes successfully. */ JAVASCRIPT(3); companion object { @@ -39,6 +47,8 @@ enum class ValidationMode(val value: Int) { } } -fun Int.toValidationMode() = ValidationMode.fromValue(this) +fun Int.toValidationMode() = + ValidationMode.fromValue(this) -fun Int.indexToValidationMode() = ValidationMode.fromIndex(this) +fun Int.indexToValidationMode() = + ValidationMode.fromIndex(this) diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/ValidationResult.kt b/data/src/main/java/com/afollestad/nocknock/data/model/ValidationResult.kt new file mode 100644 index 0000000..3b91214 --- /dev/null +++ b/data/src/main/java/com/afollestad/nocknock/data/model/ValidationResult.kt @@ -0,0 +1,43 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@file:Suppress("unused") + +package com.afollestad.nocknock.data.model + +import androidx.room.Entity +import androidx.room.PrimaryKey +import com.afollestad.nocknock.data.model.Status.OK +import java.io.Serializable + +/** + * Represents the most recent validation result for a [Site]. + * + * @author Aidan Follestad (@afollestad) + */ +@Entity(tableName = "validation_results") +data class ValidationResult( + /** The [Site] that this result belongs to. */ + @PrimaryKey(autoGenerate = false) var siteId: Long = 0, + /** The timestamp in milliseconds at which this attempt was made. */ + var timestampMs: Long, + /** The result of this validation attempt. */ + var status: Status, + /** If the attempt was not successful, why it was not successful. */ + var reason: String? +) : Serializable { + + constructor(): this(0, 0, OK, null) +} diff --git a/dependencies.gradle b/dependencies.gradle index 2879f24..66a58f3 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -15,7 +15,9 @@ ext.versions = [ dagger : '2.19', kotlin : '1.3.10', coroutines : '1.0.1', + androidx : '1.0.0', + room : '2.0.0', rxBinding : '3.0.0-alpha1', @@ -23,9 +25,10 @@ ext.versions = [ rxkPrefs : '1.2.0', timber : '4.7.1', - testRunner : '1.0.2', junit : '4.12', mockito : '2.23.0', mockitoKotlin : '2.0.0-RC1', - truth : '0.42' + truth : '0.42', + androidxTestRunner: '1.1.0', + androidxTest : '1.0.0', ] diff --git a/engine/build.gradle b/engine/build.gradle index 7267354..c26b99b 100644 --- a/engine/build.gradle +++ b/engine/build.gradle @@ -10,8 +10,6 @@ android { targetSdkVersion versions.compileSdk versionCode versions.publishVersionCode versionName versions.publishVersion - - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } } @@ -34,9 +32,6 @@ dependencies { testImplementation 'org.mockito:mockito-core:' + versions.mockito testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:' + versions.mockitoKotlin testImplementation 'com.google.truth:truth:' + versions.truth - - androidTestImplementation 'com.android.support.test:runner:' + versions.testRunner - androidTestImplementation 'com.google.truth:truth:' + versions.truth } apply from: '../spotless.gradle' \ No newline at end of file diff --git a/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt b/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt deleted file mode 100644 index 0563db7..0000000 --- a/engine/src/androidTest/java/com/afollestad/nocknock/engine/ServerModelStoreTest.kt +++ /dev/null @@ -1,129 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.engine - -import android.app.Application -import android.support.test.runner.AndroidJUnit4 -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ServerStatus.CHECKING -import com.afollestad.nocknock.data.ServerStatus.ERROR -import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.engine.db.RealServerModelStore -import com.google.common.truth.Truth.assertThat -import kotlinx.coroutines.runBlocking -import org.junit.Before -import org.junit.Test -import org.junit.runner.RunWith -import android.support.test.InstrumentationRegistry.getTargetContext as context - -@RunWith(AndroidJUnit4::class) -class ServerModelStoreTest { - - private lateinit var store: RealServerModelStore - - @Before fun setup() { - store = RealServerModelStore(context().applicationContext as Application) - store.db() - .wipe() - } - - @Test fun get() = runBlocking { - // Put some fake data to retrieve - store.put(fakeModel(1)) - val model2 = store.put(fakeModel(2)) - - val model = store.get(2) - .single() - assertThat(model).isEqualTo(model2.copy(id = 2)) - } - - @Test fun getAll() = runBlocking { - // Put some fake data to retrieve - val model1 = store.put(fakeModel(1)) - val model2 = store.put(fakeModel(2)) - - val models = store.get() - assertThat(models.size).isEqualTo(2) - assertThat(models[0]).isEqualTo(model1.copy(id = 1)) - assertThat(models[1]).isEqualTo(model2.copy(id = 2)) - } - - @Test fun update() = runBlocking { - store.put( - ServerModel( - name = "Wakanda Forever", - url = "https://www.wakanda.gov", - status = ERROR, - checkInterval = 5, - lastCheck = 10, - reason = "Body doesn't contain your term.", - validationMode = TERM_SEARCH, - validationContent = "Vibranium", - disabled = false - ) - ) - store.put(fakeModel(2)) - - val originalModel1 = store.get(id = 1) - .single() - - val defaultJs = "var responseObj = JSON.parse(response);\\nreturn responseObj.success === true;" - val newModel1 = originalModel1.copy( - name = "HYDRA", - url = "https://www.hyrda.dict", - status = CHECKING, - checkInterval = 10, - lastCheck = 20, - reason = "Evaluation failed.", - validationMode = JAVASCRIPT, - validationContent = defaultJs, - disabled = true - ) - assertThat(store.update(newModel1)).isEqualTo(1) - - val newModels = store.get() - assertThat(newModels.size).isEqualTo(2) - assertThat(newModels.first()).isEqualTo(newModel1) - } - - @Test fun delete() = runBlocking { - // Put some fake data to delete - val model1 = store.put(fakeModel(1)) - val model2 = store.put(fakeModel(2)) - - assertThat(store.delete(model1)).isEqualTo(1) - - val newModels = store.get() - assertThat(newModels.single()).isEqualTo(model2) - } - - @Test fun deleteAll() = runBlocking { - // Put some fake data to delete - store.put(fakeModel(1)) - store.put(fakeModel(2)) - - store.deleteAll() - assertThat(store.get()).isEmpty() - } - - private fun fakeModel(index: Int) = ServerModel( - name = "Model $index", - url = "https://hello.com/$index", - validationMode = STATUS_CODE - ) -} diff --git a/app/src/main/java/com/afollestad/nocknock/di/MainModule.kt b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java similarity index 55% rename from app/src/main/java/com/afollestad/nocknock/di/MainModule.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java index 4054fe4..3df7106 100644 --- a/app/src/main/java/com/afollestad/nocknock/di/MainModule.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java @@ -1,4 +1,4 @@ -/** +/* * Designed and developed by Aidan Follestad (@afollestad) * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,27 +13,19 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.di +package com.afollestad.nocknock.engine; -import com.afollestad.nocknock.R -import com.afollestad.nocknock.ui.main.MainActivity -import com.afollestad.nocknock.utilities.qualifiers.AppIconRes -import com.afollestad.nocknock.utilities.qualifiers.MainActivityClass -import dagger.Module -import dagger.Provides -import javax.inject.Singleton +import com.afollestad.nocknock.engine.statuscheck.RealValidationManager; +import com.afollestad.nocknock.engine.statuscheck.ValidationManager; +import dagger.Binds; +import dagger.Module; +import javax.inject.Singleton; /** @author Aidan Follestad (@afollestad) */ @Module -open class MainModule { +public abstract class EngineModule { - @Provides + @Binds @Singleton - @AppIconRes - fun provideAppIconRes(): Int = R.mipmap.ic_launcher - - @Provides - @Singleton - @MainActivityClass - fun provideMainActivityClass(): Class<*> = MainActivity::class.java + abstract ValidationManager provideCheckStatusManager(RealValidationManager checkStatusManager); } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt index 1095220..298d975 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt @@ -31,7 +31,7 @@ import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ class BootReceiver : BroadcastReceiver() { - @Inject lateinit var checkStatusManager: CheckStatusManager + @Inject lateinit var checkStatusManager: ValidationManager override fun onReceive( context: Context, diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationJob.kt similarity index 59% rename from engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationJob.kt index efa092d..307db18 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusJob.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationJob.kt @@ -18,17 +18,20 @@ package com.afollestad.nocknock.engine.statuscheck import android.app.job.JobParameters import android.app.job.JobService import android.content.Intent -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ServerStatus -import com.afollestad.nocknock.data.ServerStatus.CHECKING -import com.afollestad.nocknock.data.ServerStatus.ERROR -import com.afollestad.nocknock.data.ServerStatus.OK -import com.afollestad.nocknock.data.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.data.isPending +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.Status +import com.afollestad.nocknock.data.model.Status.CHECKING +import com.afollestad.nocknock.data.model.Status.ERROR +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.model.isPending +import com.afollestad.nocknock.data.getSite +import com.afollestad.nocknock.data.updateSite import com.afollestad.nocknock.engine.BuildConfig.APPLICATION_ID -import com.afollestad.nocknock.engine.db.ServerModelStore import com.afollestad.nocknock.notifications.NockNotificationManager import com.afollestad.nocknock.utilities.ext.injector import com.afollestad.nocknock.utilities.js.JavaScript @@ -42,8 +45,12 @@ import java.lang.System.currentTimeMillis import javax.inject.Inject import timber.log.Timber.d as log -/** @author Aidan Follestad (@afollestad)*/ -class CheckStatusJob : JobService() { +/** + * The job which is sent to the system JobScheduler to perform site validation in the background. + * + * @author Aidan Follestad (@afollestad) + */ +class ValidationJob : JobService() { companion object { const val ACTION_STATUS_UPDATE = "$APPLICATION_ID.STATUS_UPDATE" @@ -52,47 +59,50 @@ class CheckStatusJob : JobService() { const val KEY_SITE_ID = "site.id" } - @Inject lateinit var modelStore: ServerModelStore - @Inject lateinit var checkStatusManager: CheckStatusManager + @Inject lateinit var database: AppDatabase + @Inject lateinit var checkStatusManager: ValidationManager @Inject lateinit var notificationManager: NockNotificationManager override fun onStartJob(params: JobParameters): Boolean { injector().injectInto(this) - val siteId = params.extras.getInt(KEY_SITE_ID) + val siteId = params.extras.getLong(KEY_SITE_ID) GlobalScope.launch(Main) { - val sites = async(IO) { modelStore.get(id = siteId) }.await() - if (sites.isEmpty()) { - log("Unable to find any sites for ID $siteId, this job will not be rescheduled.") + val site = async(IO) { database.getSite(siteId) }.await() + if (site == null) { + log("Unable to find a site for ID $siteId, this job will not be rescheduled.") return@launch jobFinished(params, false) } - val site = sites.single() + val siteSettings = site.settings + requireNotNull(siteSettings) { "Site settings must be populated." } + log("Performing status checks on site ${site.id}...") sendBroadcast(Intent(ACTION_JOB_RUNNING).apply { putExtra(KEY_SITE_ID, site.id) }) log("Checking ${site.name} (${site.url})...") - val result = async(IO) { + val jobResult = async(IO) { updateStatus(site, CHECKING) val checkResult = checkStatusManager.performCheck(site) val resultModel = checkResult.model val resultResponse = checkResult.response + val result = resultModel.lastResult!! - if (resultModel.status != OK) { - log("Got unsuccessful check status back: ${resultModel.reason}") + if (result.status != OK) { + log("Got unsuccessful check status back: ${result.reason}") return@async updateStatus(site = resultModel) } else { - when (site.validationMode) { + when (siteSettings.validationMode) { TERM_SEARCH -> { val body = resultResponse?.body()?.string() ?: "" log("Using TERM_SEARCH validation mode on body of length: ${body.length}") - return@async if (!body.contains(site.validationContent ?: "")) { + return@async if (!body.contains(siteSettings.validationArgs ?: "")) { updateStatus( - resultModel.copy( + resultModel.withStatus( status = ERROR, - reason = "Term \"${site.validationContent}\" not found in response body." + reason = "Term \"${siteSettings.validationArgs}\" not found in response body." ) ) } else { @@ -102,9 +112,9 @@ class CheckStatusJob : JobService() { JAVASCRIPT -> { val body = resultResponse?.body()?.string() ?: "" log("Using JAVASCRIPT validation mode on body of length: ${body.length}") - val reason = JavaScript.eval(resultModel.validationContent ?: "", body) + val reason = JavaScript.eval(siteSettings.validationArgs ?: "", body) return@async if (reason != null) { - updateStatus(resultModel.copy(reason = reason), status = ERROR) + updateStatus(resultModel.withStatus(reason = reason), status = ERROR) } else { resultModel } @@ -113,27 +123,29 @@ class CheckStatusJob : JobService() { // We already know the status code is successful because we are in this else branch log("Using STATUS_CODE validation, which has passed!") updateStatus( - resultModel.copy( + resultModel.withStatus( status = OK, reason = null ) ) } else -> { - throw IllegalArgumentException("Unknown validation mode: ${site.validationMode}") + throw IllegalArgumentException( + "Unknown validation mode: ${siteSettings.validationArgs}" + ) } } } }.await() - if (result.status == OK) { - notificationManager.cancelStatusNotification(result) + if (jobResult.lastResult!!.status == OK) { + notificationManager.cancelStatusNotification(jobResult) } else { - notificationManager.postStatusNotification(result) + notificationManager.postStatusNotification(jobResult) } checkStatusManager.scheduleCheck( - site = result, + site = jobResult, fromFinishingJob = true ) } @@ -148,28 +160,30 @@ class CheckStatusJob : JobService() { } private suspend fun updateStatus( - site: ServerModel, - status: ServerStatus = site.status - ): ServerModel { + site: Site, + status: Status = site.lastResult?.status ?: WAITING + ): Site { log("Updating ${site.name} (${site.url}) status to $status...") val lastCheckTime = - if (status.isPending()) site.lastCheck + if (status.isPending()) site.lastResult?.timestampMs ?: -1 else currentTimeMillis() val reason = if (status == OK) null - else site.reason + else site.lastResult?.reason ?: "Unknown" - val newSiteModel = site.copy( + val updatedModel = site.withStatus( status = status, - lastCheck = lastCheckTime, + timestamp = lastCheckTime, reason = reason ) - modelStore.update(newSiteModel) + database.updateSite(updatedModel) withContext(Main) { - sendBroadcast(Intent(ACTION_STATUS_UPDATE).apply { putExtra(KEY_UPDATE_MODEL, newSiteModel) }) + sendBroadcast(Intent(ACTION_STATUS_UPDATE).apply { + putExtra(KEY_UPDATE_MODEL, updatedModel) + }) } - return newSiteModel + return updatedModel } } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationManager.kt similarity index 71% rename from engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationManager.kt index cc50105..8fcb288 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/CheckStatusManager.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationManager.kt @@ -17,12 +17,13 @@ package com.afollestad.nocknock.engine.statuscheck import android.app.job.JobScheduler import android.app.job.JobScheduler.RESULT_SUCCESS -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ServerStatus.ERROR -import com.afollestad.nocknock.data.ServerStatus.OK +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.allSites +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.Status.ERROR +import com.afollestad.nocknock.data.model.Status.OK import com.afollestad.nocknock.engine.R -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_SITE_ID +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_SITE_ID import com.afollestad.nocknock.utilities.providers.BundleProvider import com.afollestad.nocknock.utilities.providers.JobInfoProvider import com.afollestad.nocknock.utilities.providers.StringProvider @@ -37,37 +38,37 @@ import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ data class CheckResult( - val model: ServerModel, + val model: Site, val response: Response? = null ) typealias ClientTimeoutChanger = (client: OkHttpClient, timeout: Int) -> OkHttpClient /** @author Aidan Follestad (@afollestad) */ -interface CheckStatusManager { +interface ValidationManager { suspend fun ensureScheduledChecks() fun scheduleCheck( - site: ServerModel, + site: Site, rightNow: Boolean = false, cancelPrevious: Boolean = rightNow, fromFinishingJob: Boolean = false ) - fun cancelCheck(site: ServerModel) + fun cancelCheck(site: Site) - suspend fun performCheck(site: ServerModel): CheckResult + suspend fun performCheck(site: Site): CheckResult } -class RealCheckStatusManager @Inject constructor( +class RealValidationManager @Inject constructor( private val jobScheduler: JobScheduler, private val okHttpClient: OkHttpClient, private val stringProvider: StringProvider, private val bundleProvider: BundleProvider, private val jobInfoProvider: JobInfoProvider, - private val siteStore: ServerModelStore -) : CheckStatusManager { + private val database: AppDatabase +) : ValidationManager { private var clientTimeoutChanger: ClientTimeoutChanger = { client, timeout -> client.newBuilder() @@ -76,12 +77,12 @@ class RealCheckStatusManager @Inject constructor( } override suspend fun ensureScheduledChecks() { - val sites = siteStore.get() + val sites = database.allSites() if (sites.isEmpty()) { return } log("Ensuring enabled sites have scheduled checks.") - sites.filter { !it.disabled } + sites.filter { it.settings?.disabled != true } .forEach { site -> val existingJob = jobForSite(site) if (existingJob == null) { @@ -94,12 +95,15 @@ class RealCheckStatusManager @Inject constructor( } override fun scheduleCheck( - site: ServerModel, + site: Site, rightNow: Boolean, cancelPrevious: Boolean, fromFinishingJob: Boolean ) { - check(site.id != 0) { "Cannot schedule checks for jobs with no ID." } + check(site.id != 0L) { "Cannot schedule checks for jobs with no ID." } + val siteSettings = site.settings + requireNotNull(siteSettings) { "Site settings must be populated." } + if (cancelPrevious) { cancelCheck(site) } else if (!fromFinishingJob) { @@ -111,18 +115,18 @@ class RealCheckStatusManager @Inject constructor( log("Requesting a check job for site to be scheduled: $site") val extras = bundleProvider.createPersistable { - putInt(KEY_SITE_ID, site.id) + putLong(KEY_SITE_ID, site.id) } val jobInfo = jobInfoProvider.createCheckJob( - id = site.id, + id = site.id.toInt(), onlyUnmeteredNetwork = false, delayMs = if (rightNow) { 1 } else { - site.checkInterval + siteSettings.validationIntervalMs }, extras = extras, - target = CheckStatusJob::class.java + target = ValidationJob::class.java ) val dispatchResult = jobScheduler.schedule(jobInfo) @@ -133,15 +137,17 @@ class RealCheckStatusManager @Inject constructor( } } - override fun cancelCheck(site: ServerModel) { - check(site.id != 0) { "Cannot cancel scheduled checks for jobs with no ID." } + override fun cancelCheck(site: Site) { + check(site.id != 0L) { "Cannot cancel scheduled checks for jobs with no ID." } log("Cancelling scheduled checks for site: ${site.id}") - jobScheduler.cancel(site.id) + jobScheduler.cancel(site.id.toInt()) } - override suspend fun performCheck(site: ServerModel): CheckResult { - check(site.id != 0) { "Cannot schedule checks for jobs with no ID." } - check(site.networkTimeout > 0) { "Network timeout not set for site ${site.id}" } + override suspend fun performCheck(site: Site): CheckResult { + check(site.id != 0L) { "Cannot schedule checks for jobs with no ID." } + val siteSettings = site.settings + requireNotNull(siteSettings) { "Site settings must be populated." } + check(siteSettings.networkTimeout > 0) { "Network timeout not set for site ${site.id}" } log("performCheck(${site.id}) - GET ${site.url}") val request = Request.Builder() @@ -150,20 +156,20 @@ class RealCheckStatusManager @Inject constructor( .build() return try { - val client = clientTimeoutChanger(okHttpClient, site.networkTimeout) + val client = clientTimeoutChanger(okHttpClient, siteSettings.networkTimeout) val response = client.newCall(request) .execute() if (response.isSuccessful || response.code() == 401) { log("performCheck(${site.id}) = Successful") CheckResult( - model = site.copy(status = OK, reason = null), + model = site.withStatus(status = OK, reason = null), response = response ) } else { log("performCheck(${site.id}) = Failure, HTTP code ${response.code()}") CheckResult( - model = site.copy( + model = site.withStatus( status = ERROR, reason = "Response ${response.code()} - ${response.body()?.string() ?: "Unknown"}" ), @@ -173,20 +179,20 @@ class RealCheckStatusManager @Inject constructor( } catch (timeoutEx: SocketTimeoutException) { log("performCheck(${site.id}) = Socket Timeout") CheckResult( - model = site.copy( + model = site.withStatus( status = ERROR, reason = stringProvider.get(R.string.timeout) ) ) } catch (ex: Exception) { log("performCheck(${site.id}) = Error: ${ex.message}") - CheckResult(model = site.copy(status = ERROR, reason = ex.message)) + CheckResult(model = site.withStatus(status = ERROR, reason = ex.message)) } } - private fun jobForSite(site: ServerModel) = + private fun jobForSite(site: Site) = jobScheduler.allPendingJobs - .firstOrNull { job -> job.id == site.id } + .firstOrNull { job -> job.id == site.id.toInt() } @TestOnly fun setClientTimeoutChanger(changer: ClientTimeoutChanger) { this.clientTimeoutChanger = changer diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt index a97d034..071e407 100644 --- a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt +++ b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt @@ -17,13 +17,13 @@ package com.afollestad.nocknock.engine import android.app.job.JobInfo import android.app.job.JobScheduler -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ServerStatus.ERROR -import com.afollestad.nocknock.data.ServerStatus.OK -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.engine.db.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.CheckStatusJob.Companion.KEY_SITE_ID -import com.afollestad.nocknock.engine.statuscheck.RealCheckStatusManager +import com.afollestad.nocknock.data.legacy.ServerModel +import com.afollestad.nocknock.data.model.Status.ERROR +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.legacy.ServerModelStore +import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_SITE_ID +import com.afollestad.nocknock.engine.statuscheck.RealValidationManager import com.afollestad.nocknock.utilities.providers.StringProvider import com.google.common.truth.Truth.assertThat import com.nhaarman.mockitokotlin2.any @@ -58,7 +58,7 @@ class CheckStatusManagerTest { private val jobInfoProvider = testJobInfoProvider() private val store = mock() - private val manager = RealCheckStatusManager( + private val manager = RealValidationManager( jobScheduler, okHttpClient, stringProvider, diff --git a/notifications/build.gradle b/notifications/build.gradle index 9578137..e843285 100644 --- a/notifications/build.gradle +++ b/notifications/build.gradle @@ -14,7 +14,6 @@ android { } dependencies { - implementation project(':data') implementation project(':utilities') api 'androidx.appcompat:appcompat:' + versions.androidx diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt index 73300dc..35acd46 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt @@ -18,9 +18,9 @@ package com.afollestad.nocknock.notifications import android.annotation.TargetApi import android.app.NotificationManager import android.os.Build.VERSION_CODES -import com.afollestad.nocknock.data.ServerModel import com.afollestad.nocknock.notifications.Channel.CheckFailures import com.afollestad.nocknock.utilities.providers.BitmapProvider +import com.afollestad.nocknock.utilities.providers.CanNotifyModel import com.afollestad.nocknock.utilities.providers.IntentProvider import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider import com.afollestad.nocknock.utilities.providers.NotificationProvider @@ -37,9 +37,9 @@ interface NockNotificationManager { fun createChannels() - fun postStatusNotification(model: ServerModel) + fun postStatusNotification(model: CanNotifyModel) - fun cancelStatusNotification(model: ServerModel) + fun cancelStatusNotification(model: CanNotifyModel) fun cancelStatusNotifications() } @@ -65,32 +65,32 @@ class RealNockNotificationManager @Inject constructor( override fun createChannels() = Channel.values().forEach(this::createChannel) - override fun postStatusNotification(model: ServerModel) { + override fun postStatusNotification(model: CanNotifyModel) { if (isAppOpen) { // Don't show notifications while the app is open - log("App is open, status notification for site ${model.id} won't be posted.") + log("App is open, status notification for site ${model.notiId()} won't be posted.") return } - log("Posting status notification for site ${model.id}...") + log("Posting status notification for site ${model.notiId()}...") val intent = intentProvider.getPendingIntentForViewSite(model) val newNotification = notificationProvider.create( channelId = CheckFailures.id, - title = model.name, + title = model.notiName(), content = stringProvider.get(R.string.something_wrong), intent = intent, smallIcon = R.drawable.ic_notification, largeIcon = bitmapProvider.get(appIconRes) ) - stockManager.notify(model.url, model.notificationId(), newNotification) + stockManager.notify(model.notiTag(), model.notificationId(), newNotification) log("Posted status notification for site ${model.notificationId()}.") } - override fun cancelStatusNotification(model: ServerModel) { + override fun cancelStatusNotification(model: CanNotifyModel) { stockManager.cancel(model.notificationId()) - log("Cancelled status notification for site ${model.id}.") + log("Cancelled status notification for site ${model.notiId()}.") } override fun cancelStatusNotifications() = stockManager.cancelAll() @@ -107,5 +107,5 @@ class RealNockNotificationManager @Inject constructor( log("Created notification channel ${channel.id}") } - private fun ServerModel.notificationId() = BASE_NOTIFICATION_REQUEST_CODE + this.id + private fun CanNotifyModel.notificationId() = BASE_NOTIFICATION_REQUEST_CODE + this.notiId() } diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.java similarity index 70% rename from notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt rename to notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.java index a5212bd..d43d339 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.java @@ -1,4 +1,4 @@ -/** +/* * Designed and developed by Aidan Follestad (@afollestad) * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,19 +13,18 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.notifications +package com.afollestad.nocknock.notifications; -import dagger.Binds -import dagger.Module -import javax.inject.Singleton +import dagger.Binds; +import dagger.Module; +import javax.inject.Singleton; /** @author Aidan Follestad (@afollestad) */ @Module -abstract class NotificationsModule { +public abstract class NotificationsModule { @Binds @Singleton - abstract fun provideNockNotificationManager( - notificationManager: RealNockNotificationManager - ): NockNotificationManager + abstract NockNotificationManager provideNockNotificationManager( + RealNockNotificationManager notificationManager); } diff --git a/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt b/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt index c050eea..de614fa 100644 --- a/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt +++ b/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt @@ -20,8 +20,8 @@ import android.app.NotificationChannel import android.app.NotificationManager import android.app.PendingIntent import android.graphics.Bitmap -import com.afollestad.nocknock.data.ServerModel -import com.afollestad.nocknock.data.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.legacy.ServerModel +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE import com.afollestad.nocknock.notifications.Channel.CheckFailures import com.afollestad.nocknock.utilities.providers.BitmapProvider import com.afollestad.nocknock.utilities.providers.IntentProvider diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.java similarity index 59% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt rename to utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.java index a2a9770..5861004 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.java @@ -1,11 +1,11 @@ -/** +/* * Designed and developed by Aidan Follestad (@afollestad) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, @@ -13,77 +13,63 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.utilities +package com.afollestad.nocknock.utilities; -import com.afollestad.nocknock.utilities.providers.BitmapProvider -import com.afollestad.nocknock.utilities.providers.BundleProvider -import com.afollestad.nocknock.utilities.providers.IntentProvider -import com.afollestad.nocknock.utilities.providers.JobInfoProvider -import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider -import com.afollestad.nocknock.utilities.providers.NotificationProvider -import com.afollestad.nocknock.utilities.providers.RealBitmapProvider -import com.afollestad.nocknock.utilities.providers.RealBundleProvider -import com.afollestad.nocknock.utilities.providers.RealIntentProvider -import com.afollestad.nocknock.utilities.providers.RealJobInfoProvider -import com.afollestad.nocknock.utilities.providers.RealNotificationChannelProvider -import com.afollestad.nocknock.utilities.providers.RealNotificationProvider -import com.afollestad.nocknock.utilities.providers.RealSdkProvider -import com.afollestad.nocknock.utilities.providers.RealStringProvider -import com.afollestad.nocknock.utilities.providers.SdkProvider -import com.afollestad.nocknock.utilities.providers.StringProvider -import dagger.Binds -import dagger.Module -import javax.inject.Singleton +import com.afollestad.nocknock.utilities.providers.BitmapProvider; +import com.afollestad.nocknock.utilities.providers.BundleProvider; +import com.afollestad.nocknock.utilities.providers.IntentProvider; +import com.afollestad.nocknock.utilities.providers.JobInfoProvider; +import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider; +import com.afollestad.nocknock.utilities.providers.NotificationProvider; +import com.afollestad.nocknock.utilities.providers.RealBitmapProvider; +import com.afollestad.nocknock.utilities.providers.RealBundleProvider; +import com.afollestad.nocknock.utilities.providers.RealIntentProvider; +import com.afollestad.nocknock.utilities.providers.RealJobInfoProvider; +import com.afollestad.nocknock.utilities.providers.RealNotificationChannelProvider; +import com.afollestad.nocknock.utilities.providers.RealNotificationProvider; +import com.afollestad.nocknock.utilities.providers.RealSdkProvider; +import com.afollestad.nocknock.utilities.providers.RealStringProvider; +import com.afollestad.nocknock.utilities.providers.SdkProvider; +import com.afollestad.nocknock.utilities.providers.StringProvider; +import dagger.Binds; +import dagger.Module; +import javax.inject.Singleton; /** @author Aidan Follestad (@afollestad) */ @Module -abstract class UtilitiesModule { +public abstract class UtilitiesModule { @Binds @Singleton - abstract fun provideSdkProvider( - sdkProvider: RealSdkProvider - ): SdkProvider + abstract SdkProvider provideSdkProvider(RealSdkProvider sdkProvider); @Binds @Singleton - abstract fun provideBitmapProvider( - bitmapProvider: RealBitmapProvider - ): BitmapProvider + abstract BitmapProvider provideBitmapProvider(RealBitmapProvider bitmapProvider); @Binds @Singleton - abstract fun provideStringProvider( - stringProvider: RealStringProvider - ): StringProvider + abstract StringProvider provideStringProvider(RealStringProvider stringProvider); @Binds @Singleton - abstract fun provideIntentProvider( - intentProvider: RealIntentProvider - ): IntentProvider + abstract IntentProvider provideIntentProvider(RealIntentProvider intentProvider); @Binds @Singleton - abstract fun provideChannelProvider( - channelProvider: RealNotificationChannelProvider - ): NotificationChannelProvider + abstract NotificationChannelProvider provideChannelProvider( + RealNotificationChannelProvider channelProvider); @Binds @Singleton - abstract fun provideNotificationProvider( - notificationProvider: RealNotificationProvider - ): NotificationProvider + abstract NotificationProvider provideNotificationProvider( + RealNotificationProvider notificationProvider); @Binds @Singleton - abstract fun provideBundleProvider( - bundleProvider: RealBundleProvider - ): BundleProvider + abstract BundleProvider provideBundleProvider(RealBundleProvider bundleProvider); @Binds @Singleton - abstract fun provideJobInfoProvider( - jobInfoProvider: RealJobInfoProvider - ): JobInfoProvider + abstract JobInfoProvider provideJobInfoProvider(RealJobInfoProvider jobInfoProvider); } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContentValuesExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContentValuesExt.kt deleted file mode 100644 index b13dfd0..0000000 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContentValuesExt.kt +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.utilities.ext - -import android.content.ContentValues - -/** - * Returns a [ContentValues] instance which contains only values that have changed between - * the receiver (original) and parameter (new) instances. - */ -fun ContentValues.diffFrom(contentValues: ContentValues): ContentValues { - val diff = ContentValues() - for ((name, oldValue) in this.valueSet()) { - val newValue = contentValues.get(name) - if (newValue != oldValue) { - diff.putAny(name, newValue) - } - } - return diff -} - -/** - * Auto casts an [Any] value and uses the appropriate `put` method to store it - * in the [ContentValues] instance. - */ -fun ContentValues.putAny( - name: String, - value: Any? -) { - if (value == null) { - putNull(name) - return - } - when (value) { - is String -> put(name, value) - is Byte -> put(name, value) - is Short -> put(name, value) - is Int -> put(name, value) - is Long -> put(name, value) - is Float -> put(name, value) - is Double -> put(name, value) - is Boolean -> put(name, value) - is ByteArray -> put(name, value) - else -> throw IllegalArgumentException("ContentValues can't hold $value") - } -} diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt index 8fc655b..3d60e81 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt @@ -19,9 +19,9 @@ import android.os.PersistableBundle import javax.inject.Inject interface IBundle { - fun putInt( + fun putLong( key: String, - value: Int + value: Long ) } @@ -30,7 +30,7 @@ typealias IBundler = IBundle.() -> Unit /** @author Aidan Follestad (@afollestad) */ interface BundleProvider { - fun createPersistable(builder: IBundle.() -> Unit): PersistableBundle + fun createPersistable(bundler: IBundle.() -> Unit): PersistableBundle } /** @author Aidan Follestad (@afollestad) */ @@ -39,10 +39,10 @@ class RealBundleProvider @Inject constructor() : BundleProvider { override fun createPersistable(bundler: IBundler): PersistableBundle { val realBundle = PersistableBundle() bundler(object : IBundle { - override fun putInt( + override fun putLong( key: String, - value: Int - ) = realBundle.putInt(key, value) + value: Long + ) = realBundle.putLong(key, value) }) return realBundle } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt index cee9298..56f65a0 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt @@ -24,16 +24,20 @@ import java.io.Serializable import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ -interface IdProvider : Serializable { +interface CanNotifyModel : Serializable { - fun id(): Int + fun notiId(): Int + + fun notiName(): String + + fun notiTag(): String } /** @author Aidan Follestad (@afollestad) */ interface IntentProvider { fun getPendingIntentForViewSite( - model: IdProvider + model: CanNotifyModel ): PendingIntent } @@ -48,17 +52,17 @@ class RealIntentProvider @Inject constructor( const val KEY_VIEW_NOTIFICATION_MODEL = "model" } - override fun getPendingIntentForViewSite(model: IdProvider): PendingIntent { + override fun getPendingIntentForViewSite(model: CanNotifyModel): PendingIntent { val openIntent = getIntentForViewSite(model) return PendingIntent.getActivity( app, - BASE_NOTIFICATION_REQUEST_CODE + model.id(), + BASE_NOTIFICATION_REQUEST_CODE + model.notiId(), openIntent, FLAG_CANCEL_CURRENT ) } - private fun getIntentForViewSite(model: IdProvider) = + private fun getIntentForViewSite(model: CanNotifyModel) = Intent(app, mainActivity).apply { putExtra(KEY_VIEW_NOTIFICATION_MODEL, model) } diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt index 1e45e83..5596d4c 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt @@ -16,6 +16,7 @@ package com.afollestad.nocknock.viewcomponents import android.content.Context +import android.os.Handler import android.util.AttributeSet import android.widget.FrameLayout import androidx.core.content.ContextCompat @@ -32,6 +33,7 @@ class LoadingIndicatorFrame( } private val showRunnable = Runnable { show() } + private val delayHandler = Handler() init { setBackgroundColor(ContextCompat.getColor(context, R.color.loading_indicator_frame_background)) @@ -42,11 +44,11 @@ class LoadingIndicatorFrame( } fun setLoading() { - handler.postDelayed(showRunnable, SHOW_DELAY_MS) + delayHandler.postDelayed(showRunnable, SHOW_DELAY_MS) } fun setDone() { - handler.removeCallbacks(showRunnable) + delayHandler.removeCallbacks(showRunnable) hide() } } diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt index 9f907e6..96eb3cb 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt @@ -18,11 +18,11 @@ package com.afollestad.nocknock.viewcomponents import android.content.Context import android.util.AttributeSet import androidx.appcompat.widget.AppCompatImageView -import com.afollestad.nocknock.data.ServerStatus -import com.afollestad.nocknock.data.ServerStatus.CHECKING -import com.afollestad.nocknock.data.ServerStatus.ERROR -import com.afollestad.nocknock.data.ServerStatus.OK -import com.afollestad.nocknock.data.ServerStatus.WAITING +import com.afollestad.nocknock.data.model.Status +import com.afollestad.nocknock.data.model.Status.CHECKING +import com.afollestad.nocknock.data.model.Status.ERROR +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.Status.WAITING /** @author Aidan Follestad (@afollestad) */ class StatusImageView( @@ -34,7 +34,7 @@ class StatusImageView( setStatus(OK) } - fun setStatus(status: ServerStatus) = when (status) { + fun setStatus(status: Status) = when (status) { CHECKING, WAITING -> { setImageResource(R.drawable.status_progress) setBackgroundResource(R.drawable.yellow_circle) From c9750f5f66e7b81e26cb5d0c3e3cb8a920772e4e Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Thu, 6 Dec 2018 13:05:43 -0800 Subject: [PATCH 012/114] Initial implementation of a presenter-less app, just using view models. --- app/build.gradle | 2 + app/src/main/AndroidManifest.xml | 4 +- .../com/afollestad/nocknock/NockNockApp.kt | 4 +- .../nocknock/adapter/SiteAdapter.kt | 48 +- .../SiteDiffCallback.kt} | 40 +- .../broadcasts/StatusUpdateIntentReceiver.kt | 62 +++ .../afollestad/nocknock/di/AppComponent.java | 16 +- .../afollestad/nocknock/di/MainModule.java | 41 +- .../qualifiers/IoDispatcher.kt} | 27 +- .../qualifiers/MainDispatcher.kt} | 33 +- .../nocknock/di/viewmodels/ScopedViewModel.kt | 34 +- .../di/viewmodels/ViewModelFactory.kt | 48 ++ .../di/viewmodels/ViewModelModule.java | 33 ++ .../nocknock/ui/addsite/AddSiteActivity.kt | 193 ++++---- .../nocknock/ui/addsite/AddSiteActivityExt.kt | 10 +- .../nocknock/ui/addsite/AddSitePresenter.kt | 190 -------- .../nocknock/ui/addsite/AddSiteViewModel.kt | 224 ++++++++++ .../nocknock/ui/main/MainActivity.kt | 107 ++--- .../nocknock/ui/main/MainActivityExt.kt | 6 +- .../nocknock/ui/main/MainPresenter.kt | 150 ------- .../nocknock/ui/main/MainViewModel.kt | 113 +++++ .../nocknock/ui/viewsite/ViewSiteActivity.kt | 295 +++++------- .../ui/viewsite/ViewSiteActivityExt.kt | 19 +- .../nocknock/ui/viewsite/ViewSitePresenter.kt | 301 ------------- .../nocknock/ui/viewsite/ViewSiteViewModel.kt | 320 +++++++++++++ .../ui/viewsite/ViewSiteViewModelExt.kt | 98 ++++ app/src/main/res/layout/activity_addsite.xml | 6 +- app/src/main/res/layout/activity_viewsite.xml | 4 +- .../nocknock/AddSitePresenterTest.kt | 285 ------------ .../afollestad/nocknock/LiveDataTestUtil.kt | 33 ++ .../afollestad/nocknock/MainPresenterTest.kt | 129 ------ .../nocknock/{TestUtil.kt => TestData.kt} | 7 + .../nocknock/ViewSitePresenterTest.kt | 420 ------------------ .../StatusUpdateIntentReceiverTest.kt | 55 +++ .../ui/addsite/AddSitePresenterTest.kt | 301 +++++++++++++ .../nocknock/ui/main/MainViewModelTest.kt | 158 +++++++ .../ui/viewsite/ViewSitePresenterTest.kt | 20 + .../nocknock/data/legacy/DbMigrator.kt | 105 ----- .../nocknock/data/legacy/ServerModel.kt | 136 ------ .../data/legacy/ServerModelDbHelper.kt | 78 ---- .../nocknock/data/legacy/ServerModelStore.kt | 163 ------- .../nocknock/data/model/ValidationMode.kt | 12 +- dependencies.gradle | 1 + .../nocknock/engine/EngineModule.java | 6 +- .../BootReceiver.kt | 2 +- .../ValidationJob.kt | 2 +- .../ValidationManager.kt | 4 +- .../nocknock/engine/CheckStatusManagerTest.kt | 4 +- .../ext/{ActivityExt.kt => ViewExt.kt} | 37 +- viewcomponents/build.gradle | 1 + .../viewcomponents/CheckIntervalLayout.kt | 112 ----- .../viewcomponents/JavaScriptInputLayout.kt | 66 --- .../viewcomponents/LoadingIndicatorFrame.kt | 22 +- .../nocknock/viewcomponents/ext/IntExt.kt | 20 + .../viewcomponents/ext/LiveDataExt.kt | 148 ++++++ .../viewcomponents/ext/TextViewExt.kt | 72 --- .../interval/CheckIntervalLayout.kt | 133 ++++++ .../js/JavaScriptInputLayout.kt | 111 +++++ 58 files changed, 2271 insertions(+), 2800 deletions(-) rename app/src/main/java/com/afollestad/nocknock/{ui/viewsite/ViewSiteView.kt => adapter/SiteDiffCallback.kt} (53%) create mode 100644 app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt rename app/src/main/java/com/afollestad/nocknock/{ui/main/MainView.kt => di/qualifiers/IoDispatcher.kt} (60%) rename app/src/main/java/com/afollestad/nocknock/{ui/addsite/AddSiteView.kt => di/qualifiers/MainDispatcher.kt} (52%) rename utilities/src/main/java/com/afollestad/nocknock/utilities/ext/CoroutineExt.kt => app/src/main/java/com/afollestad/nocknock/di/viewmodels/ScopedViewModel.kt (54%) create mode 100644 app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelFactory.kt create mode 100644 app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelModule.java delete mode 100644 app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt create mode 100644 app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt delete mode 100644 app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt create mode 100644 app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt delete mode 100644 app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt create mode 100644 app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt create mode 100644 app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt delete mode 100644 app/src/test/java/com/afollestad/nocknock/AddSitePresenterTest.kt create mode 100644 app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt delete mode 100644 app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt rename app/src/test/java/com/afollestad/nocknock/{TestUtil.kt => TestData.kt} (96%) delete mode 100644 app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt create mode 100644 app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt create mode 100644 app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSitePresenterTest.kt create mode 100644 app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt create mode 100644 app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenterTest.kt delete mode 100644 data/src/main/java/com/afollestad/nocknock/data/legacy/DbMigrator.kt delete mode 100644 data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModel.kt delete mode 100644 data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelDbHelper.kt delete mode 100644 data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelStore.kt rename engine/src/main/java/com/afollestad/nocknock/engine/{statuscheck => validation}/BootReceiver.kt (97%) rename engine/src/main/java/com/afollestad/nocknock/engine/{statuscheck => validation}/ValidationJob.kt (99%) rename engine/src/main/java/com/afollestad/nocknock/engine/{statuscheck => validation}/ValidationManager.kt (97%) rename utilities/src/main/java/com/afollestad/nocknock/utilities/ext/{ActivityExt.kt => ViewExt.kt} (56%) delete mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/CheckIntervalLayout.kt delete mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/JavaScriptInputLayout.kt create mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt create mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/LiveDataExt.kt delete mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt create mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/CheckIntervalLayout.kt create mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt diff --git a/app/build.gradle b/app/build.gradle index 0a8d678..5c3703e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -28,6 +28,8 @@ dependencies { implementation 'androidx.recyclerview:recyclerview:' + versions.androidx implementation 'com.google.android.material:material:' + versions.androidx + kapt 'androidx.lifecycle:lifecycle-compiler:' + versions.lifecycle + implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:' + versions.kotlin implementation 'com.google.dagger:dagger:' + versions.dagger diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c0b8ee5..38e59d1 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -42,11 +42,11 @@ android:windowSoftInputMode="stateHidden"/> - + diff --git a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt index 492ce0e..777d8a8 100644 --- a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt +++ b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt @@ -18,8 +18,8 @@ package com.afollestad.nocknock import android.app.Application import com.afollestad.nocknock.di.AppComponent import com.afollestad.nocknock.di.DaggerAppComponent -import com.afollestad.nocknock.engine.statuscheck.BootReceiver -import com.afollestad.nocknock.engine.statuscheck.ValidationJob +import com.afollestad.nocknock.engine.validation.BootReceiver +import com.afollestad.nocknock.engine.validation.ValidationJob import com.afollestad.nocknock.notifications.NockNotificationManager import com.afollestad.nocknock.ui.addsite.AddSiteActivity import com.afollestad.nocknock.ui.main.MainActivity diff --git a/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt b/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt index a519e5a..4e061c9 100644 --- a/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt +++ b/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt @@ -18,6 +18,7 @@ package com.afollestad.nocknock.adapter import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import androidx.recyclerview.widget.DiffUtil.calculateDiff import androidx.recyclerview.widget.RecyclerView import com.afollestad.nocknock.R import com.afollestad.nocknock.data.model.Site @@ -95,55 +96,18 @@ class SiteViewHolder constructor( /** @author Aidan Follestad (@afollestad) */ class ServerAdapter(private val listener: Listener) : RecyclerView.Adapter() { - private val models = mutableListOf() + private var models = mutableListOf() internal fun performClick( index: Int, longClick: Boolean ) = listener.invoke(models[index], longClick) - fun add(model: Site) { - models.add(model) - notifyItemInserted(models.size - 1) - } - - fun update(target: Site) { - for ((i, model) in models.withIndex()) { - if (model.id == target.id) { - update(i, target) - break - } - } - } - - private fun update( - index: Int, - model: Site - ) { - models[index] = model - notifyItemChanged(index) - } - - fun remove(index: Int) { - models.removeAt(index) - notifyItemRemoved(index) - } - - fun remove(target: Site) { - for ((i, model) in models.withIndex()) { - if (model.id == target.id) { - remove(i) - break - } - } - } - fun set(newModels: List) { - this.models.clear() - if (!newModels.isEmpty()) { - this.models.addAll(newModels) - } - notifyDataSetChanged() + val formerModels = this.models + this.models = newModels.toMutableList() + val diffResult = calculateDiff(SiteDiffCallback(formerModels, this.models)) + diffResult.dispatchUpdatesTo(this) } override fun onCreateViewHolder( diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt b/app/src/main/java/com/afollestad/nocknock/adapter/SiteDiffCallback.kt similarity index 53% rename from app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt rename to app/src/main/java/com/afollestad/nocknock/adapter/SiteDiffCallback.kt index 7ce7180..2893c0a 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteView.kt +++ b/app/src/main/java/com/afollestad/nocknock/adapter/SiteDiffCallback.kt @@ -13,36 +13,28 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.ui.viewsite +package com.afollestad.nocknock.adapter -import androidx.annotation.StringRes +import androidx.recyclerview.widget.DiffUtil import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.utilities.ext.ScopeReceiver -import kotlin.coroutines.CoroutineContext /** @author Aidan Follestad (@afollestad) */ -interface ViewSiteView { +class SiteDiffCallback( + private val oldItems: List, + private val newItems: List +) : DiffUtil.Callback() { - fun setLoading() + override fun getOldListSize() = oldItems.size - fun setDoneLoading() + override fun getNewListSize() = newItems.size - fun displayModel(model: Site) + override fun areItemsTheSame( + oldItemPosition: Int, + newItemPosition: Int + ) = oldItems[oldItemPosition].id == oldItems[newItemPosition].id - fun showOrHideUrlSchemeWarning(show: Boolean) - - fun showOrHideValidationSearchTerm(show: Boolean) - - fun showOrHideScriptInput(show: Boolean) - - fun setValidationModeDescription(@StringRes res: Int) - - fun setInputErrors(errors: InputErrors) - - fun scopeWhileAttached( - context: CoroutineContext, - exec: ScopeReceiver - ) - - fun finish() + override fun areContentsTheSame( + oldItemPosition: Int, + newItemPosition: Int + ) = oldItems[oldItemPosition] == oldItems[newItemPosition] } diff --git a/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt b/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt new file mode 100644 index 0000000..9a507d7 --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt @@ -0,0 +1,62 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.broadcasts + +import android.app.Application +import android.content.BroadcastReceiver +import android.content.Context +import android.content.Intent +import android.content.IntentFilter +import androidx.lifecycle.Lifecycle.Event.ON_PAUSE +import androidx.lifecycle.Lifecycle.Event.ON_RESUME +import androidx.lifecycle.LifecycleObserver +import androidx.lifecycle.OnLifecycleEvent +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.ACTION_STATUS_UPDATE +import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.KEY_UPDATE_MODEL + +typealias SiteCallback = (Site) -> Unit + +/** @author Aidan Follestad (@afollestad) */ +class StatusUpdateIntentReceiver( + private val app: Application, + private val callback: SiteCallback +) : LifecycleObserver { + + internal val intentReceiver = object : BroadcastReceiver() { + override fun onReceive( + context: Context, + intent: Intent + ) { + if (intent.action == ACTION_STATUS_UPDATE) { + val model = intent.getSerializableExtra(KEY_UPDATE_MODEL) as? Site + ?: return + callback(model) + } + } + } + + @OnLifecycleEvent(ON_RESUME) + fun onResume() { + val filter = IntentFilter().apply { + addAction(ACTION_STATUS_UPDATE) + } + app.registerReceiver(intentReceiver, filter) + } + + @OnLifecycleEvent(ON_PAUSE) + fun onPause() = app.unregisterReceiver(intentReceiver) +} diff --git a/app/src/main/java/com/afollestad/nocknock/di/AppComponent.java b/app/src/main/java/com/afollestad/nocknock/di/AppComponent.java index e2cb0c3..f7a0cdb 100644 --- a/app/src/main/java/com/afollestad/nocknock/di/AppComponent.java +++ b/app/src/main/java/com/afollestad/nocknock/di/AppComponent.java @@ -19,9 +19,10 @@ import android.app.Application; import android.app.NotificationManager; import android.app.job.JobScheduler; import com.afollestad.nocknock.NockNockApp; +import com.afollestad.nocknock.di.viewmodels.ViewModelModule; import com.afollestad.nocknock.engine.EngineModule; -import com.afollestad.nocknock.engine.statuscheck.BootReceiver; -import com.afollestad.nocknock.engine.statuscheck.ValidationJob; +import com.afollestad.nocknock.engine.validation.BootReceiver; +import com.afollestad.nocknock.engine.validation.ValidationJob; import com.afollestad.nocknock.notifications.NotificationsModule; import com.afollestad.nocknock.ui.addsite.AddSiteActivity; import com.afollestad.nocknock.ui.main.MainActivity; @@ -35,7 +36,13 @@ import okhttp3.OkHttpClient; /** @author Aidan Follestad (@afollestad) */ @Singleton @Component( - modules = {MainModule.class, EngineModule.class, NotificationsModule.class, UtilitiesModule.class} + modules = { + MainModule.class, + ViewModelModule.class, + EngineModule.class, + NotificationsModule.class, + UtilitiesModule.class + } ) public interface AppComponent { @@ -51,8 +58,7 @@ public interface AppComponent { void inject(BootReceiver bootReceiver); - @Component.Builder - interface Builder { + @Component.Builder interface Builder { @BindsInstance Builder application(Application application); diff --git a/app/src/main/java/com/afollestad/nocknock/di/MainModule.java b/app/src/main/java/com/afollestad/nocknock/di/MainModule.java index ed3aaa5..03dcf7c 100644 --- a/app/src/main/java/com/afollestad/nocknock/di/MainModule.java +++ b/app/src/main/java/com/afollestad/nocknock/di/MainModule.java @@ -15,24 +15,21 @@ */ package com.afollestad.nocknock.di; -import static androidx.room.Room.databaseBuilder; - import android.app.Application; import com.afollestad.nocknock.R; import com.afollestad.nocknock.data.AppDatabase; -import com.afollestad.nocknock.ui.addsite.AddSitePresenter; -import com.afollestad.nocknock.ui.addsite.RealAddSitePresenter; import com.afollestad.nocknock.ui.main.MainActivity; -import com.afollestad.nocknock.ui.main.MainPresenter; -import com.afollestad.nocknock.ui.main.RealMainPresenter; -import com.afollestad.nocknock.ui.viewsite.RealViewSitePresenter; -import com.afollestad.nocknock.ui.viewsite.ViewSitePresenter; import com.afollestad.nocknock.utilities.qualifiers.AppIconRes; +import com.afollestad.nocknock.di.qualifiers.IoDispatcher; import com.afollestad.nocknock.utilities.qualifiers.MainActivityClass; -import dagger.Binds; +import com.afollestad.nocknock.di.qualifiers.MainDispatcher; import dagger.Module; import dagger.Provides; import javax.inject.Singleton; +import kotlinx.coroutines.CoroutineDispatcher; +import kotlinx.coroutines.Dispatchers; + +import static androidx.room.Room.databaseBuilder; /** @author Aidan Follestad (@afollestad) */ @Module @@ -40,18 +37,6 @@ abstract class MainModule { @SuppressWarnings("FieldCanBeLocal") private static String DATABASE_NAME = "NockNock.db"; - @Binds - @Singleton - abstract MainPresenter provideMainPresenter(RealMainPresenter presenter); - - @Binds - @Singleton - abstract AddSitePresenter provideAddSitePresenter(RealAddSitePresenter presenter); - - @Binds - @Singleton - abstract ViewSitePresenter provideViewSitePresenter(RealViewSitePresenter presenter); - @Provides @Singleton @AppIconRes @@ -71,4 +56,18 @@ abstract class MainModule { static AppDatabase provideAppDatabase(Application app) { return databaseBuilder(app, AppDatabase.class, DATABASE_NAME).build(); } + + @Provides + @Singleton + @MainDispatcher + static CoroutineDispatcher provideMainDispatcher() { + return Dispatchers.getMain(); + } + + @Provides + @Singleton + @IoDispatcher + static CoroutineDispatcher provideIoDispatcher() { + return Dispatchers.getIO(); + } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt b/app/src/main/java/com/afollestad/nocknock/di/qualifiers/IoDispatcher.kt similarity index 60% rename from app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt rename to app/src/main/java/com/afollestad/nocknock/di/qualifiers/IoDispatcher.kt index a8004d2..6ecc572 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainView.kt +++ b/app/src/main/java/com/afollestad/nocknock/di/qualifiers/IoDispatcher.kt @@ -13,27 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.ui.main +package com.afollestad.nocknock.di.qualifiers -import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.utilities.ext.ScopeReceiver -import kotlin.coroutines.CoroutineContext +import javax.inject.Qualifier +import kotlin.annotation.AnnotationRetention.RUNTIME /** @author Aidan Follestad (@afollestad) */ -interface MainView { - - fun setLoading() - - fun setDoneLoading() - - fun setModels(models: List) - - fun updateModel(model: Site) - - fun onSiteDeleted(model: Site) - - fun scopeWhileAttached( - context: CoroutineContext, - exec: ScopeReceiver - ) -} +@Qualifier +@Retention(RUNTIME) +annotation class IoDispatcher diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteView.kt b/app/src/main/java/com/afollestad/nocknock/di/qualifiers/MainDispatcher.kt similarity index 52% rename from app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteView.kt rename to app/src/main/java/com/afollestad/nocknock/di/qualifiers/MainDispatcher.kt index f6a6caf..de83ab5 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteView.kt +++ b/app/src/main/java/com/afollestad/nocknock/di/qualifiers/MainDispatcher.kt @@ -13,33 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.ui.addsite +package com.afollestad.nocknock.di.qualifiers -import androidx.annotation.StringRes -import com.afollestad.nocknock.utilities.ext.ScopeReceiver -import kotlin.coroutines.CoroutineContext +import javax.inject.Qualifier +import kotlin.annotation.AnnotationRetention.RUNTIME /** @author Aidan Follestad (@afollestad) */ -interface AddSiteView { - - fun setLoading() - - fun setDoneLoading() - - fun showOrHideUrlSchemeWarning(show: Boolean) - - fun showOrHideValidationSearchTerm(show: Boolean) - - fun showOrHideScriptInput(show: Boolean) - - fun setValidationModeDescription(@StringRes res: Int) - - fun setInputErrors(errors: InputErrors) - - fun onSiteAdded() - - fun scopeWhileAttached( - context: CoroutineContext, - exec: ScopeReceiver - ) -} +@Qualifier +@Retention(RUNTIME) +annotation class MainDispatcher diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/CoroutineExt.kt b/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ScopedViewModel.kt similarity index 54% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ext/CoroutineExt.kt rename to app/src/main/java/com/afollestad/nocknock/di/viewmodels/ScopedViewModel.kt index 48085c2..19b8fb6 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/CoroutineExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ScopedViewModel.kt @@ -13,27 +13,29 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.utilities.ext +package com.afollestad.nocknock.di.viewmodels -import android.view.View +import androidx.lifecycle.ViewModel +import com.afollestad.nocknock.di.qualifiers.MainDispatcher +import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Job -import kotlin.coroutines.CoroutineContext +import org.jetbrains.annotations.TestOnly +import javax.inject.Inject -typealias ScopeReceiver = CoroutineScope.() -> Unit +abstract class ScopedViewModel : ViewModel() { -fun View.scopeWhileAttached( - context: CoroutineContext, - exec: ScopeReceiver -) { - val job = Job(context[Job]) + @Inject + @MainDispatcher + lateinit var mainDispatcher: CoroutineDispatcher - addOnAttachStateChangeListener(object : View.OnAttachStateChangeListener { - override fun onViewAttachedToWindow(v: View) = Unit - override fun onViewDetachedFromWindow(v: View) { - job.cancel() - } - }) + private val job = Job() + protected val scope = CoroutineScope(job + mainDispatcher) - exec(CoroutineScope(context + job)) + override fun onCleared() { + super.onCleared() + job.cancel() + } + + @TestOnly open fun destroy() = job.cancel() } diff --git a/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelFactory.kt b/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelFactory.kt new file mode 100644 index 0000000..bd95ff9 --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelFactory.kt @@ -0,0 +1,48 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.di.viewmodels + +import androidx.lifecycle.ViewModel +import androidx.lifecycle.ViewModelProvider +import dagger.MapKey +import javax.inject.Inject +import javax.inject.Provider +import javax.inject.Singleton +import kotlin.annotation.AnnotationRetention.RUNTIME +import kotlin.annotation.AnnotationTarget.FUNCTION +import kotlin.annotation.AnnotationTarget.PROPERTY_GETTER +import kotlin.annotation.AnnotationTarget.PROPERTY_SETTER +import kotlin.reflect.KClass + +typealias ViewModelMap = MutableMap, Provider> + +@Target(FUNCTION, PROPERTY_GETTER, PROPERTY_SETTER) +@Retention(RUNTIME) +@MapKey +annotation class ViewModelKey(val value: KClass) + +/** + * https://proandroiddev.com/viewmodel-with-dagger2-architecture-components-2e06f06c9455 + */ +@Singleton +class ViewModelFactory @Inject constructor(private val viewModels: ViewModelMap) : + ViewModelProvider.Factory { + + override fun create(modelClass: Class): T { + @Suppress("UNCHECKED_CAST") + return viewModels[modelClass]?.get() as T + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelModule.java b/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelModule.java new file mode 100644 index 0000000..d659c78 --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelModule.java @@ -0,0 +1,33 @@ +package com.afollestad.nocknock.di.viewmodels; + +import androidx.lifecycle.ViewModel; +import androidx.lifecycle.ViewModelProvider; +import com.afollestad.nocknock.ui.addsite.AddSiteViewModel; +import com.afollestad.nocknock.ui.main.MainViewModel; +import com.afollestad.nocknock.ui.viewsite.ViewSiteViewModel; +import dagger.Binds; +import dagger.Module; +import dagger.multibindings.IntoMap; + +/** https://proandroiddev.com/viewmodel-with-dagger2-architecture-components-2e06f06c9455 */ +@Module +public abstract class ViewModelModule { + + @Binds + abstract ViewModelProvider.Factory bindViewModelFactory(ViewModelFactory factory); + + @Binds + @IntoMap + @ViewModelKey(MainViewModel.class) + abstract ViewModel mainViewModel(MainViewModel viewModel); + + @Binds + @IntoMap + @ViewModelKey(AddSiteViewModel.class) + abstract ViewModel addSiteViewModel(AddSiteViewModel viewModel); + + @Binds + @IntoMap + @ViewModelKey(ViewSiteViewModel.class) + abstract ViewModel viewSiteViewModel(ViewSiteViewModel viewModel); +} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt index 48d0671..93cfc32 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt @@ -19,21 +19,17 @@ import android.annotation.SuppressLint import android.os.Bundle import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.ViewModelProviders import com.afollestad.nocknock.R import com.afollestad.nocknock.data.model.ValidationMode -import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.data.model.indexToValidationMode -import com.afollestad.nocknock.utilities.ext.ScopeReceiver import com.afollestad.nocknock.utilities.ext.injector -import com.afollestad.nocknock.utilities.ext.scopeWhileAttached +import com.afollestad.nocknock.viewcomponents.ext.attachLiveData import com.afollestad.nocknock.viewcomponents.ext.conceal -import com.afollestad.nocknock.viewcomponents.ext.onItemSelected import com.afollestad.nocknock.viewcomponents.ext.onLayout -import com.afollestad.nocknock.viewcomponents.ext.showOrHide -import com.afollestad.nocknock.viewcomponents.ext.textAsInt -import com.afollestad.nocknock.viewcomponents.ext.trimmedText +import com.afollestad.nocknock.viewcomponents.ext.toViewError +import com.afollestad.nocknock.viewcomponents.ext.toViewText +import com.afollestad.nocknock.viewcomponents.ext.toViewVisibility import kotlinx.android.synthetic.main.activity_addsite.checkIntervalLayout import kotlinx.android.synthetic.main.activity_addsite.doneBtn import kotlinx.android.synthetic.main.activity_addsite.inputName @@ -48,7 +44,6 @@ import kotlinx.android.synthetic.main.activity_addsite.textUrlWarning import kotlinx.android.synthetic.main.activity_addsite.toolbar import kotlinx.android.synthetic.main.activity_addsite.validationModeDescription import javax.inject.Inject -import kotlin.coroutines.CoroutineContext import kotlin.math.max import kotlin.properties.Delegates.notNull @@ -57,14 +52,19 @@ const val KEY_FAB_Y = "fab_y" const val KEY_FAB_SIZE = "fab_size" /** @author Aidan Follestad (@afollestad) */ -class AddSiteActivity : AppCompatActivity(), AddSiteView { +class AddSiteActivity : AppCompatActivity() { - var isClosing: Boolean = false var revealCx by notNull() var revealCy by notNull() var revealRadius by notNull() - @Inject lateinit var presenter: AddSitePresenter + @Inject lateinit var viewModelFactory: ViewModelProvider.Factory + + internal var isClosing = false + private val viewModel by lazy { + return@lazy ViewModelProviders.of(this, viewModelFactory) + .get(AddSiteViewModel::class.java) + } @SuppressLint("SetTextI18n") override fun onCreate(savedInstanceState: Bundle?) { @@ -72,8 +72,70 @@ class AddSiteActivity : AppCompatActivity(), AddSiteView { injector().injectInto(this) setContentView(R.layout.activity_addsite) - presenter.takeView(this) + setupUi(savedInstanceState) + lifecycle.addObserver(viewModel) + + // Loading + loadingProgress.observe(this, viewModel.onIsLoading()) + + // Name + inputName.attachLiveData(this, viewModel.name) + viewModel.onNameError() + .toViewError(this, inputName) + + // Url + inputUrl.attachLiveData(this, viewModel.url) + viewModel.onUrlError() + .toViewError(this, inputUrl) + viewModel.onUrlWarningVisibility() + .toViewVisibility(this, textUrlWarning) + + // Timeout + responseTimeoutInput.attachLiveData(this, viewModel.timeout) + viewModel.onTimeoutError() + .toViewError(this, responseTimeoutInput) + + // Validation mode + responseValidationMode.attachLiveData(this, viewModel.validationMode, + { ValidationMode.fromIndex(it) }, + { it.toIndex() } + ) + viewModel.onValidationSearchTermError() + .toViewError(this, responseValidationSearchTerm) + viewModel.onValidationModeDescription() + .toViewText(this, validationModeDescription) + + // Validation search term + responseValidationSearchTerm.attachLiveData(this, viewModel.validationSearchTerm) + viewModel.onValidationSearchTermVisibility() + .toViewVisibility(this, responseValidationSearchTerm) + + // Validation script + scriptInputLayout.attach( + codeData = viewModel.validationScript, + errorData = viewModel.onValidationScriptError(), + visibility = viewModel.onValidationScriptVisibility() + ) + + // Check interval + checkIntervalLayout.attach( + valueData = viewModel.checkIntervalValue, + multiplierData = viewModel.checkIntervalUnit, + errorData = viewModel.onCheckIntervalError() + ) + + // Done button + doneBtn.setOnClickListener { + viewModel.commit { + setResult(RESULT_OK) + finish() + overridePendingTransition(R.anim.fade_out, R.anim.fade_out) + } + } + } + + private fun setupUi(savedInstanceState: Bundle?) { toolbar.setNavigationOnClickListener { closeActivityWithReveal() } if (savedInstanceState == null) { @@ -93,115 +155,14 @@ class AddSiteActivity : AppCompatActivity(), AddSiteView { } } - inputUrl.setOnFocusChangeListener { _, hasFocus -> - presenter.onUrlInputFocusChange(hasFocus, inputUrl.trimmedText()) - } - val validationOptionsAdapter = ArrayAdapter( this, R.layout.list_item_spinner, resources.getStringArray(R.array.response_validation_options) ) validationOptionsAdapter.setDropDownViewResource(R.layout.list_item_spinner_dropdown) - responseValidationMode.adapter = validationOptionsAdapter - responseValidationMode.onItemSelected(presenter::onValidationModeSelected) - - doneBtn.setOnClickListener { - val checkInterval = checkIntervalLayout.getSelectedCheckInterval() - val validationMode = - responseValidationMode.selectedItemPosition.indexToValidationMode() - val defaultTimeout = getString(R.string.response_timeout_default).toInt() - - isClosing = true - presenter.commit( - name = inputName.trimmedText(), - url = inputUrl.trimmedText(), - checkInterval = checkInterval, - validationMode = validationMode, - validationArgs = validationMode.validationContent(), - networkTimeout = responseTimeoutInput.textAsInt(defaultValue = defaultTimeout) - ) - } } - override fun onDestroy() { - presenter.dropView() - super.onDestroy() - } - - override fun setLoading() = loadingProgress.setLoading() - - override fun setDoneLoading() = loadingProgress.setDone() - - override fun showOrHideUrlSchemeWarning(show: Boolean) { - textUrlWarning.showOrHide(show) - if (show) { - textUrlWarning.setText(R.string.warning_http_url) - } - } - - override fun showOrHideValidationSearchTerm(show: Boolean) = - responseValidationSearchTerm.showOrHide(show) - - override fun showOrHideScriptInput(show: Boolean) = scriptInputLayout.showOrHide(show) - - override fun setValidationModeDescription(res: Int) = validationModeDescription.setText(res) - - override fun setInputErrors(errors: InputErrors) { - isClosing = false - inputName.error = if (errors.name != null) { - getString(errors.name!!) - } else { - null - } - inputUrl.error = if (errors.url != null) { - getString(errors.url!!) - } else { - null - } - checkIntervalLayout.setError( - if (errors.checkInterval != null) { - getString(errors.checkInterval!!) - } else { - null - } - ) - responseValidationSearchTerm.error = if (errors.termSearch != null) { - getString(errors.termSearch!!) - } else { - null - } - scriptInputLayout.setError( - if (errors.javaScript != null) { - getString(errors.javaScript!!) - } else { - null - } - ) - responseTimeoutInput.error = if (errors.networkTimeout != null) { - getString(errors.networkTimeout!!) - } else { - null - } - } - - override fun onSiteAdded() { - setResult(RESULT_OK) - finish() - overridePendingTransition(R.anim.fade_out, R.anim.fade_out) - } - - override fun scopeWhileAttached( - context: CoroutineContext, - exec: ScopeReceiver - ) = rootView.scopeWhileAttached(context, exec) - override fun onBackPressed() = closeActivityWithReveal() - - private fun ValidationMode.validationContent() = when (this) { - STATUS_CODE -> null - TERM_SEARCH -> responseValidationSearchTerm.trimmedText() - JAVASCRIPT -> scriptInputLayout.getCode() - } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt index 4def223..4f1f9e6 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt @@ -15,7 +15,7 @@ */ package com.afollestad.nocknock.ui.addsite -import android.view.ViewAnimationUtils +import android.view.ViewAnimationUtils.createCircularReveal import android.view.animation.AccelerateInterpolator import android.view.animation.DecelerateInterpolator import com.afollestad.nocknock.utilities.ext.onEnd @@ -27,7 +27,7 @@ const val REVEAL_DURATION = 300L internal fun AddSiteActivity.circularRevealActivity() { val circularReveal = - ViewAnimationUtils.createCircularReveal(rootView, revealCx, revealCy, 0f, revealRadius) + createCircularReveal(rootView, revealCx, revealCy, 0f, revealRadius) .apply { duration = REVEAL_DURATION interpolator = DecelerateInterpolator() @@ -37,9 +37,11 @@ internal fun AddSiteActivity.circularRevealActivity() { } internal fun AddSiteActivity.closeActivityWithReveal() { - if (isClosing) return + if (isClosing) { + return + } isClosing = true - ViewAnimationUtils.createCircularReveal(rootView, revealCx, revealCy, revealRadius, 0f) + createCircularReveal(rootView, revealCx, revealCy, revealRadius, 0f) .apply { duration = REVEAL_DURATION interpolator = AccelerateInterpolator() diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt deleted file mode 100644 index 45fc9f3..0000000 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSitePresenter.kt +++ /dev/null @@ -1,190 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.ui.addsite - -import androidx.annotation.CheckResult -import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.AppDatabase -import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.data.model.SiteSettings -import com.afollestad.nocknock.data.model.ValidationMode -import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.data.putSite -import com.afollestad.nocknock.engine.statuscheck.ValidationManager -import kotlinx.coroutines.Dispatchers.IO -import kotlinx.coroutines.Dispatchers.Main -import kotlinx.coroutines.async -import kotlinx.coroutines.launch -import okhttp3.HttpUrl -import javax.inject.Inject - -/** @author Aidan Follestad (@afollestad) */ -data class InputErrors( - var name: Int? = null, - var url: Int? = null, - var checkInterval: Int? = null, - var termSearch: Int? = null, - var javaScript: Int? = null, - var networkTimeout: Int? = null -) { - @CheckResult fun any(): Boolean { - return name != null || url != null || checkInterval != null || - termSearch != null || javaScript != null || networkTimeout != null - } -} - -/** @author Aidan Follestad (@afollestad) */ -interface AddSitePresenter { - - fun takeView(view: AddSiteView) - - fun onUrlInputFocusChange( - focused: Boolean, - content: String - ) - - fun onValidationModeSelected(index: Int) - - fun commit( - name: String, - url: String, - checkInterval: Long, - validationMode: ValidationMode, - validationArgs: String?, - networkTimeout: Int - ) - - fun dropView() -} - -/** @author Aidan Follestad (@afollestad) */ -class RealAddSitePresenter @Inject constructor( - private val database: AppDatabase, - private val checkStatusManager: ValidationManager -) : AddSitePresenter { - - private var view: AddSiteView? = null - - override fun takeView(view: AddSiteView) { - this.view = view - } - - override fun onUrlInputFocusChange( - focused: Boolean, - content: String - ) { - if (content.isEmpty() || focused) { - return - } - val url = HttpUrl.parse(content) - if (url == null || - (url.scheme() != "http" && - url.scheme() != "https") - ) { - view?.showOrHideUrlSchemeWarning(true) - } else { - view?.showOrHideUrlSchemeWarning(false) - } - } - - override fun onValidationModeSelected(index: Int) = with(view!!) { - showOrHideValidationSearchTerm(index == 1) - showOrHideScriptInput(index == 2) - setValidationModeDescription( - when (index) { - 0 -> R.string.validation_mode_status_desc - 1 -> R.string.validation_mode_term_desc - 2 -> R.string.validation_mode_javascript_desc - else -> throw IllegalStateException("Unknown validation mode position: $index") - } - ) - } - - override fun commit( - name: String, - url: String, - checkInterval: Long, - validationMode: ValidationMode, - validationArgs: String?, - networkTimeout: Int - ) { - val inputErrors = InputErrors() - - if (name.isEmpty()) { - inputErrors.name = R.string.please_enter_name - } - if (url.isEmpty()) { - inputErrors.url = R.string.please_enter_url - } else if (HttpUrl.parse(url) == null) { - inputErrors.url = R.string.please_enter_valid_url - } - if (checkInterval <= 0) { - inputErrors.checkInterval = R.string.please_enter_check_interval - } - if (validationMode == TERM_SEARCH && validationArgs.isNullOrEmpty()) { - inputErrors.termSearch = R.string.please_enter_search_term - } else if (validationMode == JAVASCRIPT && validationArgs.isNullOrEmpty()) { - inputErrors.javaScript = R.string.please_enter_javaScript - } - if (networkTimeout <= 0) { - inputErrors.networkTimeout = R.string.please_enter_networkTimeout - } - - if (inputErrors.any()) { - view?.setInputErrors(inputErrors) - return - } - - val newSettings = SiteSettings( - validationIntervalMs = checkInterval, - validationMode = validationMode, - validationArgs = validationArgs, - networkTimeout = networkTimeout, - disabled = false - ) - val newModel = Site( - id = 0, - name = name, - url = url, - settings = newSettings, - lastResult = null - ) - - with(view!!) { - scopeWhileAttached(Main) { - launch(coroutineContext) { - setLoading() - val storedModel = async(IO) { - database.putSite(newModel) - }.await() - - checkStatusManager.scheduleCheck( - site = storedModel, - rightNow = true, - cancelPrevious = true - ) - setDoneLoading() - onSiteAdded() - } - } - } - } - - override fun dropView() { - view = null - } -} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt new file mode 100644 index 0000000..e959e8c --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt @@ -0,0 +1,224 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.ui.addsite + +import androidx.annotation.CheckResult +import androidx.lifecycle.LifecycleObserver +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData +import com.afollestad.nocknock.R +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.putSite +import com.afollestad.nocknock.di.viewmodels.ScopedViewModel +import com.afollestad.nocknock.engine.validation.ValidationManager +import com.afollestad.nocknock.di.qualifiers.IoDispatcher +import com.afollestad.nocknock.viewcomponents.ext.isNullOrLessThan +import com.afollestad.nocknock.viewcomponents.ext.map +import kotlinx.coroutines.CoroutineDispatcher +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import okhttp3.HttpUrl +import javax.inject.Inject + +/** @author Aidan Follestad (@afollestad) */ +class AddSiteViewModel @Inject constructor( + private val database: AppDatabase, + private val validationManager: ValidationManager, + @field:IoDispatcher private val ioDispatcher: CoroutineDispatcher +) : ScopedViewModel(), LifecycleObserver { + + // Public properties + val name = MutableLiveData() + val url = MutableLiveData() + val timeout = MutableLiveData() + val validationMode = MutableLiveData() + val validationSearchTerm = MutableLiveData() + val validationScript = MutableLiveData() + val checkIntervalValue = MutableLiveData() + val checkIntervalUnit = MutableLiveData() + + // Private properties + private val isLoading = MutableLiveData() + private val nameError = MutableLiveData() + private val urlError = MutableLiveData() + private val timeoutError = MutableLiveData() + private val validationSearchTermError = MutableLiveData() + private val validationScriptError = MutableLiveData() + private val checkIntervalValueError = MutableLiveData() + + // Expose private properties or calculated properties + @CheckResult fun onIsLoading(): LiveData = isLoading + + @CheckResult fun onNameError(): LiveData = nameError + + @CheckResult fun onUrlError(): LiveData = urlError + + @CheckResult fun onUrlWarningVisibility(): LiveData { + return url.map { + val parsed = HttpUrl.parse(it) + return@map it.isNotEmpty() && + parsed != null && + parsed.scheme() != "http" && + parsed.scheme() != "https" + } + } + + @CheckResult fun onTimeoutError(): LiveData = timeoutError + + @CheckResult fun onValidationModeDescription(): LiveData { + return validationMode.map { + when (it) { + STATUS_CODE -> R.string.validation_mode_status_desc + TERM_SEARCH -> R.string.validation_mode_term_desc + JAVASCRIPT -> R.string.validation_mode_javascript_desc + else -> throw IllegalStateException("Unknown validation mode: $it") + } + } + } + + @CheckResult fun onValidationSearchTermError(): LiveData = validationSearchTermError + + @CheckResult fun onValidationSearchTermVisibility() = + validationMode.map { it == TERM_SEARCH } + + @CheckResult fun onValidationScriptError(): LiveData = validationScriptError + + @CheckResult fun onValidationScriptVisibility() = + validationMode.map { it == JAVASCRIPT } + + @CheckResult fun onCheckIntervalError(): LiveData = checkIntervalValueError + + // Actions + fun commit(done: () -> Unit) { + scope.launch { + val newModel = generateDbModel() ?: return@launch + isLoading.value = true + + val storedModel = withContext(ioDispatcher) { + database.putSite(newModel) + } + validationManager.scheduleCheck( + site = storedModel, + rightNow = true, + cancelPrevious = true + ) + + isLoading.value = false + done() + } + } + + // Utilities + private fun getCheckIntervalMs(): Long { + val value = checkIntervalValue.value ?: return 0 + val unit = checkIntervalUnit.value ?: return 0 + return value * unit + } + + private fun getValidationArgs(): String? { + return when (validationMode.value) { + TERM_SEARCH -> validationSearchTerm.value + JAVASCRIPT -> validationScript.value + else -> null + } + } + + private fun generateDbModel(): Site? { + var errorCount = 0 + + // Validation name + if (name.value.isNullOrEmpty()) { + nameError.value = R.string.please_enter_name + errorCount++ + } else { + nameError.value = null + } + + // Validate URL + when { + url.value.isNullOrEmpty() -> { + urlError.value = R.string.please_enter_url + errorCount++ + } + HttpUrl.parse(url.value!!) == null -> { + urlError.value = R.string.please_enter_valid_url + errorCount++ + } + else -> { + urlError.value = null + } + } + + // Validate timeout + if (timeout.value.isNullOrLessThan(1)) { + timeoutError.value = R.string.please_enter_networkTimeout + errorCount++ + } else { + timeoutError.value = null + } + + // Validate check interval + if (checkIntervalValue.value.isNullOrLessThan(1)) { + checkIntervalValueError.value = R.string.please_enter_check_interval + errorCount++ + } else { + checkIntervalValueError.value = null + } + + // Validate arguments + if (validationMode == TERM_SEARCH && + validationSearchTerm.value.isNullOrEmpty() + ) { + errorCount++ + validationSearchTermError.value = R.string.please_enter_search_term + validationScriptError.value = null + } else if (validationMode == JAVASCRIPT && + validationScript.value.isNullOrEmpty() + ) { + errorCount++ + validationSearchTermError.value = null + validationScriptError.value = R.string.please_enter_javaScript + } else { + validationSearchTermError.value = null + validationScriptError.value = null + } + + if (errorCount > 0) { + return null + } + + val newSettings = SiteSettings( + validationIntervalMs = getCheckIntervalMs(), + validationMode = validationMode.value!!, + validationArgs = getValidationArgs(), + networkTimeout = timeout.value!!, + disabled = false + ) + return Site( + id = 0, + name = name.value!!, + url = url.value!!, + settings = newSettings, + lastResult = null + ) + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt index 3ff7999..9be4e52 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt @@ -15,12 +15,12 @@ */ package com.afollestad.nocknock.ui.main -import android.content.BroadcastReceiver -import android.content.Context import android.content.Intent -import android.content.IntentFilter import android.os.Bundle import androidx.appcompat.app.AppCompatActivity +import androidx.lifecycle.Observer +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.ViewModelProviders import androidx.recyclerview.widget.DividerItemDecoration import androidx.recyclerview.widget.DividerItemDecoration.VERTICAL import androidx.recyclerview.widget.LinearLayoutManager @@ -30,43 +30,58 @@ import com.afollestad.nocknock.R import com.afollestad.nocknock.adapter.ServerAdapter import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.dialogs.AboutDialog -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.utilities.ext.ScopeReceiver +import com.afollestad.nocknock.notifications.NockNotificationManager +import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.utilities.ext.injector -import com.afollestad.nocknock.utilities.ext.safeRegisterReceiver -import com.afollestad.nocknock.utilities.ext.safeUnregisterReceiver -import com.afollestad.nocknock.utilities.ext.scopeWhileAttached import com.afollestad.nocknock.viewcomponents.ext.showOrHide import kotlinx.android.synthetic.main.activity_main.fab import kotlinx.android.synthetic.main.activity_main.list import kotlinx.android.synthetic.main.activity_main.loadingProgress -import kotlinx.android.synthetic.main.activity_main.rootView import kotlinx.android.synthetic.main.activity_main.toolbar import kotlinx.android.synthetic.main.include_empty_view.emptyText import javax.inject.Inject -import kotlin.coroutines.CoroutineContext /** @author Aidan Follestad (@afollestad) */ -class MainActivity : AppCompatActivity(), MainView { +class MainActivity : AppCompatActivity() { - private val intentReceiver = object : BroadcastReceiver() { - override fun onReceive( - context: Context, - intent: Intent - ) = presenter.onBroadcast(intent) - } - - @Inject lateinit var presenter: MainPresenter + @Inject lateinit var notificationManager: NockNotificationManager + @Inject lateinit var viewModelFactory: ViewModelProvider.Factory private lateinit var adapter: ServerAdapter + internal val viewModel by lazy { + return@lazy ViewModelProviders.of(this, viewModelFactory) + .get(MainViewModel::class.java) + } + private val statusUpdateReceiver = + StatusUpdateIntentReceiver(application) { + viewModel.postSiteUpdate(it) + } + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - injector().injectInto(this) setContentView(R.layout.activity_main) - presenter.takeView(this) + setupUi() + notificationManager.createChannels() + + lifecycle.run { + addObserver(viewModel) + addObserver(statusUpdateReceiver) + } + + viewModel.onSites() + .observe(this, Observer { + adapter.set(it) + emptyText.showOrHide(it.isEmpty()) + }) + loadingProgress.observe(this, viewModel.onIsLoading()) + + processIntent(intent) + } + + private fun setupUi() { toolbar.inflateMenu(R.menu.menu_main) toolbar.setOnMenuItemClickListener { item -> if (item.itemId == R.id.about) { @@ -82,8 +97,6 @@ class MainActivity : AppCompatActivity(), MainView { list.addItemDecoration(DividerItemDecoration(this, VERTICAL)) fab.setOnClickListener { addSite() } - - processIntent(intent) } override fun onNewIntent(intent: Intent?) { @@ -91,52 +104,6 @@ class MainActivity : AppCompatActivity(), MainView { intent?.let(::processIntent) } - override fun onResume() { - super.onResume() - val filter = IntentFilter().apply { - addAction(ACTION_STATUS_UPDATE) - } - safeRegisterReceiver(intentReceiver, filter) - presenter.resume() - } - - override fun onPause() { - super.onPause() - safeUnregisterReceiver(intentReceiver) - } - - override fun onDestroy() { - presenter.dropView() - super.onDestroy() - } - - override fun setLoading() = loadingProgress.setLoading() - - override fun setDoneLoading() = loadingProgress.setDone() - - override fun setModels(models: List) { - list.post { - adapter.set(models) - emptyText.showOrHide(models.isEmpty()) - } - } - - override fun updateModel(model: Site) { - list.post { adapter.update(model) } - } - - override fun onSiteDeleted(model: Site) { - list.post { - adapter.remove(model) - emptyText.showOrHide(adapter.itemCount == 0) - } - } - - override fun scopeWhileAttached( - context: CoroutineContext, - exec: ScopeReceiver - ) = rootView.scopeWhileAttached(context, exec) - private fun onSiteSelected( model: Site, longClick: Boolean @@ -146,7 +113,7 @@ class MainActivity : AppCompatActivity(), MainView { title(R.string.options) listItems(R.array.site_long_options) { _, i, _ -> when (i) { - 0 -> presenter.refreshSite(model) + 0 -> viewModel.refreshSite(model) 1 -> maybeRemoveSite(model) } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt index acfbfd4..63f1c23 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt @@ -24,7 +24,7 @@ import com.afollestad.nocknock.ui.addsite.AddSiteActivity import com.afollestad.nocknock.ui.addsite.KEY_FAB_SIZE import com.afollestad.nocknock.ui.addsite.KEY_FAB_X import com.afollestad.nocknock.ui.addsite.KEY_FAB_Y -import com.afollestad.nocknock.ui.viewsite.KEY_VIEW_MODEL +import com.afollestad.nocknock.ui.viewsite.KEY_SITE import com.afollestad.nocknock.ui.viewsite.ViewSiteActivity import com.afollestad.nocknock.utilities.providers.RealIntentProvider.Companion.KEY_VIEW_NOTIFICATION_MODEL import kotlinx.android.synthetic.main.activity_main.fab @@ -53,14 +53,14 @@ internal fun MainActivity.viewSite(model: Site) { private fun MainActivity.intentToView(model: Site) = Intent(this, ViewSiteActivity::class.java).apply { - putExtra(KEY_VIEW_MODEL, model) + putExtra(KEY_SITE, model) } internal fun MainActivity.maybeRemoveSite(model: Site) { MaterialDialog(this).show { title(R.string.remove_site) message(text = context.getString(R.string.remove_site_prompt, model.name).toHtml()) - positiveButton(R.string.remove) { presenter.removeSite(model) } + positiveButton(R.string.remove) { viewModel.removeSite(model) } negativeButton(android.R.string.cancel) } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt deleted file mode 100644 index efd9c64..0000000 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainPresenter.kt +++ /dev/null @@ -1,150 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.ui.main - -import android.app.Application -import android.content.Context.MODE_PRIVATE -import android.content.Intent -import com.afollestad.nocknock.data.AppDatabase -import com.afollestad.nocknock.data.allSites -import com.afollestad.nocknock.data.deleteSite -import com.afollestad.nocknock.data.legacy.DbMigrator -import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_UPDATE_MODEL -import com.afollestad.nocknock.engine.statuscheck.ValidationManager -import com.afollestad.nocknock.notifications.NockNotificationManager -import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.Dispatchers.IO -import kotlinx.coroutines.Dispatchers.Main -import kotlinx.coroutines.async -import kotlinx.coroutines.launch -import javax.inject.Inject -import timber.log.Timber.d as log - -/** @author Aidan Follestad (@afollestad) */ -interface MainPresenter { - - fun takeView(view: MainView) - - fun onBroadcast(intent: Intent) - - fun resume() - - fun refreshSite(site: Site) - - fun removeSite(site: Site) - - fun dropView() -} - -/** @author Aidan Follestad (@afollestad) */ -class RealMainPresenter @Inject constructor( - private val app: Application, - private val database: AppDatabase, - private val notificationManager: NockNotificationManager, - private val checkStatusManager: ValidationManager -) : MainPresenter { - - private var view: MainView? = null - - override fun takeView(view: MainView) { - this.view = view - notificationManager.createChannels() - ensureCheckJobs() - } - - override fun onBroadcast(intent: Intent) { - if (intent.action == ACTION_STATUS_UPDATE) { - val model = intent.getSerializableExtra(KEY_UPDATE_MODEL) as? Site - ?: return - view?.updateModel(model) - } - } - - override fun resume() { - notificationManager.cancelStatusNotifications() - - view!!.run { - setModels(listOf()) - setLoading() - - scopeWhileAttached(Main) { - launch(coroutineContext) { - doMigrationIfNeeded() - - val models = async(IO) { database.allSites() }.await() - - setModels(models) - setDoneLoading() - } - } - } - } - - override fun refreshSite(site: Site) = - checkStatusManager.scheduleCheck( - site = site, - rightNow = true, - cancelPrevious = true - ) - - override fun removeSite(site: Site) { - checkStatusManager.cancelCheck(site) - notificationManager.cancelStatusNotification(site) - - view!!.scopeWhileAttached(Main) { - launch(coroutineContext) { - async(IO) { database.deleteSite(site) }.await() - view?.onSiteDeleted(site) - } - } - } - - override fun dropView() { - view = null - } - - private suspend fun CoroutineScope.doMigrationIfNeeded() { - if (needDbMigration()) { - log("Doing database migration...") - val migratedCount = async(IO) { - DbMigrator(app, database).migrateAll() - }.await() - didDbMigration() - log("Database migration done! Migrated $migratedCount models.") - ensureCheckJobs() - } - } - - private fun needDbMigration(): Boolean = - !app.getSharedPreferences("settings", MODE_PRIVATE) - .getBoolean("did_db_migration", false) - - private fun didDbMigration() = - app.getSharedPreferences("settings", MODE_PRIVATE) - .edit() - .putBoolean("did_db_migration", true) - .apply() - - private fun ensureCheckJobs() { - view!!.scopeWhileAttached(IO) { - launch(coroutineContext) { - checkStatusManager.ensureScheduledChecks() - } - } - } -} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt new file mode 100644 index 0000000..1b287b6 --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt @@ -0,0 +1,113 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.ui.main + +import androidx.annotation.CheckResult +import androidx.lifecycle.Lifecycle.Event.ON_RESUME +import androidx.lifecycle.LifecycleObserver +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData +import androidx.lifecycle.OnLifecycleEvent +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.allSites +import com.afollestad.nocknock.data.deleteSite +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.di.viewmodels.ScopedViewModel +import com.afollestad.nocknock.engine.validation.ValidationManager +import com.afollestad.nocknock.notifications.NockNotificationManager +import com.afollestad.nocknock.di.qualifiers.IoDispatcher +import kotlinx.coroutines.CoroutineDispatcher +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import javax.inject.Inject + +/** @author Aidan Follestad (@afollestad) */ +class MainViewModel @Inject constructor( + private val database: AppDatabase, + private val notificationManager: NockNotificationManager, + private val validationManager: ValidationManager, + @field:IoDispatcher private val ioDispatcher: CoroutineDispatcher +) : ScopedViewModel(), LifecycleObserver { + + private val sites = MutableLiveData>() + private val isLoading = MutableLiveData() + + @CheckResult fun onSites(): LiveData> = sites + + @CheckResult fun onIsLoading(): LiveData = isLoading + + @OnLifecycleEvent(ON_RESUME) + fun onResume() = loadSites() + + fun postSiteUpdate(model: Site) { + val currentSites = sites.value ?: return + val index = currentSites.indexOfFirst { it.id == model.id } + if (index == -1) return + sites.value = currentSites.toMutableList() + .apply { + this[index] = model + } + } + + fun refreshSite(model: Site) { + validationManager.scheduleCheck( + site = model, + rightNow = true, + cancelPrevious = true + ) + } + + fun removeSite(model: Site) { + validationManager.cancelCheck(model) + notificationManager.cancelStatusNotification(model) + + scope.launch { + isLoading.value = true + withContext(ioDispatcher) { database.deleteSite(model) } + val currentSites = sites.value ?: return@launch + val index = currentSites.indexOfFirst { it.id == model.id } + isLoading.value = false + if (index == -1) return@launch + + sites.value = currentSites.toMutableList() + .apply { + removeAt(index) + } + } + } + + private fun loadSites() { + scope.launch { + notificationManager.cancelStatusNotifications() + sites.value = listOf() + isLoading.value = true + + val result = withContext(ioDispatcher) { + database.allSites() + } + + sites.value = result + ensureCheckJobs() + isLoading.value = false + } + } + + private suspend fun ensureCheckJobs() { + withContext(ioDispatcher) { + validationManager.ensureScheduledChecks() + } + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index b383aeb..6904345 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -16,35 +16,24 @@ package com.afollestad.nocknock.ui.viewsite import android.annotation.SuppressLint -import android.content.BroadcastReceiver -import android.content.Context import android.content.Intent -import android.content.IntentFilter import android.os.Bundle import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity +import androidx.lifecycle.Observer +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.ViewModelProviders import com.afollestad.nocknock.R import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.data.model.Status.WAITING import com.afollestad.nocknock.data.model.ValidationMode -import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.data.model.indexToValidationMode -import com.afollestad.nocknock.data.model.textRes -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.utilities.ext.ScopeReceiver -import com.afollestad.nocknock.utilities.ext.formatDate +import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.utilities.ext.injector -import com.afollestad.nocknock.utilities.ext.safeRegisterReceiver -import com.afollestad.nocknock.utilities.ext.safeUnregisterReceiver -import com.afollestad.nocknock.utilities.ext.scopeWhileAttached +import com.afollestad.nocknock.viewcomponents.ext.attachLiveData import com.afollestad.nocknock.viewcomponents.ext.dimenFloat -import com.afollestad.nocknock.viewcomponents.ext.onItemSelected import com.afollestad.nocknock.viewcomponents.ext.onScroll -import com.afollestad.nocknock.viewcomponents.ext.showOrHide -import com.afollestad.nocknock.viewcomponents.ext.textAsInt -import com.afollestad.nocknock.viewcomponents.ext.trimmedText +import com.afollestad.nocknock.viewcomponents.ext.toViewError +import com.afollestad.nocknock.viewcomponents.ext.toViewText +import com.afollestad.nocknock.viewcomponents.ext.toViewVisibility import kotlinx.android.synthetic.main.activity_viewsite.checkIntervalLayout import kotlinx.android.synthetic.main.activity_viewsite.disableChecksButton import kotlinx.android.synthetic.main.activity_viewsite.doneBtn @@ -55,7 +44,6 @@ import kotlinx.android.synthetic.main.activity_viewsite.loadingProgress import kotlinx.android.synthetic.main.activity_viewsite.responseTimeoutInput import kotlinx.android.synthetic.main.activity_viewsite.responseValidationMode import kotlinx.android.synthetic.main.activity_viewsite.responseValidationSearchTerm -import kotlinx.android.synthetic.main.activity_viewsite.rootView import kotlinx.android.synthetic.main.activity_viewsite.scriptInputLayout import kotlinx.android.synthetic.main.activity_viewsite.scrollView import kotlinx.android.synthetic.main.activity_viewsite.textLastCheckResult @@ -63,21 +51,21 @@ import kotlinx.android.synthetic.main.activity_viewsite.textNextCheck import kotlinx.android.synthetic.main.activity_viewsite.textUrlWarning import kotlinx.android.synthetic.main.activity_viewsite.toolbar import kotlinx.android.synthetic.main.activity_viewsite.validationModeDescription -import java.lang.System.currentTimeMillis import javax.inject.Inject -import kotlin.coroutines.CoroutineContext /** @author Aidan Follestad (@afollestad) */ -class ViewSiteActivity : AppCompatActivity(), ViewSiteView { +class ViewSiteActivity : AppCompatActivity() { - @Inject lateinit var presenter: ViewSitePresenter + @Inject lateinit var viewModelFactory: ViewModelProvider.Factory - private val intentReceiver = object : BroadcastReceiver() { - override fun onReceive( - context: Context, - intent: Intent - ) = presenter.onBroadcast(intent) + internal val viewModel by lazy { + return@lazy ViewModelProviders.of(this, viewModelFactory) + .get(ViewSiteViewModel::class.java) } + private val statusUpdateReceiver = + StatusUpdateIntentReceiver(application) { + viewModel.setModel(it) + } @SuppressLint("SetTextI18n") override fun onCreate(savedInstanceState: Bundle?) { @@ -85,18 +73,102 @@ class ViewSiteActivity : AppCompatActivity(), ViewSiteView { injector().injectInto(this) setContentView(R.layout.activity_viewsite) + setupUi() + lifecycle.run { + addObserver(viewModel) + addObserver(statusUpdateReceiver) + } + + // Loading + loadingProgress.observe(this, viewModel.onIsLoading()) + + // Status + viewModel.status.observe(this, Observer { + iconStatus.setStatus(it) + invalidateMenuForStatus(it) + }) + + // Name + inputName.attachLiveData(this, viewModel.name) + viewModel.onNameError() + .toViewError(this, inputName) + + // Url + inputUrl.attachLiveData(this, viewModel.url) + viewModel.onUrlError() + .toViewError(this, inputUrl) + viewModel.onUrlWarningVisibility() + .toViewVisibility(this, textUrlWarning) + + // Timeout + responseTimeoutInput.attachLiveData(this, viewModel.timeout) + viewModel.onTimeoutError() + .toViewError(this, responseTimeoutInput) + + // Validation mode + responseValidationMode.attachLiveData(this, viewModel.validationMode, + { ValidationMode.fromIndex(it) }, + { it.toIndex() }) + viewModel.onValidationSearchTermError() + .toViewError(this, responseValidationSearchTerm) + viewModel.onValidationModeDescription() + .toViewText(this, validationModeDescription) + + // Validation search term + responseValidationSearchTerm.attachLiveData(this, viewModel.validationSearchTerm) + viewModel.onValidationSearchTermVisibility() + .toViewVisibility(this, responseValidationSearchTerm) + + // Validation script + scriptInputLayout.attach( + codeData = viewModel.validationScript, + errorData = viewModel.onValidationScriptError(), + visibility = viewModel.onValidationScriptVisibility() + ) + + // Check interval + checkIntervalLayout.attach( + valueData = viewModel.checkIntervalValue, + multiplierData = viewModel.checkIntervalUnit, + errorData = viewModel.onCheckIntervalError() + ) + + // Last/next check + viewModel.onLastCheckResultText() + .toViewText(this, textLastCheckResult) + viewModel.onNextCheckText() + .toViewText(this, textNextCheck) + + // Disabled button + viewModel.onDisableChecksVisibility() + .toViewVisibility(this, disableChecksButton) + disableChecksButton.setOnClickListener { maybeDisableChecks() } + + // Done button + viewModel.onDoneButtonText() + .toViewText(this, doneBtn) + doneBtn.setOnClickListener { + viewModel.commit { finish() } + } + + // Populate view model with initial data + val model = intent.getSerializableExtra(KEY_SITE) as Site + viewModel.setModel(model) + } + + private fun setupUi() { toolbar.run { setNavigationOnClickListener { finish() } inflateMenu(R.menu.menu_viewsite) menu.findItem(R.id.refresh) .setActionView(R.layout.menu_item_refresh_icon) .apply { - actionView.setOnClickListener { presenter.checkNow() } + actionView.setOnClickListener { viewModel.checkNow() } } setOnMenuItemClickListener { maybeRemoveSite() - return@setOnMenuItemClickListener true + true } } @@ -108,10 +180,6 @@ class ViewSiteActivity : AppCompatActivity(), ViewSiteView { } } - inputUrl.setOnFocusChangeListener { _, hasFocus -> - presenter.onUrlInputFocusChange(hasFocus, inputUrl.trimmedText()) - } - val validationOptionsAdapter = ArrayAdapter( this, R.layout.list_item_spinner, @@ -119,164 +187,13 @@ class ViewSiteActivity : AppCompatActivity(), ViewSiteView { ) validationOptionsAdapter.setDropDownViewResource(R.layout.list_item_spinner_dropdown) responseValidationMode.adapter = validationOptionsAdapter - - responseValidationMode.onItemSelected(presenter::onValidationModeSelected) - - doneBtn.setOnClickListener { - val checkInterval = checkIntervalLayout.getSelectedCheckInterval() - val validationMode = - responseValidationMode.selectedItemPosition.indexToValidationMode() - val defaultTimeout = getString(R.string.response_timeout_default).toInt() - - presenter.commit( - name = inputName.trimmedText(), - url = inputUrl.trimmedText(), - checkInterval = checkInterval, - validationMode = validationMode, - validationArgs = validationMode.validationContent(), - networkTimeout = responseTimeoutInput.textAsInt(defaultValue = defaultTimeout) - ) - } - - disableChecksButton.setOnClickListener { maybeDisableChecks() } - - presenter.takeView(this, intent) } override fun onNewIntent(intent: Intent?) { super.onNewIntent(intent) - presenter.onNewIntent(intent) - } - - override fun onDestroy() { - presenter.dropView() - super.onDestroy() - } - - override fun setLoading() = loadingProgress.setLoading() - - override fun setDoneLoading() = loadingProgress.setDone() - - override fun showOrHideUrlSchemeWarning(show: Boolean) { - textUrlWarning.showOrHide(show) - if (show) { - textUrlWarning.setText(R.string.warning_http_url) + if (intent != null && intent.hasExtra(KEY_SITE)) { + val newModel = intent.getSerializableExtra(KEY_SITE) as Site + viewModel.setModel(newModel) } } - - override fun showOrHideValidationSearchTerm(show: Boolean) = - responseValidationSearchTerm.showOrHide(show) - - override fun showOrHideScriptInput(show: Boolean) = scriptInputLayout.showOrHide(show) - - override fun setValidationModeDescription(res: Int) = validationModeDescription.setText(res) - - override fun displayModel(model: Site) = with(model) { - val siteSettings = this.settings - requireNotNull(siteSettings) { "Site settings must be populated." } - - iconStatus.setStatus(this.lastResult?.status ?: WAITING) - inputName.setText(this.name) - inputUrl.setText(this.url) - - if (this.lastResult == null) { - textLastCheckResult.setText(R.string.none) - } else { - val statusText = this.lastResult!!.status.textRes() - textLastCheckResult.text = if (statusText == 0) { - this.lastResult!!.reason - } else { - getString(statusText) - } - } - - if (siteSettings.disabled) { - textNextCheck.setText(R.string.auto_checks_disabled) - } else { - val lastCheck = this.lastResult?.timestampMs ?: currentTimeMillis() - textNextCheck.text = (lastCheck + siteSettings.validationIntervalMs).formatDate() - } - checkIntervalLayout.set(siteSettings.validationIntervalMs) - - responseValidationMode.setSelection(siteSettings.validationMode.value - 1) - when (siteSettings.validationMode) { - TERM_SEARCH -> responseValidationSearchTerm.setText(siteSettings.validationArgs ?: "") - JAVASCRIPT -> scriptInputLayout.setCode(siteSettings.validationArgs) - else -> { - responseValidationSearchTerm.setText("") - scriptInputLayout.clear() - } - } - - responseTimeoutInput.setText(siteSettings.networkTimeout.toString()) - - disableChecksButton.showOrHide(!siteSettings.disabled) - doneBtn.setText( - if (siteSettings.disabled) R.string.renable_and_save_changes - else R.string.save_changes - ) - - invalidateMenuForStatus(model) - } - - override fun setInputErrors(errors: InputErrors) { - inputName.error = if (errors.name != null) { - getString(errors.name!!) - } else { - null - } - inputUrl.error = if (errors.url != null) { - getString(errors.url!!) - } else { - null - } - checkIntervalLayout.setError( - if (errors.checkInterval != null) { - getString(errors.checkInterval!!) - } else { - null - } - ) - responseValidationSearchTerm.error = if (errors.termSearch != null) { - getString(errors.termSearch!!) - } else { - null - } - scriptInputLayout.setError( - if (errors.javaScript != null) { - getString(errors.javaScript!!) - } else { - null - } - ) - responseTimeoutInput.error = if (errors.networkTimeout != null) { - getString(errors.networkTimeout!!) - } else { - null - } - } - - override fun scopeWhileAttached( - context: CoroutineContext, - exec: ScopeReceiver - ) = rootView.scopeWhileAttached(context, exec) - - override fun onResume() { - super.onResume() - val filter = IntentFilter().apply { - addAction(ACTION_STATUS_UPDATE) - } - safeRegisterReceiver(intentReceiver, filter) - } - - override fun onPause() { - super.onPause() - safeUnregisterReceiver(intentReceiver) - } - - private fun ValidationMode.validationContent() = when (this) { - STATUS_CODE -> null - TERM_SEARCH -> responseValidationSearchTerm.trimmedText() - JAVASCRIPT -> scriptInputLayout.getCode() - } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt index 6888d76..e9bfe1a 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt @@ -18,39 +18,42 @@ package com.afollestad.nocknock.ui.viewsite import android.widget.ImageView import com.afollestad.materialdialogs.MaterialDialog import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.Status import com.afollestad.nocknock.data.model.isPending import com.afollestad.nocknock.toHtml import com.afollestad.nocknock.utilities.ext.animateRotation import kotlinx.android.synthetic.main.activity_viewsite.toolbar +const val KEY_SITE = "site_model" + internal fun ViewSiteActivity.maybeRemoveSite() { - val model = presenter.currentModel() + val model = viewModel.site MaterialDialog(this).show { title(R.string.remove_site) message(text = context.getString(R.string.remove_site_prompt, model.name).toHtml()) - positiveButton(R.string.remove) { presenter.removeSite() } + positiveButton(R.string.remove) { + viewModel.removeSite { finish() } + } negativeButton(android.R.string.cancel) } } internal fun ViewSiteActivity.maybeDisableChecks() { - val model = presenter.currentModel() + val model = viewModel.site MaterialDialog(this).show { title(R.string.disable_automatic_checks) message( text = context.getString(R.string.disable_automatic_checks_prompt, model.name).toHtml() ) - positiveButton(R.string.disable) { presenter.disableChecks() } + positiveButton(R.string.disable) { viewModel.disable() } negativeButton(android.R.string.cancel) } } -internal fun ViewSiteActivity.invalidateMenuForStatus(model: Site) { +internal fun ViewSiteActivity.invalidateMenuForStatus(status: Status) { val refreshIcon = toolbar.menu.findItem(R.id.refresh) .actionView as ImageView - - if (model.lastResult?.status.isPending()) { + if (status.isPending()) { refreshIcon.animateRotation() } else { refreshIcon.run { diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt deleted file mode 100644 index 4f936d2..0000000 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenter.kt +++ /dev/null @@ -1,301 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.ui.viewsite - -import android.content.Intent -import androidx.annotation.CheckResult -import com.afollestad.nocknock.R -import com.afollestad.nocknock.data.AppDatabase -import com.afollestad.nocknock.data.deleteSite -import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.data.model.Status.WAITING -import com.afollestad.nocknock.data.model.ValidationMode -import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.data.updateSite -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_UPDATE_MODEL -import com.afollestad.nocknock.engine.statuscheck.ValidationManager -import com.afollestad.nocknock.notifications.NockNotificationManager -import kotlinx.coroutines.Dispatchers.IO -import kotlinx.coroutines.Dispatchers.Main -import kotlinx.coroutines.async -import kotlinx.coroutines.launch -import okhttp3.HttpUrl -import org.jetbrains.annotations.TestOnly -import javax.inject.Inject - -const val KEY_VIEW_MODEL = "site_model" - -/** @author Aidan Follestad (@afollestad) */ -data class InputErrors( - var name: Int? = null, - var url: Int? = null, - var checkInterval: Int? = null, - var termSearch: Int? = null, - var javaScript: Int? = null, - var networkTimeout: Int? = null -) { - @CheckResult fun any(): Boolean { - return name != null || url != null || checkInterval != null || - termSearch != null || javaScript != null || networkTimeout != null - } -} - -/** @author Aidan Follestad (@afollestad) */ -interface ViewSitePresenter { - - fun takeView( - view: ViewSiteView, - intent: Intent - ) - - fun onBroadcast(intent: Intent) - - fun onNewIntent(intent: Intent?) - - fun onUrlInputFocusChange( - focused: Boolean, - content: String - ) - - fun onValidationModeSelected(index: Int) - - fun commit( - name: String, - url: String, - checkInterval: Long, - validationMode: ValidationMode, - validationArgs: String?, - networkTimeout: Int - ) - - fun checkNow() - - fun disableChecks() - - fun removeSite() - - fun currentModel(): Site - - fun dropView() -} - -/** @author Aidan Follestad (@afollestad) */ -class RealViewSitePresenter @Inject constructor( - private val database: AppDatabase, - private val checkStatusManager: ValidationManager, - private val notificationManager: NockNotificationManager -) : ViewSitePresenter { - - private var view: ViewSiteView? = null - private var currentModel: Site? = null - - override fun takeView( - view: ViewSiteView, - intent: Intent - ) { - this.currentModel = intent.getSerializableExtra(KEY_VIEW_MODEL) as Site - this.view = view.apply { - displayModel(currentModel!!) - } - } - - override fun onBroadcast(intent: Intent) { - if (intent.action == ACTION_STATUS_UPDATE) { - val model = intent.getSerializableExtra(KEY_UPDATE_MODEL) as? Site - ?: return - this.currentModel = model - view?.displayModel(model) - } - } - - override fun onNewIntent(intent: Intent?) { - if (intent != null && intent.hasExtra(KEY_VIEW_MODEL)) { - currentModel = intent.getSerializableExtra(KEY_VIEW_MODEL) as Site - view?.displayModel(currentModel!!) - } - } - - override fun onUrlInputFocusChange( - focused: Boolean, - content: String - ) { - if (content.isEmpty() || focused) { - return - } - val url = HttpUrl.parse(content) - if (url == null || - (url.scheme() != "http" && - url.scheme() != "https") - ) { - view?.showOrHideUrlSchemeWarning(true) - } else { - view?.showOrHideUrlSchemeWarning(false) - } - } - - override fun onValidationModeSelected(index: Int) = with(view!!) { - showOrHideValidationSearchTerm(index == 1) - showOrHideScriptInput(index == 2) - setValidationModeDescription( - when (index) { - 0 -> R.string.validation_mode_status_desc - 1 -> R.string.validation_mode_term_desc - 2 -> R.string.validation_mode_javascript_desc - else -> throw IllegalStateException("Unknown validation mode position: $index") - } - ) - } - - override fun commit( - name: String, - url: String, - checkInterval: Long, - validationMode: ValidationMode, - validationArgs: String?, - networkTimeout: Int - ) { - val inputErrors = InputErrors() - - if (name.isEmpty()) { - inputErrors.name = R.string.please_enter_name - } - if (url.isEmpty()) { - inputErrors.url = R.string.please_enter_url - } else if (HttpUrl.parse(url) == null) { - inputErrors.url = R.string.please_enter_valid_url - } - if (checkInterval <= 0) { - inputErrors.checkInterval = R.string.please_enter_check_interval - } - if (validationMode == TERM_SEARCH && validationArgs.isNullOrEmpty()) { - inputErrors.termSearch = R.string.please_enter_search_term - } else if (validationMode == JAVASCRIPT && validationArgs.isNullOrEmpty()) { - inputErrors.javaScript = R.string.please_enter_javaScript - } - if (networkTimeout <= 0) { - inputErrors.networkTimeout = R.string.please_enter_networkTimeout - } - - if (inputErrors.any()) { - view?.setInputErrors(inputErrors) - return - } - - val updatedSettings = currentModel!!.settings!!.copy( - validationIntervalMs = checkInterval, - validationMode = validationMode, - validationArgs = validationArgs, - disabled = false, - networkTimeout = networkTimeout - ) - val updatedModel = currentModel!!.copy( - name = name, - url = url, - settings = updatedSettings - ) - .withStatus(status = WAITING) - - with(view!!) { - scopeWhileAttached(Main) { - launch(coroutineContext) { - setLoading() - async(IO) { - database.updateSite(updatedModel) - }.await() - - checkStatusManager.scheduleCheck( - site = updatedModel, - rightNow = true, - cancelPrevious = true - ) - - setDoneLoading() - view?.finish() - } - } - } - } - - override fun checkNow() = with(view!!) { - val checkModel = currentModel!!.withStatus( - status = WAITING - ) - view?.displayModel(checkModel) - checkStatusManager.scheduleCheck( - site = checkModel, - rightNow = true, - cancelPrevious = true - ) - } - - override fun disableChecks() { - val site = currentModel!! - checkStatusManager.cancelCheck(site) - notificationManager.cancelStatusNotification(site) - - with(view!!) { - scopeWhileAttached(Main) { - launch(coroutineContext) { - setLoading() - currentModel = currentModel!!.copy( - settings = currentModel!!.settings!!.copy( - disabled = true - ) - ) - - async(IO) { - database.updateSite(currentModel!!) - }.await() - - setDoneLoading() - view?.displayModel(currentModel!!) - } - } - } - } - - override fun removeSite() { - val site = currentModel!! - checkStatusManager.cancelCheck(site) - notificationManager.cancelStatusNotification(site) - - with(view!!) { - scopeWhileAttached(Main) { - launch(coroutineContext) { - setLoading() - async(IO) { - database.deleteSite(site) - }.await() - setDoneLoading() - view?.finish() - } - } - } - } - - override fun currentModel() = this.currentModel!! - - override fun dropView() { - view = null - currentModel = null - } - - @TestOnly fun setModel(model: Site) { - this.currentModel = model - } -} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt new file mode 100644 index 0000000..4d7b914 --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt @@ -0,0 +1,320 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.ui.viewsite + +import android.app.Application +import androidx.annotation.CheckResult +import androidx.lifecycle.LifecycleObserver +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData +import com.afollestad.nocknock.R +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.deleteSite +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.Status +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.model.ValidationResult +import com.afollestad.nocknock.data.model.textRes +import com.afollestad.nocknock.data.updateSite +import com.afollestad.nocknock.di.viewmodels.ScopedViewModel +import com.afollestad.nocknock.engine.validation.ValidationManager +import com.afollestad.nocknock.notifications.NockNotificationManager +import com.afollestad.nocknock.utilities.ext.formatDate +import com.afollestad.nocknock.di.qualifiers.IoDispatcher +import com.afollestad.nocknock.viewcomponents.ext.isNullOrLessThan +import com.afollestad.nocknock.viewcomponents.ext.map +import com.afollestad.nocknock.viewcomponents.ext.zip +import kotlinx.coroutines.CoroutineDispatcher +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import okhttp3.HttpUrl +import java.lang.System.currentTimeMillis +import javax.inject.Inject + +/** @author Aidan Follestad (@afollestad) */ +class ViewSiteViewModel @Inject constructor( + private val app: Application, + private val database: AppDatabase, + private val notificationManager: NockNotificationManager, + private val validationManager: ValidationManager, + @field:IoDispatcher private val ioDispatcher: CoroutineDispatcher +) : ScopedViewModel(), LifecycleObserver { + + lateinit var site: Site + + // Public properties + val status = MutableLiveData() + val name = MutableLiveData() + val url = MutableLiveData() + val timeout = MutableLiveData() + val validationMode = MutableLiveData() + val validationSearchTerm = MutableLiveData() + val validationScript = MutableLiveData() + val checkIntervalValue = MutableLiveData() + val checkIntervalUnit = MutableLiveData() + internal val disabled = MutableLiveData() + internal val lastResult = MutableLiveData() + + // Private properties + private val isLoading = MutableLiveData() + private val nameError = MutableLiveData() + private val urlError = MutableLiveData() + private val timeoutError = MutableLiveData() + private val validationSearchTermError = MutableLiveData() + private val validationScriptError = MutableLiveData() + private val checkIntervalValueError = MutableLiveData() + + // Expose private properties or calculated properties + @CheckResult fun onIsLoading(): LiveData = isLoading + + @CheckResult fun onNameError(): LiveData = nameError + + @CheckResult fun onUrlError(): LiveData = urlError + + @CheckResult fun onUrlWarningVisibility(): LiveData { + return url.map { + val parsed = HttpUrl.parse(it) + return@map it.isNotEmpty() && + parsed != null && + parsed.scheme() != "http" && + parsed.scheme() != "https" + } + } + + @CheckResult fun onTimeoutError(): LiveData = timeoutError + + @CheckResult fun onValidationModeDescription(): LiveData { + return validationMode.map { + when (it) { + STATUS_CODE -> R.string.validation_mode_status_desc + TERM_SEARCH -> R.string.validation_mode_term_desc + JAVASCRIPT -> R.string.validation_mode_javascript_desc + else -> throw IllegalStateException("Unknown validation mode: $it") + } + } + } + + @CheckResult fun onValidationSearchTermError(): LiveData = validationSearchTermError + + @CheckResult fun onValidationSearchTermVisibility() = + validationMode.map { it == TERM_SEARCH } + + @CheckResult fun onValidationScriptError(): LiveData = validationScriptError + + @CheckResult fun onValidationScriptVisibility() = + validationMode.map { it == JAVASCRIPT } + + @CheckResult fun onCheckIntervalError(): LiveData = checkIntervalValueError + + @CheckResult fun onDisableChecksVisibility(): LiveData = + disabled.map { !it } + + @CheckResult fun onDoneButtonText(): LiveData = + disabled.map { + if (it) R.string.renable_and_save_changes + else R.string.save_changes + } + + @CheckResult fun onLastCheckResultText(): LiveData = lastResult.map { + if (it == null) { + app.getString(R.string.none) + } else { + val statusText = it.status.textRes() + if (statusText == 0) { + it.reason + } else { + app.getString(statusText) + } + } + } + + @CheckResult fun onNextCheckText(): LiveData { + return zip(disabled, lastResult) + .map { + val disabled = it.first + val lastResult = it.second + if (disabled) { + app.getString(R.string.auto_checks_disabled) + } else { + val lastCheck = lastResult?.timestampMs ?: currentTimeMillis() + (lastCheck + getCheckIntervalMs()).formatDate() + } + } + } + + // Actions + fun commit(done: () -> Unit) { + scope.launch { + val updatedModel = getUpdatedDbModel() ?: return@launch + isLoading.value = true + + withContext(ioDispatcher) { + database.updateSite(updatedModel) + } + validationManager.scheduleCheck( + site = updatedModel, + rightNow = true, + cancelPrevious = true + ) + + isLoading.value = false + done() + } + } + + fun checkNow() { + val checkModel = site.withStatus( + status = WAITING + ) + setModel(checkModel) + validationManager.scheduleCheck( + site = checkModel, + rightNow = true, + cancelPrevious = true + ) + } + + fun removeSite(done: () -> Unit) { + validationManager.cancelCheck(site) + notificationManager.cancelStatusNotification(site) + + scope.launch { + isLoading.value = true + withContext(ioDispatcher) { + database.deleteSite(site) + } + isLoading.value = false + done() + } + } + + fun disable() { + validationManager.cancelCheck(site) + notificationManager.cancelStatusNotification(site) + + scope.launch { + isLoading.value = true + val newModel = site.copy( + settings = site.settings!!.copy( + disabled = true + ) + ) + withContext(ioDispatcher) { + database.updateSite(newModel) + } + isLoading.value = false + setModel(newModel) + } + } + + // Utilities + private fun getCheckIntervalMs(): Long { + val value = checkIntervalValue.value ?: return 0 + val unit = checkIntervalUnit.value ?: return 0 + return value * unit + } + + private fun getValidationArgs(): String? { + return when (validationMode.value) { + TERM_SEARCH -> validationSearchTerm.value + JAVASCRIPT -> validationScript.value + else -> null + } + } + + private fun getUpdatedDbModel(): Site? { + var errorCount = 0 + + // Validation name + if (name.value.isNullOrEmpty()) { + nameError.value = R.string.please_enter_name + errorCount++ + } else { + nameError.value = null + } + + // Validate URL + when { + url.value.isNullOrEmpty() -> { + urlError.value = R.string.please_enter_url + errorCount++ + } + HttpUrl.parse(url.value!!) == null -> { + urlError.value = R.string.please_enter_valid_url + errorCount++ + } + else -> { + urlError.value = null + } + } + + // Validate timeout + if (timeout.value.isNullOrLessThan(1)) { + timeoutError.value = R.string.please_enter_networkTimeout + errorCount++ + } else { + timeoutError.value = null + } + + // Validate check interval + if (checkIntervalValue.value.isNullOrLessThan(1)) { + checkIntervalValueError.value = R.string.please_enter_check_interval + errorCount++ + } else { + checkIntervalValueError.value = null + } + + // Validate arguments + if (validationMode == TERM_SEARCH && + validationSearchTerm.value.isNullOrEmpty() + ) { + errorCount++ + validationSearchTermError.value = R.string.please_enter_search_term + validationScriptError.value = null + } else if (validationMode == JAVASCRIPT && + validationScript.value.isNullOrEmpty() + ) { + errorCount++ + validationSearchTermError.value = null + validationScriptError.value = R.string.please_enter_javaScript + } else { + validationSearchTermError.value = null + validationScriptError.value = null + } + + if (errorCount > 0) { + return null + } + + val newSettings = site.settings!!.copy( + validationIntervalMs = getCheckIntervalMs(), + validationMode = validationMode.value!!, + validationArgs = getValidationArgs(), + networkTimeout = timeout.value!!, + disabled = false + ) + return site.copy( + name = name.value!!, + url = url.value!!, + settings = newSettings + ) + .withStatus(status = WAITING) + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt new file mode 100644 index 0000000..9f0a81c --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt @@ -0,0 +1,98 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.ui.viewsite + +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.utilities.ext.DAY +import com.afollestad.nocknock.utilities.ext.HOUR +import com.afollestad.nocknock.utilities.ext.MINUTE +import com.afollestad.nocknock.utilities.ext.WEEK +import kotlin.math.ceil + +fun ViewSiteViewModel.setModel(site: Site) { + requireNotNull(site.settings) { + "Settings must be populated!" + } + this.site = site + val settings = site.settings!! + + status.value = site.lastResult?.status ?: WAITING + name.value = site.name + url.value = site.url + timeout.value = settings.networkTimeout + + validationMode.value = settings.validationMode + when (settings.validationMode) { + TERM_SEARCH -> { + validationSearchTerm.value = settings.validationArgs + validationScript.value = null + } + JAVASCRIPT -> { + validationSearchTerm.value = null + validationScript.value = settings.validationArgs + } + else -> { + validationSearchTerm.value = null + validationScript.value = null + } + } + + setCheckInterval(settings.validationIntervalMs) + + this.disabled.value = settings.disabled + this.lastResult.value = site.lastResult +} + +private fun ViewSiteViewModel.setCheckInterval(interval: Long) { + when { + interval >= WEEK -> { + checkIntervalValue.value = + getIntervalFromUnit(interval, WEEK) + checkIntervalUnit.value = WEEK + } + interval >= DAY -> { + checkIntervalValue.value = + getIntervalFromUnit(interval, DAY) + checkIntervalUnit.value = DAY + } + interval >= HOUR -> { + checkIntervalValue.value = + getIntervalFromUnit(interval, HOUR) + checkIntervalUnit.value = HOUR + } + interval >= MINUTE -> { + checkIntervalValue.value = + getIntervalFromUnit(interval, MINUTE) + checkIntervalUnit.value = MINUTE + } + else -> { + checkIntervalValue.value = 0 + checkIntervalUnit.value = MINUTE + } + } +} + +private fun getIntervalFromUnit( + millis: Long, + unit: Long +): Int { + val intervalFloat = millis.toFloat() + val byFloat = unit.toFloat() + return ceil(intervalFloat / byFloat).toInt() +} diff --git a/app/src/main/res/layout/activity_addsite.xml b/app/src/main/res/layout/activity_addsite.xml index c19fba1..69a29d9 100644 --- a/app/src/main/res/layout/activity_addsite.xml +++ b/app/src/main/res/layout/activity_addsite.xml @@ -87,13 +87,13 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/list_text_spacing" android:visibility="gone" - tools:text="Warning: this app checks for server availability with HTTP requests. It's recommended that you use an HTTP URL." + android:text="@string/warning_http_url" style="@style/NockText.Footnote" /> - - - - () - private val view = mock() - - private val presenter = RealAddSitePresenter( - database, - checkStatusManager - ) - - @Before fun setup() { - doAnswer { - val exec = it.getArgument(1) - runBlocking { exec() } - Unit - }.whenever(view) - .scopeWhileAttached(any(), any()) - - presenter.takeView(view) - } - - @After fun destroy() { - presenter.dropView() - } - - @Test fun onUrlInputFocusChange_focused() { - presenter.onUrlInputFocusChange(true, "hello") - verifyNoMoreInteractions(view) - } - - @Test fun onUrlInputFocusChange_empty() { - presenter.onUrlInputFocusChange(false, "") - verifyNoMoreInteractions(view) - } - - @Test fun onUrlInputFocusChange_notHttpHttps() { - presenter.onUrlInputFocusChange(false, "ftp://hello.com") - verify(view).showOrHideUrlSchemeWarning(true) - } - - @Test fun onUrlInputFocusChange_isHttpOrHttps() { - presenter.onUrlInputFocusChange(false, "http://hello.com") - presenter.onUrlInputFocusChange(false, "https://hello.com") - verify(view, times(2)).showOrHideUrlSchemeWarning(false) - } - - @Test fun onValidationModeSelected_statusCode() { - presenter.onValidationModeSelected(0) - verify(view).showOrHideValidationSearchTerm(false) - verify(view).showOrHideScriptInput(false) - verify(view).setValidationModeDescription(R.string.validation_mode_status_desc) - } - - @Test fun onValidationModeSelected_termSearch() { - presenter.onValidationModeSelected(1) - verify(view).showOrHideValidationSearchTerm(true) - verify(view).showOrHideScriptInput(false) - verify(view).setValidationModeDescription(R.string.validation_mode_term_desc) - } - - @Test fun onValidationModeSelected_javaScript() { - presenter.onValidationModeSelected(2) - verify(view).showOrHideValidationSearchTerm(false) - verify(view).showOrHideScriptInput(true) - verify(view).setValidationModeDescription(R.string.validation_mode_javascript_desc) - } - - @Test(expected = IllegalStateException::class) - fun onValidationModeSelected_other() { - presenter.onValidationModeSelected(3) - } - - @Test fun commit_nameError() { - presenter.commit( - "", - "https://test.com", - 1, - STATUS_CODE, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.name).isEqualTo(R.string.please_enter_name) - } - - @Test fun commit_urlEmptyError() { - presenter.commit( - "Testing", - "", - 1, - STATUS_CODE, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.url).isEqualTo(R.string.please_enter_url) - } - - @Test fun commit_urlFormatError() { - presenter.commit( - "Testing", - "ftp://hello.com", - 1, - STATUS_CODE, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.url).isEqualTo(R.string.please_enter_valid_url) - } - - @Test fun commit_checkIntervalError() { - presenter.commit( - "Testing", - "https://hello.com", - -1, - STATUS_CODE, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.checkInterval).isEqualTo(R.string.please_enter_check_interval) - } - - @Test fun commit_termSearchError() { - presenter.commit( - "Testing", - "https://hello.com", - 1, - TERM_SEARCH, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.termSearch).isEqualTo(R.string.please_enter_search_term) - } - - @Test fun commit_networkTimeout_error() { - presenter.commit( - "Testing", - "https://hello.com", - 1, - STATUS_CODE, - null, - 0 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.networkTimeout).isEqualTo(R.string.please_enter_networkTimeout) - } - - @Test fun commit_javaScript_error() { - presenter.commit( - "Testing", - "https://hello.com", - 1, - JAVASCRIPT, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.javaScript).isEqualTo(R.string.please_enter_javaScript) - } - - @Test fun commit_success() = runBlocking { - presenter.commit( - "Testing", - "https://hello.com", - 1, - STATUS_CODE, - null, - 60000 - ) - - val siteCaptor = argumentCaptor() - val settingsCaptor = argumentCaptor() - - verify(view).setLoading() - verify(database.siteDao()).insert(siteCaptor.capture()) - verify(database.siteSettingsDao()).insert(settingsCaptor.capture()) - verify(database.validationResultsDao(), never()).insert(any()) - - val settings = settingsCaptor.firstValue - val model = siteCaptor.firstValue.copy( - id = 1, // fill it in because our insert captor doesn't catch this - settings = settings, - lastResult = null - ) - - verify(view, never()).setInputErrors(any()) - verify(checkStatusManager).scheduleCheck( - site = model, - rightNow = true, - cancelPrevious = true, - fromFinishingJob = false - ) - - verify(view).setDoneLoading() - verify(view).onSiteAdded() - } -} diff --git a/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt b/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt new file mode 100644 index 0000000..b03df8b --- /dev/null +++ b/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt @@ -0,0 +1,33 @@ +package com.afollestad.nocknock + +import androidx.annotation.CheckResult +import androidx.lifecycle.LiveData +import androidx.lifecycle.Observer +import com.google.common.truth.Truth.assertWithMessage + +/** @author Aidan Follestad (@afollestad) */ +class TestLiveData(data: LiveData) { + + private val receivedValues = mutableListOf() + private val observer = Observer { receivedValues.add(it) } + + init { + data.observeForever(observer) + } + + fun assertNoValues() { + assertWithMessage("Expected no values, but got: $receivedValues").that(receivedValues) + .isEmpty() + } + + fun assertValues(vararg assertValues: T) { + val assertList = assertValues.toList() + assertWithMessage("Expected: $assertList, but got: $receivedValues").that(receivedValues) + .isEqualTo(assertList) + receivedValues.clear() + } + + @CheckResult fun values(): List = receivedValues +} + +@CheckResult fun LiveData.test() = TestLiveData(this) \ No newline at end of file diff --git a/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt deleted file mode 100644 index 04135d7..0000000 --- a/app/src/test/java/com/afollestad/nocknock/MainPresenterTest.kt +++ /dev/null @@ -1,129 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock - -import android.app.Application -import android.content.Context.MODE_PRIVATE -import android.content.Intent -import android.content.SharedPreferences -import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_UPDATE_MODEL -import com.afollestad.nocknock.engine.statuscheck.ValidationManager -import com.afollestad.nocknock.notifications.NockNotificationManager -import com.afollestad.nocknock.ui.main.MainView -import com.afollestad.nocknock.ui.main.RealMainPresenter -import com.afollestad.nocknock.utilities.ext.ScopeReceiver -import com.google.common.truth.Truth.assertThat -import com.nhaarman.mockitokotlin2.any -import com.nhaarman.mockitokotlin2.argumentCaptor -import com.nhaarman.mockitokotlin2.doAnswer -import com.nhaarman.mockitokotlin2.doReturn -import com.nhaarman.mockitokotlin2.mock -import com.nhaarman.mockitokotlin2.times -import com.nhaarman.mockitokotlin2.verify -import com.nhaarman.mockitokotlin2.whenever -import kotlinx.coroutines.runBlocking -import org.junit.After -import org.junit.Before -import org.junit.Test - -class MainPresenterTest { - - private val prefs = mock { - on { getBoolean("did_db_migration", false) } doReturn true - } - private val app = mock { - on { getSharedPreferences("settings", MODE_PRIVATE) } doReturn prefs - } - - private val database = mockDatabase() - - private val notificationManager = mock() - private val checkStatusManager = mock() - private val view = mock() - - private val presenter = RealMainPresenter( - app, - database, - notificationManager, - checkStatusManager - ) - - @Before fun setup() { - doAnswer { - val exec = it.getArgument(1) - runBlocking { exec() } - Unit - }.whenever(view) - .scopeWhileAttached(any(), any()) - - presenter.takeView(view) - } - - @After fun destroy() { - presenter.dropView() - } - - @Test fun onBroadcast() { - val badIntent = fakeIntent("Hello World") - presenter.onBroadcast(badIntent) - - val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) - whenever(goodIntent.getSerializableExtra(KEY_UPDATE_MODEL)) - .doReturn(MOCK_MODEL_2) - - presenter.onBroadcast(goodIntent) - verify(view, times(1)).updateModel(MOCK_MODEL_2) - } - - @Test fun resume() = runBlocking { - presenter.resume() - - verify(notificationManager).cancelStatusNotifications() - - val modelsCaptor = argumentCaptor>() - verify(view, times(2)).setModels(modelsCaptor.capture()) - assertThat(modelsCaptor.firstValue).isEmpty() - assertThat(modelsCaptor.lastValue).isEqualTo(ALL_MOCK_MODELS) - } - - @Test fun refreshSite() { - presenter.refreshSite(MOCK_MODEL_3) - - verify(checkStatusManager).scheduleCheck( - site = MOCK_MODEL_3, - rightNow = true, - cancelPrevious = true - ) - } - - @Test fun removeSite() = runBlocking { - presenter.removeSite(MOCK_MODEL_1) - - verify(checkStatusManager).cancelCheck(MOCK_MODEL_1) - verify(notificationManager).cancelStatusNotification(MOCK_MODEL_1) - verify(database.siteDao()).delete(MOCK_MODEL_1) - verify(database.siteSettingsDao()).delete(MOCK_MODEL_1.settings!!) - verify(view).onSiteDeleted(MOCK_MODEL_1) - } - - private fun fakeIntent(action: String): Intent { - return mock { - on { getAction() } doReturn action - } - } -} diff --git a/app/src/test/java/com/afollestad/nocknock/TestUtil.kt b/app/src/test/java/com/afollestad/nocknock/TestData.kt similarity index 96% rename from app/src/test/java/com/afollestad/nocknock/TestUtil.kt rename to app/src/test/java/com/afollestad/nocknock/TestData.kt index fe5d524..aad071f 100644 --- a/app/src/test/java/com/afollestad/nocknock/TestUtil.kt +++ b/app/src/test/java/com/afollestad/nocknock/TestData.kt @@ -15,6 +15,7 @@ */ package com.afollestad.nocknock +import android.content.Intent import com.afollestad.nocknock.data.AppDatabase import com.afollestad.nocknock.data.SiteDao import com.afollestad.nocknock.data.SiteSettingsDao @@ -32,6 +33,12 @@ import com.nhaarman.mockitokotlin2.isA import com.nhaarman.mockitokotlin2.mock import java.lang.System.currentTimeMillis +fun fakeIntent(action: String): Intent { + return mock { + on { getAction() } doReturn action + } +} + fun fakeSettingsModel( id: Long, validationMode: ValidationMode = STATUS_CODE diff --git a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt deleted file mode 100644 index 37a78b0..0000000 --- a/app/src/test/java/com/afollestad/nocknock/ViewSitePresenterTest.kt +++ /dev/null @@ -1,420 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock - -import android.content.Intent -import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.data.model.SiteSettings -import com.afollestad.nocknock.data.model.Status.ERROR -import com.afollestad.nocknock.data.model.Status.WAITING -import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT -import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE -import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH -import com.afollestad.nocknock.data.model.ValidationResult -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.ACTION_STATUS_UPDATE -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_UPDATE_MODEL -import com.afollestad.nocknock.engine.statuscheck.ValidationManager -import com.afollestad.nocknock.notifications.NockNotificationManager -import com.afollestad.nocknock.ui.viewsite.InputErrors -import com.afollestad.nocknock.ui.viewsite.KEY_VIEW_MODEL -import com.afollestad.nocknock.ui.viewsite.RealViewSitePresenter -import com.afollestad.nocknock.ui.viewsite.ViewSiteView -import com.afollestad.nocknock.utilities.ext.ScopeReceiver -import com.google.common.truth.Truth.assertThat -import com.nhaarman.mockitokotlin2.any -import com.nhaarman.mockitokotlin2.argumentCaptor -import com.nhaarman.mockitokotlin2.doAnswer -import com.nhaarman.mockitokotlin2.doReturn -import com.nhaarman.mockitokotlin2.mock -import com.nhaarman.mockitokotlin2.never -import com.nhaarman.mockitokotlin2.times -import com.nhaarman.mockitokotlin2.verify -import com.nhaarman.mockitokotlin2.verifyNoMoreInteractions -import com.nhaarman.mockitokotlin2.whenever -import kotlinx.coroutines.runBlocking -import org.junit.After -import org.junit.Before -import org.junit.Test -import java.lang.System.currentTimeMillis - -class ViewSitePresenterTest { - - private val database = mockDatabase() - private val checkStatusManager = mock() - private val notificationManager = mock() - private val view = mock() - - private val presenter = RealViewSitePresenter( - database, - checkStatusManager, - notificationManager - ) - - @Before fun setup() { - doAnswer { - val exec = it.getArgument(1) - runBlocking { exec() } - Unit - }.whenever(view) - .scopeWhileAttached(any(), any()) - - val intent = fakeIntent("") - whenever(intent.getSerializableExtra(KEY_VIEW_MODEL)) - .doReturn(MOCK_MODEL_1) - presenter.takeView(view, intent) - assertThat(presenter.currentModel()).isEqualTo(MOCK_MODEL_1) - verify(view, times(1)).displayModel(MOCK_MODEL_1) - } - - @After fun destroy() { - presenter.dropView() - } - - @Test fun onBroadcast() { - val badIntent = fakeIntent("Hello World") - presenter.onBroadcast(badIntent) - - val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) - whenever(goodIntent.getSerializableExtra(KEY_UPDATE_MODEL)) - .doReturn(MOCK_MODEL_2) - - presenter.onBroadcast(goodIntent) - assertThat(presenter.currentModel()).isEqualTo(MOCK_MODEL_2) - verify(view, times(1)).displayModel(MOCK_MODEL_2) - } - - @Test fun onNewIntent() { - val badIntent = fakeIntent(ACTION_STATUS_UPDATE) - presenter.onBroadcast(badIntent) - - val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) - whenever(goodIntent.getSerializableExtra(KEY_VIEW_MODEL)) - .doReturn(MOCK_MODEL_3) - presenter.onBroadcast(goodIntent) - - verify(view, times(1)).displayModel(MOCK_MODEL_3) - } - - @Test fun onUrlInputFocusChange_focused() { - presenter.onUrlInputFocusChange(true, "hello") - verifyNoMoreInteractions(view) - } - - @Test fun onUrlInputFocusChange_empty() { - presenter.onUrlInputFocusChange(false, "") - verifyNoMoreInteractions(view) - } - - @Test fun onUrlInputFocusChange_notHttpHttps() { - presenter.onUrlInputFocusChange(false, "ftp://hello.com") - verify(view).showOrHideUrlSchemeWarning(true) - } - - @Test fun onUrlInputFocusChange_isHttpOrHttps() { - presenter.onUrlInputFocusChange(false, "http://hello.com") - presenter.onUrlInputFocusChange(false, "https://hello.com") - verify(view, times(2)).showOrHideUrlSchemeWarning(false) - } - - @Test fun onValidationModeSelected_statusCode() { - presenter.onValidationModeSelected(0) - verify(view).showOrHideValidationSearchTerm(false) - verify(view).showOrHideScriptInput(false) - verify(view).setValidationModeDescription(R.string.validation_mode_status_desc) - } - - @Test fun onValidationModeSelected_termSearch() { - presenter.onValidationModeSelected(1) - verify(view).showOrHideValidationSearchTerm(true) - verify(view).showOrHideScriptInput(false) - verify(view).setValidationModeDescription(R.string.validation_mode_term_desc) - } - - @Test fun onValidationModeSelected_javaScript() { - presenter.onValidationModeSelected(2) - verify(view).showOrHideValidationSearchTerm(false) - verify(view).showOrHideScriptInput(true) - verify(view).setValidationModeDescription(R.string.validation_mode_javascript_desc) - } - - @Test(expected = IllegalStateException::class) - fun onValidationModeSelected_other() { - presenter.onValidationModeSelected(3) - } - - @Test fun commit_nameError() { - presenter.commit( - "", - "https://test.com", - 1, - STATUS_CODE, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.name).isEqualTo(R.string.please_enter_name) - } - - @Test fun commit_urlEmptyError() { - presenter.commit( - "Testing", - "", - 1, - STATUS_CODE, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.url).isEqualTo(R.string.please_enter_url) - } - - @Test fun commit_urlFormatError() { - presenter.commit( - "Testing", - "ftp://hello.com", - 1, - STATUS_CODE, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.url).isEqualTo(R.string.please_enter_valid_url) - } - - @Test fun commit_checkIntervalError() { - presenter.commit( - "Testing", - "https://hello.com", - -1, - STATUS_CODE, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.checkInterval).isEqualTo(R.string.please_enter_check_interval) - } - - @Test fun commit_termSearchError() { - presenter.commit( - "Testing", - "https://hello.com", - 1, - TERM_SEARCH, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.termSearch).isEqualTo(R.string.please_enter_search_term) - } - - @Test fun commit_javaScript_error() { - presenter.commit( - "Testing", - "https://hello.com", - 1, - JAVASCRIPT, - null, - 60000 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.javaScript).isEqualTo(R.string.please_enter_javaScript) - } - - @Test fun commit_networkTimeout_error() { - presenter.commit( - "Testing", - "https://hello.com", - 1, - STATUS_CODE, - null, - 0 - ) - - val inputErrorsCaptor = argumentCaptor() - verify(view).setInputErrors(inputErrorsCaptor.capture()) - verify(checkStatusManager, never()) - .scheduleCheck(any(), any(), any(), any()) - - val errors = inputErrorsCaptor.firstValue - assertThat(errors.networkTimeout).isEqualTo(R.string.please_enter_networkTimeout) - } - - @Test fun commit_success() = runBlocking { - val name = "Testing" - val url = "https://hello.com" - val checkInterval = 60000L - val validationMode = TERM_SEARCH - val validationArgs = "Hello World" - - val currentModel = presenter.currentModel() - val initialLastResult = ValidationResult( - siteId = currentModel.id, - timestampMs = currentTimeMillis() - 60000, - status = ERROR, - reason = "Oh no!" - ) - val disabledModel = currentModel.copy( - settings = currentModel.settings!!.copy(disabled = true), - lastResult = initialLastResult - ) - presenter.setModel(disabledModel) - - presenter.commit( - name, - url, - checkInterval, - validationMode, - validationArgs, - 60000 - ) - - val siteCaptor = argumentCaptor() - val settingsCaptor = argumentCaptor() - val resultCaptor = argumentCaptor() - - verify(view).setLoading() - verify(database.siteDao()).update(siteCaptor.capture()) - verify(database.siteSettingsDao()).update(settingsCaptor.capture()) - verify(database.validationResultsDao()).update(resultCaptor.capture()) - - val model = siteCaptor.firstValue - model.apply { - assertThat(this.name).isEqualTo(name) - assertThat(this.url).isEqualTo(url) - } - - val settings = settingsCaptor.firstValue - settings.apply { - assertThat(this.validationIntervalMs).isEqualTo(checkInterval) - assertThat(this.validationArgs).isEqualTo(validationArgs) - assertThat(this.disabled).isFalse() - } - - val result = resultCaptor.firstValue - result.apply { - assertThat(this.status).isEqualTo(WAITING) - assertThat(this.reason).isNull() - assertThat(this.timestampMs).isGreaterThan(0) - } - - verify(view, never()).setInputErrors(any()) - verify(checkStatusManager).scheduleCheck( - site = model, - rightNow = true, - cancelPrevious = true, - fromFinishingJob = false - ) - verify(view).setDoneLoading() - verify(view).finish() - } - - @Test fun checkNow() { - val newModel = presenter.currentModel() - .withStatus(status = WAITING) - presenter.checkNow() - - verify(view, never()).setLoading() - verify(view).displayModel(newModel) - verify(checkStatusManager).scheduleCheck( - site = newModel, - rightNow = true, - cancelPrevious = true - ) - } - - @Test fun disableChecks() = runBlocking { - val model = presenter.currentModel() - presenter.disableChecks() - - verify(checkStatusManager).cancelCheck(model) - verify(notificationManager).cancelStatusNotification(model) - verify(view).setLoading() - - val modelCaptor = argumentCaptor() - val settingsCaptor = argumentCaptor() - val resultCaptor = argumentCaptor() - - verify(database.siteDao()).update(modelCaptor.capture()) - verify(database.siteSettingsDao()).update(settingsCaptor.capture()) - verify(database.validationResultsDao()).update(resultCaptor.capture()) - - val newModel = modelCaptor.firstValue - val newSettings = settingsCaptor.firstValue - val result = resultCaptor.firstValue - assertThat(newSettings.disabled).isTrue() - - verify(view).setDoneLoading() - verify(view, times(1)).displayModel(newModel) - } - - @Test fun removeSite() = runBlocking { - val model = presenter.currentModel() - presenter.removeSite() - - verify(checkStatusManager).cancelCheck(model) - verify(notificationManager).cancelStatusNotification(model) - verify(view).setLoading() - - verify(database.siteSettingsDao()).delete(model.settings!!) - verify(database.validationResultsDao()).delete(model.lastResult!!) - verify(database.siteDao()).delete(model) - - verify(view).setDoneLoading() - verify(view).finish() - } - - private fun fakeIntent(action: String): Intent { - return mock { - on { getAction() } doReturn action - } - } -} diff --git a/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt b/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt new file mode 100644 index 0000000..54d62c4 --- /dev/null +++ b/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt @@ -0,0 +1,55 @@ +package com.afollestad.nocknock.broadcasts + +import android.app.Application +import android.content.IntentFilter +import com.afollestad.nocknock.MOCK_MODEL_2 +import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.ACTION_STATUS_UPDATE +import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.KEY_UPDATE_MODEL +import com.afollestad.nocknock.fakeIntent +import com.google.common.truth.Truth.assertThat +import com.nhaarman.mockitokotlin2.argumentCaptor +import com.nhaarman.mockitokotlin2.doReturn +import com.nhaarman.mockitokotlin2.mock +import com.nhaarman.mockitokotlin2.times +import com.nhaarman.mockitokotlin2.verify +import com.nhaarman.mockitokotlin2.whenever +import org.junit.Test + +/** @author Aidan Follestad (@afollestad) */ +class StatusUpdateIntentReceiverTest { + + private val app = mock() + private val callback = mock() + + private val receiver = StatusUpdateIntentReceiver(app, callback) + + @Test fun onReceive() { + val badIntent = fakeIntent("Hello World") + receiver.intentReceiver.onReceive(app, badIntent) + + val goodIntent = fakeIntent(ACTION_STATUS_UPDATE) + whenever(goodIntent.getSerializableExtra(KEY_UPDATE_MODEL)) + .doReturn(MOCK_MODEL_2) + + receiver.intentReceiver.onReceive(app, goodIntent) + verify(callback, times(1)).invoke(MOCK_MODEL_2) + } + + @Test fun onResume() { + receiver.onResume() + + val filterCaptor = argumentCaptor() + verify(app).registerReceiver(receiver.intentReceiver, filterCaptor.capture()) + + val actionIterator = filterCaptor.firstValue.actionsIterator() + assertThat(actionIterator.hasNext()).isTrue() + val filterAction = actionIterator.next() + assertThat(filterAction).isEqualTo(ACTION_STATUS_UPDATE) + assertThat(actionIterator.hasNext()).isFalse() + } + + @Test fun onPause() { + receiver.onPause() + verify(app).unregisterReceiver(receiver.intentReceiver) + } +} \ No newline at end of file diff --git a/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSitePresenterTest.kt new file mode 100644 index 0000000..0320fd3 --- /dev/null +++ b/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSitePresenterTest.kt @@ -0,0 +1,301 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.ui.addsite + +//import com.afollestad.nocknock.R.string +//import com.afollestad.nocknock.data.model.Site +//import com.afollestad.nocknock.data.model.SiteSettings +//import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +//import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +//import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +//import com.afollestad.nocknock.engine.validation.ValidationManager +//import com.afollestad.nocknock.mockDatabase +//import com.afollestad.nocknock.ui.addsite.AddSiteView +//import com.afollestad.nocknock.ui.addsite.InputErrors +//import com.afollestad.nocknock.ui.addsite.RealAddSitePresenter +//import com.afollestad.nocknock.utilities.ext.ScopeReceiver +//import com.google.common.truth.Truth.assertThat +//import com.nhaarman.mockitokotlin2.any +//import com.nhaarman.mockitokotlin2.argumentCaptor +//import com.nhaarman.mockitokotlin2.doAnswer +//import com.nhaarman.mockitokotlin2.mock +//import com.nhaarman.mockitokotlin2.never +//import com.nhaarman.mockitokotlin2.times +//import com.nhaarman.mockitokotlin2.verify +//import com.nhaarman.mockitokotlin2.verifyNoMoreInteractions +//import com.nhaarman.mockitokotlin2.whenever +//import kotlinx.coroutines.runBlocking +//import org.junit.After +//import org.junit.Before +//import org.junit.Test +// +//class AddSitePresenterTest { +// +// private val database = mockDatabase() +// private val checkStatusManager = mock() +// private val view = mock() +// +// private val presenter = RealAddSitePresenter( +// database, +// checkStatusManager +// ) +// +// @Before fun setup() { +// doAnswer { +// val exec = it.getArgument(1) +// runBlocking { exec() } +// Unit +// }.whenever(view) +// .scopeWhileAttached(any(), any()) +// +// presenter.takeView(view) +// } +// +// @After fun destroy() { +// presenter.dropView() +// } +// +// @Test fun onUrlInputFocusChange_focused() { +// presenter.onUrlInputFocusChange(true, "hello") +// verifyNoMoreInteractions(view) +// } +// +// @Test fun onUrlInputFocusChange_empty() { +// presenter.onUrlInputFocusChange(false, "") +// verifyNoMoreInteractions(view) +// } +// +// @Test fun onUrlInputFocusChange_notHttpHttps() { +// presenter.onUrlInputFocusChange(false, "ftp://hello.com") +// verify(view).showOrHideUrlSchemeWarning(true) +// } +// +// @Test fun onUrlInputFocusChange_isHttpOrHttps() { +// presenter.onUrlInputFocusChange(false, "http://hello.com") +// presenter.onUrlInputFocusChange(false, "https://hello.com") +// verify(view, times(2)).showOrHideUrlSchemeWarning(false) +// } +// +// @Test fun onValidationModeSelected_statusCode() { +// presenter.onValidationModeSelected(0) +// verify(view).showOrHideValidationSearchTerm(false) +// verify(view).showOrHideScriptInput(false) +// verify(view).setValidationModeDescription( +// string.validation_mode_status_desc +// ) +// } +// +// @Test fun onValidationModeSelected_termSearch() { +// presenter.onValidationModeSelected(1) +// verify(view).showOrHideValidationSearchTerm(true) +// verify(view).showOrHideScriptInput(false) +// verify(view).setValidationModeDescription( +// string.validation_mode_term_desc +// ) +// } +// +// @Test fun onValidationModeSelected_javaScript() { +// presenter.onValidationModeSelected(2) +// verify(view).showOrHideValidationSearchTerm(false) +// verify(view).showOrHideScriptInput(true) +// verify(view).setValidationModeDescription( +// string.validation_mode_javascript_desc +// ) +// } +// +// @Test(expected = IllegalStateException::class) +// fun onValidationModeSelected_other() { +// presenter.onValidationModeSelected(3) +// } +// +// @Test fun commit_nameError() { +// presenter.commit( +// "", +// "https://test.com", +// 1, +// STATUS_CODE, +// null, +// 60000 +// ) +// +// val inputErrorsCaptor = argumentCaptor() +// verify(view).setInputErrors(inputErrorsCaptor.capture()) +// verify(checkStatusManager, never()) +// .scheduleCheck(any(), any(), any(), any()) +// +// val errors = inputErrorsCaptor.firstValue +// assertThat(errors.name).isEqualTo(string.please_enter_name) +// } +// +// @Test fun commit_urlEmptyError() { +// presenter.commit( +// "Testing", +// "", +// 1, +// STATUS_CODE, +// null, +// 60000 +// ) +// +// val inputErrorsCaptor = argumentCaptor() +// verify(view).setInputErrors(inputErrorsCaptor.capture()) +// verify(checkStatusManager, never()) +// .scheduleCheck(any(), any(), any(), any()) +// +// val errors = inputErrorsCaptor.firstValue +// assertThat(errors.url).isEqualTo(string.please_enter_url) +// } +// +// @Test fun commit_urlFormatError() { +// presenter.commit( +// "Testing", +// "ftp://hello.com", +// 1, +// STATUS_CODE, +// null, +// 60000 +// ) +// +// val inputErrorsCaptor = argumentCaptor() +// verify(view).setInputErrors(inputErrorsCaptor.capture()) +// verify(checkStatusManager, never()) +// .scheduleCheck(any(), any(), any(), any()) +// +// val errors = inputErrorsCaptor.firstValue +// assertThat(errors.url).isEqualTo(string.please_enter_valid_url) +// } +// +// @Test fun commit_checkIntervalError() { +// presenter.commit( +// "Testing", +// "https://hello.com", +// -1, +// STATUS_CODE, +// null, +// 60000 +// ) +// +// val inputErrorsCaptor = argumentCaptor() +// verify(view).setInputErrors(inputErrorsCaptor.capture()) +// verify(checkStatusManager, never()) +// .scheduleCheck(any(), any(), any(), any()) +// +// val errors = inputErrorsCaptor.firstValue +// assertThat(errors.checkInterval).isEqualTo( +// string.please_enter_check_interval +// ) +// } +// +// @Test fun commit_termSearchError() { +// presenter.commit( +// "Testing", +// "https://hello.com", +// 1, +// TERM_SEARCH, +// null, +// 60000 +// ) +// +// val inputErrorsCaptor = argumentCaptor() +// verify(view).setInputErrors(inputErrorsCaptor.capture()) +// verify(checkStatusManager, never()) +// .scheduleCheck(any(), any(), any(), any()) +// +// val errors = inputErrorsCaptor.firstValue +// assertThat(errors.termSearch).isEqualTo( +// string.please_enter_search_term +// ) +// } +// +// @Test fun commit_networkTimeout_error() { +// presenter.commit( +// "Testing", +// "https://hello.com", +// 1, +// STATUS_CODE, +// null, +// 0 +// ) +// +// val inputErrorsCaptor = argumentCaptor() +// verify(view).setInputErrors(inputErrorsCaptor.capture()) +// verify(checkStatusManager, never()) +// .scheduleCheck(any(), any(), any(), any()) +// +// val errors = inputErrorsCaptor.firstValue +// assertThat(errors.networkTimeout).isEqualTo( +// string.please_enter_networkTimeout +// ) +// } +// +// @Test fun commit_javaScript_error() { +// presenter.commit( +// "Testing", +// "https://hello.com", +// 1, +// JAVASCRIPT, +// null, +// 60000 +// ) +// +// val inputErrorsCaptor = argumentCaptor() +// verify(view).setInputErrors(inputErrorsCaptor.capture()) +// verify(checkStatusManager, never()) +// .scheduleCheck(any(), any(), any(), any()) +// +// val errors = inputErrorsCaptor.firstValue +// assertThat(errors.javaScript).isEqualTo( +// string.please_enter_javaScript +// ) +// } +// +// @Test fun commit_success() = runBlocking { +// presenter.commit( +// "Testing", +// "https://hello.com", +// 1, +// STATUS_CODE, +// null, +// 60000 +// ) +// +// val siteCaptor = argumentCaptor() +// val settingsCaptor = argumentCaptor() +// +// verify(view).setLoading() +// verify(database.siteDao()).insert(siteCaptor.capture()) +// verify(database.siteSettingsDao()).insert(settingsCaptor.capture()) +// verify(database.validationResultsDao(), never()).insert(any()) +// +// val settings = settingsCaptor.firstValue +// val model = siteCaptor.firstValue.copy( +// id = 1, // fill it in because our insert captor doesn't catch this +// settings = settings, +// lastResult = null +// ) +// +// verify(view, never()).setInputErrors(any()) +// verify(checkStatusManager).scheduleCheck( +// site = model, +// rightNow = true, +// cancelPrevious = true, +// fromFinishingJob = false +// ) +// +// verify(view).setDoneLoading() +// verify(view).onSiteAdded() +// } +//} diff --git a/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt new file mode 100644 index 0000000..6414bd5 --- /dev/null +++ b/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt @@ -0,0 +1,158 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.ui.main + +import com.afollestad.nocknock.ALL_MOCK_MODELS +import com.afollestad.nocknock.MOCK_MODEL_1 +import com.afollestad.nocknock.MOCK_MODEL_2 +import com.afollestad.nocknock.MOCK_MODEL_3 +import com.afollestad.nocknock.engine.validation.ValidationManager +import com.afollestad.nocknock.mockDatabase +import com.afollestad.nocknock.notifications.NockNotificationManager +import com.afollestad.nocknock.test +import com.nhaarman.mockitokotlin2.mock +import com.nhaarman.mockitokotlin2.verify +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.runBlocking +import org.junit.After +import org.junit.Test + +class MainViewModelTest { + + private val database = mockDatabase() + private val notificationManager = mock() + private val validationManager = mock() + + private val viewModel = MainViewModel( + database, + notificationManager, + validationManager, + Dispatchers.Default + ).apply { + this.mainDispatcher = Dispatchers.Default + } + + @After fun tearDown() = viewModel.destroy() + + @Test fun onResume() = runBlocking { + val isLoading = viewModel.onIsLoading() + .test() + val sites = viewModel.onSites() + .test() + + viewModel.onResume() + + verify(notificationManager).cancelStatusNotifications() + verify(validationManager).ensureScheduledChecks() + + sites.assertValues( + listOf(), + ALL_MOCK_MODELS + ) + isLoading.assertValues(true, false) + } + + @Test fun postSiteUpdate_notFound() { + val sites = viewModel.onSites() + .test() + viewModel.postSiteUpdate(MOCK_MODEL_1) + sites.assertNoValues() + } + + @Test fun postSiteUpdate() { + val sites = viewModel.onSites() + .test() + + viewModel.onResume() + sites.assertValues( + listOf(), + ALL_MOCK_MODELS + ) + + val updatedModel2 = MOCK_MODEL_2.copy( + name = "Wakanda Forever!!!" + ) + val updatedSites = ALL_MOCK_MODELS.toMutableList() + .apply { + this[1] = updatedModel2 + } + viewModel.postSiteUpdate(updatedModel2) + + sites.assertValues(updatedSites) + + } + + @Test fun refreshSite() { + viewModel.refreshSite(MOCK_MODEL_3) + + verify(validationManager).scheduleCheck( + site = MOCK_MODEL_3, + rightNow = true, + cancelPrevious = true + ) + } + + @Test fun removeSite_notFound() { + val sites = viewModel.onSites() + .test() + val isLoading = viewModel.onIsLoading() + .test() + + viewModel.onResume() + sites.assertValues( + listOf(), + ALL_MOCK_MODELS + ) + + val modifiedModel = MOCK_MODEL_1.copy(id = 11111) + viewModel.removeSite(modifiedModel) + + sites.assertNoValues() + isLoading.assertValues(true, false) + + verify(validationManager).cancelCheck(modifiedModel) + verify(notificationManager).cancelStatusNotification(modifiedModel) + verify(database.siteDao()).delete(modifiedModel) + verify(database.siteSettingsDao()).delete(modifiedModel.settings!!) + } + + @Test fun removeSite() { + val sites = viewModel.onSites() + .test() + val isLoading = viewModel.onIsLoading() + .test() + + viewModel.onResume() + sites.assertValues( + listOf(), + ALL_MOCK_MODELS + ) + + val modelsWithout1 = ALL_MOCK_MODELS.toMutableList() + .apply { + removeAt(0) + } + viewModel.removeSite(MOCK_MODEL_1) + + sites.assertValues(modelsWithout1) + isLoading.assertValues(true, false) + + verify(validationManager).cancelCheck(MOCK_MODEL_1) + verify(notificationManager).cancelStatusNotification(MOCK_MODEL_1) + verify(database.siteDao()).delete(MOCK_MODEL_1) + verify(database.siteSettingsDao()).delete(MOCK_MODEL_1.settings!!) + } +} diff --git a/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenterTest.kt new file mode 100644 index 0000000..9b4a33b --- /dev/null +++ b/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenterTest.kt @@ -0,0 +1,20 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.ui.viewsite + +class ViewSitePresenterTest { + +} diff --git a/data/src/main/java/com/afollestad/nocknock/data/legacy/DbMigrator.kt b/data/src/main/java/com/afollestad/nocknock/data/legacy/DbMigrator.kt deleted file mode 100644 index 5af752b..0000000 --- a/data/src/main/java/com/afollestad/nocknock/data/legacy/DbMigrator.kt +++ /dev/null @@ -1,105 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -@file:Suppress("DEPRECATION") - -package com.afollestad.nocknock.data.legacy - -import android.app.Application -import com.afollestad.nocknock.data.AppDatabase -import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.data.model.SiteSettings -import com.afollestad.nocknock.data.model.Status.CHECKING -import com.afollestad.nocknock.data.model.Status.WAITING -import com.afollestad.nocknock.data.model.ValidationResult -import javax.inject.Inject - -/** - * Migrates from manual SQLite management to Room. - * - * @author Aidan Follestad (@afollestad) - */ -class DbMigrator @Inject constructor( - app: Application, - private val appDb: AppDatabase -) { - private val legacyStore = ServerModelStore(app) - - fun migrateAll(): Int { - val legacyModels = legacyStore.get() - var count = 0 - - for (oldModel in legacyModels) { - // Insert site - val site = oldModel.toNewModel() - val siteId = appDb.siteDao() - .insert(site) - - // Insert site settings - val settingsWithId = site.settings!!.copy( - siteId = siteId - ) - appDb.siteSettingsDao() - .insert(settingsWithId) - - // Insert validation result - site.lastResult?.let { - val resultWithId = it.copy( - siteId = siteId - ) - appDb.validationResultsDao() - .insert(resultWithId) - } - - count++ - } - - legacyStore.wipe() - return count - } - - private fun ServerModel.toNewModel(): Site { - return Site( - id = 0, - name = this.name, - url = this.url, - settings = this.toSettingsModel(), - lastResult = this.toValidationModel() - ) - } - - private fun ServerModel.toSettingsModel(): SiteSettings { - return SiteSettings( - siteId = 0, - validationIntervalMs = this.checkInterval, - validationMode = this.validationMode, - validationArgs = this.validationContent, - disabled = this.disabled, - networkTimeout = this.networkTimeout - ) - } - - private fun ServerModel.toValidationModel(): ValidationResult? { - if (this.lastCheck == LAST_CHECK_NONE) { - return null - } - return ValidationResult( - siteId = 0, - timestampMs = this.lastCheck, - status = if (this.status == CHECKING) WAITING else this.status, - reason = this.reason - ) - } -} diff --git a/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModel.kt b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModel.kt deleted file mode 100644 index 9882705..0000000 --- a/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModel.kt +++ /dev/null @@ -1,136 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -@file:Suppress("DEPRECATION") - -package com.afollestad.nocknock.data.legacy - -import android.content.ContentValues -import android.database.Cursor -import com.afollestad.nocknock.data.model.Status -import com.afollestad.nocknock.data.model.Status.OK -import com.afollestad.nocknock.data.model.ValidationMode -import com.afollestad.nocknock.data.model.toSiteStatus -import com.afollestad.nocknock.data.model.toValidationMode - -const val CHECK_INTERVAL_UNSET = -1L -const val LAST_CHECK_NONE = -1L - -/** @author Aidan Follestad (@afollestad)*/ -@Deprecated("Deprecated in favor of Site.") -data class ServerModel( - var id: Int = 0, - val name: String, - val url: String, - val status: Status = OK, - val checkInterval: Long = CHECK_INTERVAL_UNSET, - val lastCheck: Long = LAST_CHECK_NONE, - val reason: String? = null, - val validationMode: ValidationMode, - val validationContent: String? = null, - val disabled: Boolean = false, - val networkTimeout: Int = 0 -) { - - companion object { - const val TABLE_NAME = "server_models" - const val COLUMN_ID = "_id" - const val COLUMN_NAME = "name" - const val COLUMN_URL = "url" - const val COLUMN_STATUS = "status" - const val COLUMN_CHECK_INTERVAL = "check_interval" - const val COLUMN_LAST_CHECK = "last_check" - const val COLUMN_REASON = "reason" - const val COLUMN_VALIDATION_MODE = "validation_mode" - const val COLUMN_VALIDATION_CONTENT = "validation_content" - const val COLUMN_DISABLED = "disabled" - const val COLUMN_NETWORK_TIMEOUT = "network_timeout" - - const val DEFAULT_SORT_ORDER = "$COLUMN_NAME ASC, $COLUMN_DISABLED DESC" - - fun pull(cursor: Cursor): ServerModel { - return ServerModel( - id = cursor.getInt( - cursor.getColumnIndex( - COLUMN_ID - ) - ), - name = cursor.getString( - cursor.getColumnIndex( - COLUMN_NAME - ) - ), - url = cursor.getString( - cursor.getColumnIndex( - COLUMN_URL - ) - ), - status = cursor.getInt( - cursor.getColumnIndex( - COLUMN_STATUS - ) - ).toSiteStatus(), - checkInterval = cursor.getLong( - cursor.getColumnIndex( - COLUMN_CHECK_INTERVAL - ) - ), - lastCheck = cursor.getLong( - cursor.getColumnIndex( - COLUMN_LAST_CHECK - ) - ), - reason = cursor.getString( - cursor.getColumnIndex( - COLUMN_REASON - ) - ), - validationMode = cursor.getInt( - cursor.getColumnIndex( - COLUMN_VALIDATION_MODE - ) - ).toValidationMode(), - validationContent = cursor.getString( - cursor.getColumnIndex( - COLUMN_VALIDATION_CONTENT - ) - ), - disabled = cursor.getInt( - cursor.getColumnIndex( - COLUMN_DISABLED - ) - ) == 1, - networkTimeout = cursor.getInt( - cursor.getColumnIndex( - COLUMN_NETWORK_TIMEOUT - ) - ) - ) - } - } - - fun toContentValues() = ContentValues().apply { - put(COLUMN_NAME, name) - put(COLUMN_URL, url) - put(COLUMN_STATUS, status.value) - put(COLUMN_CHECK_INTERVAL, checkInterval) - put(COLUMN_LAST_CHECK, lastCheck) - put(COLUMN_REASON, reason) - put(COLUMN_VALIDATION_MODE, validationMode.value) - put(COLUMN_VALIDATION_CONTENT, validationContent) - put(COLUMN_DISABLED, disabled) - put(COLUMN_NETWORK_TIMEOUT, networkTimeout) - } -} diff --git a/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelDbHelper.kt b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelDbHelper.kt deleted file mode 100644 index f0bdb2f..0000000 --- a/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelDbHelper.kt +++ /dev/null @@ -1,78 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -@file:Suppress("DEPRECATION") - -package com.afollestad.nocknock.data.legacy - -import android.content.Context -import android.database.sqlite.SQLiteDatabase -import android.database.sqlite.SQLiteOpenHelper - -private const val SQL_CREATE_ENTRIES = - "CREATE TABLE ${ServerModel.TABLE_NAME} (" + - "${ServerModel.COLUMN_ID} INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL," + - "${ServerModel.COLUMN_NAME} TEXT," + - "${ServerModel.COLUMN_URL} TEXT," + - "${ServerModel.COLUMN_STATUS} INTEGER," + - "${ServerModel.COLUMN_CHECK_INTERVAL} INTEGER," + - "${ServerModel.COLUMN_LAST_CHECK} INTEGER," + - "${ServerModel.COLUMN_REASON} TEXT," + - "${ServerModel.COLUMN_VALIDATION_MODE} INTEGER," + - "${ServerModel.COLUMN_VALIDATION_CONTENT} TEXT," + - "${ServerModel.COLUMN_DISABLED} INTEGER," + - "${ServerModel.COLUMN_NETWORK_TIMEOUT} INTEGER" + - ")" - -private const val SQL_DELETE_ENTRIES = "DROP TABLE IF EXISTS ${ServerModel.TABLE_NAME}" - -/** @author Aidan Follestad (@afollestad) */ -@Deprecated("Use AppDatabase.") -internal class ServerModelDbHelper(context: Context) : SQLiteOpenHelper( - context, DATABASE_NAME, null, - DATABASE_VERSION -) { - companion object { - const val DATABASE_VERSION = 3 - const val DATABASE_NAME = "ServerModels.db" - } - - override fun onCreate(db: SQLiteDatabase) { - db.execSQL(SQL_CREATE_ENTRIES) - } - - override fun onUpgrade( - db: SQLiteDatabase, - oldVersion: Int, - newVersion: Int - ) { - if (oldVersion < 3) { - db.execSQL( - "ALTER TABLE ${ServerModel.TABLE_NAME} " + - "ADD COLUMN ${ServerModel.COLUMN_NETWORK_TIMEOUT} INTEGER DEFAULT 10000" - ) - } - } - - override fun onDowngrade( - db: SQLiteDatabase, - oldVersion: Int, - newVersion: Int - ) = onUpgrade(db, oldVersion, newVersion) - - fun wipe() { - this.writableDatabase.execSQL(SQL_DELETE_ENTRIES) - } -} diff --git a/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelStore.kt b/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelStore.kt deleted file mode 100644 index 2d0a0cb..0000000 --- a/data/src/main/java/com/afollestad/nocknock/data/legacy/ServerModelStore.kt +++ /dev/null @@ -1,163 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -@file:Suppress("DEPRECATION") - -package com.afollestad.nocknock.data.legacy - -import android.app.Application -import android.content.ContentValues -import android.database.Cursor -import com.afollestad.nocknock.data.legacy.ServerModel.Companion.COLUMN_ID -import com.afollestad.nocknock.data.legacy.ServerModel.Companion.DEFAULT_SORT_ORDER -import com.afollestad.nocknock.data.legacy.ServerModel.Companion.TABLE_NAME - -/** @author Aidan Follestad (@afollestad) */ -@Deprecated("Deprecated in favor of AppDatabase.") -internal class ServerModelStore(app: Application) { - - private val dbHelper = ServerModelDbHelper(app) - - fun get(id: Int? = null): List { - if (id == null) { - return getAll() - } - - val reader = dbHelper.readableDatabase - val selection = "$COLUMN_ID = ?" - val selectionArgs = arrayOf("$id") - val cursor = reader.query( - TABLE_NAME, - null, - selection, - selectionArgs, - null, - null, - DEFAULT_SORT_ORDER, - "1" - ) - cursor.use { - val results = readModels(it) - check(results.size == 1) { "Should only get one model per ID." } - return results - } - } - - private fun getAll(): List { - val reader = dbHelper.readableDatabase - val cursor = reader.query( - TABLE_NAME, - null, - null, - null, - null, - null, - DEFAULT_SORT_ORDER, - null - ) - cursor.use { return readModels(it) } - } - - fun put(model: ServerModel): ServerModel { - check(model.id == 0) { "Cannot put a model that already has an ID." } - - val writer = dbHelper.writableDatabase - val newId = writer.insert(TABLE_NAME, null, model.toContentValues()) - - return model.copy(id = newId.toInt()) - } - - fun update(model: ServerModel): Int { - check(model.id != 0) { "Cannot update a model that does not have an ID." } - - val oldModel = get(model.id).single() - val oldValues = oldModel.toContentValues() - - val writer = dbHelper.writableDatabase - val newValues = model.toContentValues() - val valuesDiff = oldValues.diffFrom(newValues) - - if (valuesDiff.size() == 0) { - return 0 - } - - val selection = "$COLUMN_ID = ?" - val selectionArgs = arrayOf("${model.id}") - - return writer.update(TABLE_NAME, valuesDiff, selection, selectionArgs) - } - - fun delete(model: ServerModel) = delete(model.id) - - fun delete(id: Int): Int { - check(id != 0) { "Cannot delete a model that doesn't have an ID." } - - val selection = "$COLUMN_ID = ?" - val selectionArgs = arrayOf("$id") - - return dbHelper.writableDatabase.delete(TABLE_NAME, selection, selectionArgs) - } - - fun wipe() = dbHelper.wipe() - - private fun readModels(cursor: Cursor): List { - val results = mutableListOf() - while (cursor.moveToNext()) { - results.add(ServerModel.pull(cursor)) - } - return results - } - - /** - * Returns a [ContentValues] instance which contains only values that have changed between - * the receiver (original) and parameter (new) instances. - */ - private fun ContentValues.diffFrom(contentValues: ContentValues): ContentValues { - val diff = ContentValues() - for ((name, oldValue) in this.valueSet()) { - val newValue = contentValues.get(name) - if (newValue != oldValue) { - diff.putAny(name, newValue) - } - } - return diff - } - - /** - * Auto casts an [Any] value and uses the appropriate `put` method to store it - * in the [ContentValues] instance. - */ - private fun ContentValues.putAny( - name: String, - value: Any? - ) { - if (value == null) { - putNull(name) - return - } - when (value) { - is String -> put(name, value) - is Byte -> put(name, value) - is Short -> put(name, value) - is Int -> put(name, value) - is Long -> put(name, value) - is Float -> put(name, value) - is Double -> put(name, value) - is Boolean -> put(name, value) - is ByteArray -> put(name, value) - else -> throw IllegalArgumentException("ContentValues can't hold $value") - } - } -} diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt b/data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt index 7a461b0..31ddb04 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt @@ -29,6 +29,12 @@ enum class ValidationMode(val value: Int) { /** The site is running normally if a block of given JavaScript executes successfully. */ JAVASCRIPT(3); + fun toIndex() = when (this) { + STATUS_CODE -> 0 + TERM_SEARCH -> 1 + JAVASCRIPT -> 2 + } + companion object { fun fromValue(value: Int) = when (value) { @@ -46,9 +52,3 @@ enum class ValidationMode(val value: Int) { } } } - -fun Int.toValidationMode() = - ValidationMode.fromValue(this) - -fun Int.indexToValidationMode() = - ValidationMode.fromIndex(this) diff --git a/dependencies.gradle b/dependencies.gradle index 66a58f3..f1d2a5c 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -18,6 +18,7 @@ ext.versions = [ androidx : '1.0.0', room : '2.0.0', + lifecycle : '2.0.0', rxBinding : '3.0.0-alpha1', diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java index 3df7106..bc7599e 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java +++ b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java @@ -15,8 +15,8 @@ */ package com.afollestad.nocknock.engine; -import com.afollestad.nocknock.engine.statuscheck.RealValidationManager; -import com.afollestad.nocknock.engine.statuscheck.ValidationManager; +import com.afollestad.nocknock.engine.validation.RealValidationManager; +import com.afollestad.nocknock.engine.validation.ValidationManager; import dagger.Binds; import dagger.Module; import javax.inject.Singleton; @@ -27,5 +27,5 @@ public abstract class EngineModule { @Binds @Singleton - abstract ValidationManager provideCheckStatusManager(RealValidationManager checkStatusManager); + abstract ValidationManager provideValidationManager(RealValidationManager checkStatusManager); } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt similarity index 97% rename from engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt index 298d975..efdef8e 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/BootReceiver.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.engine.statuscheck +package com.afollestad.nocknock.engine.validation import android.content.BroadcastReceiver import android.content.Context diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationJob.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt similarity index 99% rename from engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationJob.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt index 307db18..69e6c54 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationJob.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.engine.statuscheck +package com.afollestad.nocknock.engine.validation import android.app.job.JobParameters import android.app.job.JobService diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt similarity index 97% rename from engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationManager.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt index 8fcb288..b7f129f 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/statuscheck/ValidationManager.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.engine.statuscheck +package com.afollestad.nocknock.engine.validation import android.app.job.JobScheduler import android.app.job.JobScheduler.RESULT_SUCCESS @@ -23,7 +23,7 @@ import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.data.model.Status.ERROR import com.afollestad.nocknock.data.model.Status.OK import com.afollestad.nocknock.engine.R -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_SITE_ID +import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.KEY_SITE_ID import com.afollestad.nocknock.utilities.providers.BundleProvider import com.afollestad.nocknock.utilities.providers.JobInfoProvider import com.afollestad.nocknock.utilities.providers.StringProvider diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt index 071e407..db859f4 100644 --- a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt +++ b/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt @@ -22,8 +22,8 @@ import com.afollestad.nocknock.data.model.Status.ERROR import com.afollestad.nocknock.data.model.Status.OK import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE import com.afollestad.nocknock.data.legacy.ServerModelStore -import com.afollestad.nocknock.engine.statuscheck.ValidationJob.Companion.KEY_SITE_ID -import com.afollestad.nocknock.engine.statuscheck.RealValidationManager +import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.KEY_SITE_ID +import com.afollestad.nocknock.engine.validation.RealValidationManager import com.afollestad.nocknock.utilities.providers.StringProvider import com.google.common.truth.Truth.assertThat import com.nhaarman.mockitokotlin2.any diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ActivityExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt similarity index 56% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ActivityExt.kt rename to utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt index 9238e6c..aa46101 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ActivityExt.kt +++ b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt @@ -15,23 +15,26 @@ */ package com.afollestad.nocknock.utilities.ext -import android.app.Activity -import android.content.BroadcastReceiver -import android.content.IntentFilter +import android.text.Editable +import android.text.TextWatcher +import android.widget.EditText -fun Activity.safeRegisterReceiver( - broadcastReceiver: BroadcastReceiver, - filter: IntentFilter -) { - try { - registerReceiver(broadcastReceiver, filter) - } catch (_: Exception) { - } -} +fun EditText.onTextChanged(cb: (String) -> Unit) { + addTextChangedListener(object : TextWatcher { + override fun afterTextChanged(s: Editable?) = Unit -fun Activity.safeUnregisterReceiver(broadcastReceiver: BroadcastReceiver) { - try { - unregisterReceiver(broadcastReceiver) - } catch (_: Exception) { - } + override fun beforeTextChanged( + s: CharSequence, + start: Int, + count: Int, + after: Int + ) = Unit + + override fun onTextChanged( + s: CharSequence, + start: Int, + before: Int, + count: Int + ) = cb(s.toString().trim()) + }) } diff --git a/viewcomponents/build.gradle b/viewcomponents/build.gradle index 3c1aa2e..51bd417 100644 --- a/viewcomponents/build.gradle +++ b/viewcomponents/build.gradle @@ -19,6 +19,7 @@ dependencies { implementation project(':data') implementation 'androidx.appcompat:appcompat:' + versions.androidx + api 'androidx.lifecycle:lifecycle-extensions:' + versions.lifecycle api 'com.squareup.okhttp3:okhttp:' + versions.okHttp diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/CheckIntervalLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/CheckIntervalLayout.kt deleted file mode 100644 index 2a7ccfe..0000000 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/CheckIntervalLayout.kt +++ /dev/null @@ -1,112 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.viewcomponents - -import android.content.Context -import android.util.AttributeSet -import android.widget.ArrayAdapter -import android.widget.LinearLayout -import androidx.annotation.CheckResult -import com.afollestad.nocknock.utilities.ext.DAY -import com.afollestad.nocknock.utilities.ext.HOUR -import com.afollestad.nocknock.utilities.ext.MINUTE -import com.afollestad.nocknock.utilities.ext.WEEK -import com.afollestad.nocknock.viewcomponents.R.array -import com.afollestad.nocknock.viewcomponents.ext.textAsLong -import kotlinx.android.synthetic.main.check_interval_layout.view.input -import kotlinx.android.synthetic.main.check_interval_layout.view.spinner -import kotlin.math.ceil - -/** @author Aidan Follestad (@afollestad) */ -class CheckIntervalLayout( - context: Context, - attrs: AttributeSet? = null -) : LinearLayout(context, attrs) { - - companion object { - private const val INDEX_MINUTE = 0 - private const val INDEX_HOUR = 1 - private const val INDEX_DAY = 2 - private const val INDEX_WEEK = 3 - } - - init { - orientation = VERTICAL - inflate(context, R.layout.check_interval_layout, this) - } - - override fun onFinishInflate() { - super.onFinishInflate() - val spinnerAdapter = ArrayAdapter( - context, - R.layout.list_item_spinner, - resources.getStringArray(array.interval_options) - ) - spinnerAdapter.setDropDownViewResource(R.layout.list_item_spinner_dropdown) - spinner.adapter = spinnerAdapter - } - - fun setError(error: String?) { - input.error = error - } - - fun set(interval: Long) { - when { - interval >= WEEK -> { - input.setText(calculateDisplayValue(interval, WEEK)) - spinner.setSelection(3) - } - interval >= DAY -> { - input.setText(calculateDisplayValue(interval, DAY)) - spinner.setSelection(2) - } - interval >= HOUR -> { - input.setText(calculateDisplayValue(interval, HOUR)) - spinner.setSelection(1) - } - interval >= MINUTE -> { - input.setText(calculateDisplayValue(interval, MINUTE)) - spinner.setSelection(0) - } - else -> { - input.setText("0") - spinner.setSelection(0) - } - } - } - - @CheckResult fun getSelectedCheckInterval(): Long { - val intervalInput = input.textAsLong() - val spinnerPos = spinner.selectedItemPosition - return when (spinnerPos) { - INDEX_MINUTE -> intervalInput * MINUTE - INDEX_HOUR -> intervalInput * HOUR - INDEX_DAY -> intervalInput * DAY - INDEX_WEEK -> intervalInput * WEEK - else -> throw IllegalStateException("Unexpected index: $spinnerPos") - } - } - - private fun calculateDisplayValue( - interval: Long, - by: Long - ): String { - val intervalFloat = interval.toFloat() - val byFloat = by.toFloat() - return ceil(intervalFloat / byFloat).toInt() - .toString() - } -} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/JavaScriptInputLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/JavaScriptInputLayout.kt deleted file mode 100644 index 2636008..0000000 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/JavaScriptInputLayout.kt +++ /dev/null @@ -1,66 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.viewcomponents - -import android.content.Context -import android.util.AttributeSet -import android.widget.HorizontalScrollView -import androidx.annotation.CheckResult -import com.afollestad.nocknock.viewcomponents.ext.dimenFloat -import com.afollestad.nocknock.viewcomponents.ext.dimenInt -import com.afollestad.nocknock.viewcomponents.ext.showOrHide -import com.afollestad.nocknock.viewcomponents.ext.trimmedText -import kotlinx.android.synthetic.main.javascript_input_layout.view.error_text -import kotlinx.android.synthetic.main.javascript_input_layout.view.userInput - -/** @author Aidan Follestad (@afollestad) */ -class JavaScriptInputLayout( - context: Context, - attrs: AttributeSet? = null -) : HorizontalScrollView(context, attrs) { - - init { - val contentInset = dimenInt(R.dimen.content_inset) - val contentInsetHalf = dimenInt(R.dimen.content_inset_half) - setPadding( - contentInsetHalf, // left - contentInset, // top - contentInsetHalf, // right - contentInset // bottom - ) - elevation = dimenFloat(R.dimen.default_elevation) - inflate(context, R.layout.javascript_input_layout, this) - } - - fun setError(error: String?) { - error_text.showOrHide(error != null) - error_text.text = error - } - - fun setCode(code: String?) { - if (code.isNullOrEmpty()) { - setDefaultCode() - return - } - userInput.setText(code.trim()) - } - - @CheckResult fun getCode() = userInput.trimmedText() - - fun clear() = userInput.setText("") - - private fun setDefaultCode() = userInput.setText(R.string.default_js) -} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt index 5596d4c..a91b11c 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt @@ -20,6 +20,9 @@ import android.os.Handler import android.util.AttributeSet import android.widget.FrameLayout import androidx.core.content.ContextCompat +import androidx.lifecycle.LifecycleOwner +import androidx.lifecycle.LiveData +import androidx.lifecycle.Observer import com.afollestad.nocknock.viewcomponents.ext.hide import com.afollestad.nocknock.viewcomponents.ext.show @@ -43,12 +46,19 @@ class LoadingIndicatorFrame( isFocusable = true } - fun setLoading() { - delayHandler.postDelayed(showRunnable, SHOW_DELAY_MS) + fun setIsLoading(isLoading: Boolean) { + delayHandler.removeCallbacks(showRunnable) + if (isLoading) { + delayHandler.postDelayed(showRunnable, SHOW_DELAY_MS) + } else { + hide() + } } - fun setDone() { - delayHandler.removeCallbacks(showRunnable) - hide() - } + fun observe( + owner: LifecycleOwner, + data: LiveData + ) = data.observe(owner, Observer { + setIsLoading(it) + }) } diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt new file mode 100644 index 0000000..6b3c4c1 --- /dev/null +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt @@ -0,0 +1,20 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.viewcomponents.ext + +fun Int?.isNullOrLessThan(than: Int): Boolean { + return this == null || this < than +} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/LiveDataExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/LiveDataExt.kt new file mode 100644 index 0000000..7b73308 --- /dev/null +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/LiveDataExt.kt @@ -0,0 +1,148 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.viewcomponents.ext + +import android.view.View +import android.widget.EditText +import android.widget.Spinner +import android.widget.TextView +import androidx.lifecycle.LifecycleOwner +import androidx.lifecycle.LiveData +import androidx.lifecycle.MediatorLiveData +import androidx.lifecycle.MutableLiveData +import androidx.lifecycle.Observer +import androidx.lifecycle.Transformations +import com.afollestad.nocknock.utilities.ext.onTextChanged + +fun LiveData.map(mapper: (X) -> Y) = + Transformations.map(this, mapper)!! + +fun LiveData.switchMap(mapper: (X) -> LiveData) = + Transformations.switchMap(this, mapper)!! + +inline fun EditText.attachLiveData( + lifecycleOwner: LifecycleOwner, + data: MutableLiveData +) { + // Out + when { + T::class == Int::class -> { + onTextChanged { data.postValue(it.trim().toInt() as T) } + } + T::class == Long::class -> { + onTextChanged { data.postValue(it.trim().toLong() as T) } + } + T::class == String::class -> { + onTextChanged { data.postValue(it.trim() as T) } + } + else -> { + throw IllegalArgumentException("Can't send EditText text changes into ${T::class}") + } + } + // In + data.observe(lifecycleOwner, Observer { + when { + T::class == Int::class -> setText(it as Int) + T::class == String::class -> setText(it as String) + } + }) +} + +fun Spinner.attachLiveData( + lifecycleOwner: LifecycleOwner, + data: MutableLiveData, + outTransformer: (Int) -> T, + inTransformer: (T) -> Int +) { + // Out + onItemSelected { data.postValue(outTransformer(it)) } + // In + data.observe(lifecycleOwner, Observer { + setSelection(inTransformer(it)) + }) +} + +fun LiveData.toViewError( + owner: LifecycleOwner, + view: EditText +) = observe(owner, Observer { error -> + view.error = if (error != null) { + view.resources.getString(error) + } else { + null + } +}) + +inline fun LiveData.toViewText( + owner: LifecycleOwner, + view: TextView +) = observe(owner, Observer { + when { + T::class == Int::class -> view.setText(it as Int) + T::class == String::class -> view.text = it as String + else -> throw IllegalStateException("Cannot set ${T::class} as view text.") + } +}) + +fun LiveData.toViewVisibility( + owner: LifecycleOwner, + view: View +) = observe(owner, Observer { view.showOrHide(it) }) + +/** @author Aidan Follestad (@afollestad) */ +class ZipLiveData( + source1: LiveData, + source2: LiveData +) : MediatorLiveData>() { + + private var data1: T? = null + private var data2: K? = null + + init { + super.addSource(source1) { + data1 = it + maybeNotify() + } + super.addSource(source2) { + data2 = it + maybeNotify() + } + } + + private fun maybeNotify() { + if (data1 != null && data2 != null) { + value = Pair(data1!!, data2!!) + } + } + + override fun addSource( + source: LiveData, + onChanged: Observer + ) { + throw UnsupportedOperationException() + } + + override fun removeSource(toRemote: LiveData) { + throw UnsupportedOperationException() + } +} + +fun zip( + source1: LiveData, + source2: LiveData +): MediatorLiveData> { + return ZipLiveData(source1, source2) +} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt deleted file mode 100644 index 2d5576e..0000000 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/TextViewExt.kt +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.viewcomponents.ext - -import android.widget.TextView - -fun TextView.trimmedText() = text.toString().trim() - -fun TextView.textAsInt(defaultValue: Int = 0): Int { - val text = trimmedText() - return if (text.isEmpty()) defaultValue else text.toInt() -} - -fun TextView.textAsLong(defaultValue: Long = 0L): Long { - val text = trimmedText() - return if (text.isEmpty()) defaultValue else text.toLong() -} - -///** @author https://stackoverflow.com/a/53296137/309644 */ -//fun EditText.addFilter(filter: InputFilter) { -// filters = -// if (filters.isNullOrEmpty()) { -// arrayOf(filter) -// } else { -// filters -// .toMutableList() -// .apply { -// removeAll { it.javaClass == filter.javaClass } -// add(filter) -// } -// .toTypedArray() -// } -//} -// -//fun EditText.removeFilters(type: Class) { -// filters = -// if (filters.isNullOrEmpty()) { -// filters -// } else { -// filters -// .toMutableList() -// .apply { -// removeAll { it.javaClass == type } -// } -// .toTypedArray() -// } -//} -// -//fun EditText.setMaxLength(maxLength: Int) { -// if (maxLength <= 0) { -// removeFilters(LengthFilter::class.java) -// } else { -// if (text.length > maxLength) { -// setText(text.subSequence(0, maxLength)) -// setSelection(text.length) -// } -// addFilter(LengthFilter(maxLength)) -// } -//} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/CheckIntervalLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/CheckIntervalLayout.kt new file mode 100644 index 0000000..819f45d --- /dev/null +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/CheckIntervalLayout.kt @@ -0,0 +1,133 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.viewcomponents.interval + +import android.content.Context +import android.util.AttributeSet +import android.widget.ArrayAdapter +import android.widget.LinearLayout +import androidx.lifecycle.Lifecycle.State.DESTROYED +import androidx.lifecycle.Lifecycle.State.RESUMED +import androidx.lifecycle.Lifecycle.State.STARTED +import androidx.lifecycle.LifecycleOwner +import androidx.lifecycle.LifecycleRegistry +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData +import androidx.lifecycle.Observer +import com.afollestad.nocknock.utilities.ext.DAY +import com.afollestad.nocknock.utilities.ext.HOUR +import com.afollestad.nocknock.utilities.ext.MINUTE +import com.afollestad.nocknock.utilities.ext.WEEK +import com.afollestad.nocknock.utilities.ext.onTextChanged +import com.afollestad.nocknock.viewcomponents.R.array +import com.afollestad.nocknock.viewcomponents.R.layout +import com.afollestad.nocknock.viewcomponents.ext.onItemSelected +import kotlinx.android.synthetic.main.check_interval_layout.view.input +import kotlinx.android.synthetic.main.check_interval_layout.view.spinner + +/** @author Aidan Follestad (@afollestad) */ +class CheckIntervalLayout( + context: Context, + attrs: AttributeSet? = null +) : LinearLayout(context, attrs), LifecycleOwner { + + companion object { + const val INDEX_MINUTE = 0 + const val INDEX_HOUR = 1 + const val INDEX_DAY = 2 + const val INDEX_WEEK = 3 + } + + init { + orientation = VERTICAL + inflate(context, layout.check_interval_layout, this) + } + + private lateinit var valueData: MutableLiveData + private lateinit var multiplierData: MutableLiveData + + private val lifecycle = LifecycleRegistry(this) + + override fun onFinishInflate() { + super.onFinishInflate() + val spinnerAdapter = ArrayAdapter( + context, + layout.list_item_spinner, + resources.getStringArray(array.interval_options) + ) + spinnerAdapter.setDropDownViewResource( + layout.list_item_spinner_dropdown + ) + spinner.adapter = spinnerAdapter + lifecycle.markState(STARTED) + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + lifecycle.markState(RESUMED) + } + + override fun onDetachedFromWindow() { + lifecycle.markState(DESTROYED) + super.onDetachedFromWindow() + } + + fun setError(error: String?) { + input.error = error + } + + fun attach( + valueData: MutableLiveData, + multiplierData: MutableLiveData, + errorData: LiveData + ) { + this.valueData = valueData + this.multiplierData = multiplierData + + this.valueData.observe(this, Observer { + input.setText("$it") + }) + this.multiplierData.observe(this, Observer { multiplier -> + val targetPos = when (multiplier) { + MINUTE -> 0 + HOUR -> 1 + DAY -> 2 + WEEK -> 3 + else -> throw IllegalStateException("Unknown multiplier: $multiplier") + } + if (spinner.selectedItemPosition != targetPos) { + spinner.setSelection(targetPos) + } + }) + + errorData.observe(this, Observer { + setError(if (it != null) resources.getString(it) else null) + }) + + input.onTextChanged { this.valueData.value = it.toInt() } + spinner.onItemSelected { + this.multiplierData.value = when (it) { + INDEX_MINUTE -> MINUTE + INDEX_HOUR -> HOUR + INDEX_DAY -> DAY + INDEX_WEEK -> WEEK + else -> throw IllegalStateException("Unknown multiplier index: $it") + } + } + } + + override fun getLifecycle() = lifecycle +} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt new file mode 100644 index 0000000..3c91995 --- /dev/null +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt @@ -0,0 +1,111 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.viewcomponents.js + +import android.content.Context +import android.util.AttributeSet +import android.widget.HorizontalScrollView +import androidx.lifecycle.Lifecycle.State.CREATED +import androidx.lifecycle.Lifecycle.State.DESTROYED +import androidx.lifecycle.Lifecycle.State.RESUMED +import androidx.lifecycle.LifecycleOwner +import androidx.lifecycle.LifecycleRegistry +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData +import androidx.lifecycle.Observer +import com.afollestad.nocknock.utilities.ext.onTextChanged +import com.afollestad.nocknock.viewcomponents.R.dimen +import com.afollestad.nocknock.viewcomponents.R.layout +import com.afollestad.nocknock.viewcomponents.R.string +import com.afollestad.nocknock.viewcomponents.ext.dimenFloat +import com.afollestad.nocknock.viewcomponents.ext.dimenInt +import com.afollestad.nocknock.viewcomponents.ext.showOrHide +import com.afollestad.nocknock.viewcomponents.ext.toViewVisibility +import kotlinx.android.synthetic.main.javascript_input_layout.view.error_text +import kotlinx.android.synthetic.main.javascript_input_layout.view.userInput + +/** @author Aidan Follestad (@afollestad) */ +class JavaScriptInputLayout( + context: Context, + attrs: AttributeSet? = null +) : HorizontalScrollView(context, attrs), LifecycleOwner { + + private val lifecycle = LifecycleRegistry(this) + private lateinit var codeData: MutableLiveData + + init { + val contentInset = dimenInt(dimen.content_inset) + val contentInsetHalf = dimenInt( + dimen.content_inset_half + ) + setPadding( + contentInsetHalf, // left + contentInset, // top + contentInsetHalf, // right + contentInset // bottom + ) + elevation = dimenFloat(dimen.default_elevation) + inflate(context, layout.javascript_input_layout, this) + } + + override fun onFinishInflate() { + super.onFinishInflate() + lifecycle.markState(CREATED) + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + lifecycle.markState(RESUMED) + } + + override fun onDetachedFromWindow() { + lifecycle.markState(DESTROYED) + super.onDetachedFromWindow() + } + + fun setError(error: String?) { + error_text.showOrHide(error != null) + error_text.text = error + } + + fun attach( + codeData: MutableLiveData, + errorData: LiveData, + visibility: LiveData + ) { + this.codeData = codeData + this.codeData.observe(this, Observer { + if (it.isNullOrEmpty()) { + setDefaultCode() + } else { + userInput.setText(it) + } + }) + errorData.observe(this, Observer { + setError(if (it != null) resources.getString(it) else null) + }) + visibility.toViewVisibility(this, this) + userInput.onTextChanged { this.codeData.value = it } + } + + fun clear() = userInput.setText("") + + private fun setDefaultCode() = userInput.setText( + string.default_js + ) + + override fun getLifecycle() = lifecycle +} From 1e926449046714ec2324e1e15b1b648d70884e6d Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Thu, 6 Dec 2018 17:56:51 -0800 Subject: [PATCH 013/114] Switch from Dagger to Koin, resolves #35 --- .idea/modules.xml | 2 +- app/build.gradle | 12 ++- .../com/afollestad/nocknock/NockNockApp.kt | 62 ++++-------- .../afollestad/nocknock/di/AppComponent.java | 77 --------------- .../afollestad/nocknock/di/MainModule.java | 73 -------------- .../nocknock/di/qualifiers/IoDispatcher.kt | 24 ----- .../nocknock/di/qualifiers/MainDispatcher.kt | 24 ----- .../di/viewmodels/ViewModelFactory.kt | 48 --------- .../di/viewmodels/ViewModelModule.java | 33 ------- .../afollestad/nocknock/koin/MainModule.kt | 63 ++++++++++++ .../nocknock/koin/ViewModelModule.kt | 60 +++++++++++ .../{di/viewmodels => ui}/ScopedViewModel.kt | 11 +-- .../nocknock/ui/addsite/AddSiteActivity.kt | 15 +-- .../nocknock/ui/addsite/AddSiteViewModel.kt | 11 +-- .../nocknock/ui/main/MainActivity.kt | 17 +--- .../nocknock/ui/main/MainViewModel.kt | 11 +-- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 15 +-- .../nocknock/ui/viewsite/ViewSiteViewModel.kt | 21 ++-- .../afollestad/nocknock/LiveDataTestUtil.kt | 21 +++- .../StatusUpdateIntentReceiverTest.kt | 17 +++- ...esenterTest.kt => AddSiteViewModelTest.kt} | 2 +- .../nocknock/ui/main/MainViewModelTest.kt | 15 ++- ...senterTest.kt => ViewSiteViewModelTest.kt} | 4 +- {utilities => common}/.gitignore | 0 {utilities => common}/build.gradle | 4 +- .../src/main/AndroidManifest.xml | 0 .../nocknock/utilities/UtilitiesModule.kt | 99 +++++++++---------- .../nocknock/utilities/ext/AnimationExt.kt | 0 .../nocknock/utilities/ext/ContextExt.kt | 0 .../nocknock/utilities/ext/DateExt.kt | 0 .../nocknock/utilities/ext/TimeExt.kt | 0 .../nocknock/utilities/ext/UriExt.kt | 0 .../nocknock/utilities/ext/ViewExt.kt | 0 .../nocknock/utilities/js/JavaScript.kt | 0 .../utilities/providers/BitmapProvider.kt | 9 +- .../utilities/providers/BundleProvider.kt | 3 +- .../utilities/providers/IntentProvider.kt | 14 ++- .../utilities/providers/JobInfoProvider.kt | 9 +- .../providers/NotificationChannelProvider.kt | 3 +- .../providers/NotificationProvider.kt | 9 +- .../utilities/providers/SdkProvider.kt | 3 +- .../utilities/providers/StringProvider.kt | 9 +- .../utilities/ui/DebouncedOnClickListener.kt | 0 .../src/main/res/values/strings.xml | 0 data/build.gradle | 5 +- dependencies.gradle | 4 +- engine/build.gradle | 8 +- .../{EngineModule.java => EngineModule.kt} | 23 +++-- .../engine/validation/BootReceiver.kt | 23 ++--- .../engine/validation/ValidationJob.kt | 16 ++- .../engine/validation/ValidationManager.kt | 3 +- notifications/build.gradle | 6 +- .../notifications/NockNotificationManager.kt | 6 +- .../notifications/NotificationsModule.java | 30 ------ .../notifications/NotificationsModule.kt | 26 ++++- settings.gradle | 2 +- .../nocknock/utilities/ext/InjectorExt.kt | 24 ----- .../utilities/qualifiers/AppIconRes.kt | 24 ----- .../utilities/qualifiers/MainActivityClass.kt | 24 ----- viewcomponents/build.gradle | 5 +- .../viewcomponents/LoadingIndicatorFrame.kt | 16 +-- 61 files changed, 385 insertions(+), 660 deletions(-) delete mode 100644 app/src/main/java/com/afollestad/nocknock/di/AppComponent.java delete mode 100644 app/src/main/java/com/afollestad/nocknock/di/MainModule.java delete mode 100644 app/src/main/java/com/afollestad/nocknock/di/qualifiers/IoDispatcher.kt delete mode 100644 app/src/main/java/com/afollestad/nocknock/di/qualifiers/MainDispatcher.kt delete mode 100644 app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelFactory.kt delete mode 100644 app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelModule.java create mode 100644 app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt create mode 100644 app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt rename app/src/main/java/com/afollestad/nocknock/{di/viewmodels => ui}/ScopedViewModel.kt (79%) rename app/src/test/java/com/afollestad/nocknock/ui/addsite/{AddSitePresenterTest.kt => AddSiteViewModelTest.kt} (99%) rename app/src/test/java/com/afollestad/nocknock/ui/viewsite/{ViewSitePresenterTest.kt => ViewSiteViewModelTest.kt} (88%) rename {utilities => common}/.gitignore (100%) rename {utilities => common}/build.gradle (90%) rename {utilities => common}/src/main/AndroidManifest.xml (100%) rename utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.java => common/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt (50%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt (100%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt (100%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt (100%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt (100%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt (100%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt (100%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt (100%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt (85%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt (93%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt (84%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt (90%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt (94%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt (89%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt (91%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt (84%) rename {utilities => common}/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt (100%) rename {utilities => common}/src/main/res/values/strings.xml (100%) rename engine/src/main/java/com/afollestad/nocknock/engine/{EngineModule.java => EngineModule.kt} (73%) delete mode 100644 notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.java rename utilities/src/main/java/com/afollestad/nocknock/utilities/Injector.kt => notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt (53%) delete mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/ext/InjectorExt.kt delete mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/AppIconRes.kt delete mode 100644 utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/MainActivityClass.kt diff --git a/.idea/modules.xml b/.idea/modules.xml index d5f1277..23f5d23 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -3,11 +3,11 @@ + - diff --git a/app/build.gradle b/app/build.gradle index 5c3703e..dbf9c87 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -18,7 +18,7 @@ android { } dependencies { - implementation project(':utilities') + implementation project(':common') implementation project(':engine') implementation project(':data') implementation project(':notifications') @@ -32,16 +32,22 @@ dependencies { implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:' + versions.kotlin - implementation 'com.google.dagger:dagger:' + versions.dagger - kapt 'com.google.dagger:dagger-compiler:' + versions.dagger + implementation 'org.koin:koin-android:' + versions.koin + implementation 'org.koin:koin-androidx-scope:' + versions.koin + implementation 'org.koin:koin-androidx-viewmodel:' + versions.koin implementation 'com.afollestad.material-dialogs:core:' + versions.materialDialogs implementation 'com.jakewharton.timber:timber:' + versions.timber + testImplementation 'junit:junit:' + versions.junit testImplementation 'org.mockito:mockito-core:' + versions.mockito testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:' + versions.mockitoKotlin testImplementation 'com.google.truth:truth:' + versions.truth + testImplementation 'androidx.arch.core:core-testing:' + versions.archTesting + + androidTestImplementation 'androidx.test:runner:' + versions.androidxTestRunner + androidTestImplementation 'androidx.test:rules:' + versions.androidxTestRunner } apply from: '../spotless.gradle' \ No newline at end of file diff --git a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt index 777d8a8..6e08bd5 100644 --- a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt +++ b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt @@ -16,55 +16,42 @@ package com.afollestad.nocknock import android.app.Application -import com.afollestad.nocknock.di.AppComponent -import com.afollestad.nocknock.di.DaggerAppComponent -import com.afollestad.nocknock.engine.validation.BootReceiver -import com.afollestad.nocknock.engine.validation.ValidationJob +import com.afollestad.nocknock.engine.engineModule +import com.afollestad.nocknock.koin.mainModule +import com.afollestad.nocknock.koin.viewModelModule import com.afollestad.nocknock.notifications.NockNotificationManager -import com.afollestad.nocknock.ui.addsite.AddSiteActivity -import com.afollestad.nocknock.ui.main.MainActivity -import com.afollestad.nocknock.ui.viewsite.ViewSiteActivity -import com.afollestad.nocknock.utilities.Injector -import com.afollestad.nocknock.utilities.ext.systemService -import okhttp3.OkHttpClient +import com.afollestad.nocknock.notifications.notificationsModule +import com.afollestad.nocknock.utilities.utilitiesModule +import org.koin.android.ext.android.inject +import org.koin.android.ext.android.startKoin import timber.log.Timber import timber.log.Timber.DebugTree -import javax.inject.Inject import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ -class NockNockApp : Application(), Injector { - - private lateinit var appComponent: AppComponent - @Inject lateinit var nockNotificationManager: NockNotificationManager +class NockNockApp : Application() { private var resumedActivities: Int = 0 override fun onCreate() { super.onCreate() - if (BuildConfig.DEBUG) { Timber.plant(DebugTree()) } - val okHttpClient = OkHttpClient.Builder() - .addNetworkInterceptor { chain -> - val request = chain.request() - .newBuilder() - .addHeader("User-Agent", "com.afollestad.nocknock") - .build() - chain.proceed(request) - } - .build() - - appComponent = DaggerAppComponent.builder() - .application(this) - .okHttpClient(okHttpClient) - .jobScheduler(systemService(JOB_SCHEDULER_SERVICE)) - .notificationManager(systemService(NOTIFICATION_SERVICE)) - .build() - appComponent.inject(this) + val modules = listOf( + mainModule, + engineModule, + utilitiesModule, + notificationsModule, + viewModelModule + ) + startKoin( + androidContext = this, + modules = modules + ) + val nockNotificationManager by inject() onActivityLifeChange { activity, resumed -> if (resumed) { resumedActivities++ @@ -77,13 +64,4 @@ class NockNockApp : Application(), Injector { nockNotificationManager.setIsAppOpen(resumedActivities > 0) } } - - override fun injectInto(target: Any) = when (target) { - is MainActivity -> appComponent.inject(target) - is ViewSiteActivity -> appComponent.inject(target) - is AddSiteActivity -> appComponent.inject(target) - is ValidationJob -> appComponent.inject(target) - is BootReceiver -> appComponent.inject(target) - else -> throw IllegalStateException("Can't inject into $target") - } } diff --git a/app/src/main/java/com/afollestad/nocknock/di/AppComponent.java b/app/src/main/java/com/afollestad/nocknock/di/AppComponent.java deleted file mode 100644 index f7a0cdb..0000000 --- a/app/src/main/java/com/afollestad/nocknock/di/AppComponent.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.di; - -import android.app.Application; -import android.app.NotificationManager; -import android.app.job.JobScheduler; -import com.afollestad.nocknock.NockNockApp; -import com.afollestad.nocknock.di.viewmodels.ViewModelModule; -import com.afollestad.nocknock.engine.EngineModule; -import com.afollestad.nocknock.engine.validation.BootReceiver; -import com.afollestad.nocknock.engine.validation.ValidationJob; -import com.afollestad.nocknock.notifications.NotificationsModule; -import com.afollestad.nocknock.ui.addsite.AddSiteActivity; -import com.afollestad.nocknock.ui.main.MainActivity; -import com.afollestad.nocknock.ui.viewsite.ViewSiteActivity; -import com.afollestad.nocknock.utilities.UtilitiesModule; -import dagger.BindsInstance; -import dagger.Component; -import javax.inject.Singleton; -import okhttp3.OkHttpClient; - -/** @author Aidan Follestad (@afollestad) */ -@Singleton -@Component( - modules = { - MainModule.class, - ViewModelModule.class, - EngineModule.class, - NotificationsModule.class, - UtilitiesModule.class - } -) -public interface AppComponent { - - void inject(NockNockApp app); - - void inject(MainActivity activity); - - void inject(ViewSiteActivity activity); - - void inject(AddSiteActivity activity); - - void inject(ValidationJob job); - - void inject(BootReceiver bootReceiver); - - @Component.Builder interface Builder { - - @BindsInstance - Builder application(Application application); - - @BindsInstance - Builder okHttpClient(OkHttpClient okHttpClient); - - @BindsInstance - Builder jobScheduler(JobScheduler jobScheduler); - - @BindsInstance - Builder notificationManager(NotificationManager notificationManager); - - AppComponent build(); - } -} diff --git a/app/src/main/java/com/afollestad/nocknock/di/MainModule.java b/app/src/main/java/com/afollestad/nocknock/di/MainModule.java deleted file mode 100644 index 03dcf7c..0000000 --- a/app/src/main/java/com/afollestad/nocknock/di/MainModule.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.di; - -import android.app.Application; -import com.afollestad.nocknock.R; -import com.afollestad.nocknock.data.AppDatabase; -import com.afollestad.nocknock.ui.main.MainActivity; -import com.afollestad.nocknock.utilities.qualifiers.AppIconRes; -import com.afollestad.nocknock.di.qualifiers.IoDispatcher; -import com.afollestad.nocknock.utilities.qualifiers.MainActivityClass; -import com.afollestad.nocknock.di.qualifiers.MainDispatcher; -import dagger.Module; -import dagger.Provides; -import javax.inject.Singleton; -import kotlinx.coroutines.CoroutineDispatcher; -import kotlinx.coroutines.Dispatchers; - -import static androidx.room.Room.databaseBuilder; - -/** @author Aidan Follestad (@afollestad) */ -@Module -abstract class MainModule { - @SuppressWarnings("FieldCanBeLocal") - private static String DATABASE_NAME = "NockNock.db"; - - @Provides - @Singleton - @AppIconRes - static int provideAppIconRes() { - return R.mipmap.ic_launcher; - } - - @Provides - @Singleton - @MainActivityClass - static Class provideMainActivityClass() { - return MainActivity.class; - } - - @Provides - @Singleton - static AppDatabase provideAppDatabase(Application app) { - return databaseBuilder(app, AppDatabase.class, DATABASE_NAME).build(); - } - - @Provides - @Singleton - @MainDispatcher - static CoroutineDispatcher provideMainDispatcher() { - return Dispatchers.getMain(); - } - - @Provides - @Singleton - @IoDispatcher - static CoroutineDispatcher provideIoDispatcher() { - return Dispatchers.getIO(); - } -} diff --git a/app/src/main/java/com/afollestad/nocknock/di/qualifiers/IoDispatcher.kt b/app/src/main/java/com/afollestad/nocknock/di/qualifiers/IoDispatcher.kt deleted file mode 100644 index 6ecc572..0000000 --- a/app/src/main/java/com/afollestad/nocknock/di/qualifiers/IoDispatcher.kt +++ /dev/null @@ -1,24 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.di.qualifiers - -import javax.inject.Qualifier -import kotlin.annotation.AnnotationRetention.RUNTIME - -/** @author Aidan Follestad (@afollestad) */ -@Qualifier -@Retention(RUNTIME) -annotation class IoDispatcher diff --git a/app/src/main/java/com/afollestad/nocknock/di/qualifiers/MainDispatcher.kt b/app/src/main/java/com/afollestad/nocknock/di/qualifiers/MainDispatcher.kt deleted file mode 100644 index de83ab5..0000000 --- a/app/src/main/java/com/afollestad/nocknock/di/qualifiers/MainDispatcher.kt +++ /dev/null @@ -1,24 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.di.qualifiers - -import javax.inject.Qualifier -import kotlin.annotation.AnnotationRetention.RUNTIME - -/** @author Aidan Follestad (@afollestad) */ -@Qualifier -@Retention(RUNTIME) -annotation class MainDispatcher diff --git a/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelFactory.kt b/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelFactory.kt deleted file mode 100644 index bd95ff9..0000000 --- a/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelFactory.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.di.viewmodels - -import androidx.lifecycle.ViewModel -import androidx.lifecycle.ViewModelProvider -import dagger.MapKey -import javax.inject.Inject -import javax.inject.Provider -import javax.inject.Singleton -import kotlin.annotation.AnnotationRetention.RUNTIME -import kotlin.annotation.AnnotationTarget.FUNCTION -import kotlin.annotation.AnnotationTarget.PROPERTY_GETTER -import kotlin.annotation.AnnotationTarget.PROPERTY_SETTER -import kotlin.reflect.KClass - -typealias ViewModelMap = MutableMap, Provider> - -@Target(FUNCTION, PROPERTY_GETTER, PROPERTY_SETTER) -@Retention(RUNTIME) -@MapKey -annotation class ViewModelKey(val value: KClass) - -/** - * https://proandroiddev.com/viewmodel-with-dagger2-architecture-components-2e06f06c9455 - */ -@Singleton -class ViewModelFactory @Inject constructor(private val viewModels: ViewModelMap) : - ViewModelProvider.Factory { - - override fun create(modelClass: Class): T { - @Suppress("UNCHECKED_CAST") - return viewModels[modelClass]?.get() as T - } -} diff --git a/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelModule.java b/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelModule.java deleted file mode 100644 index d659c78..0000000 --- a/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ViewModelModule.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.afollestad.nocknock.di.viewmodels; - -import androidx.lifecycle.ViewModel; -import androidx.lifecycle.ViewModelProvider; -import com.afollestad.nocknock.ui.addsite.AddSiteViewModel; -import com.afollestad.nocknock.ui.main.MainViewModel; -import com.afollestad.nocknock.ui.viewsite.ViewSiteViewModel; -import dagger.Binds; -import dagger.Module; -import dagger.multibindings.IntoMap; - -/** https://proandroiddev.com/viewmodel-with-dagger2-architecture-components-2e06f06c9455 */ -@Module -public abstract class ViewModelModule { - - @Binds - abstract ViewModelProvider.Factory bindViewModelFactory(ViewModelFactory factory); - - @Binds - @IntoMap - @ViewModelKey(MainViewModel.class) - abstract ViewModel mainViewModel(MainViewModel viewModel); - - @Binds - @IntoMap - @ViewModelKey(AddSiteViewModel.class) - abstract ViewModel addSiteViewModel(AddSiteViewModel viewModel); - - @Binds - @IntoMap - @ViewModelKey(ViewSiteViewModel.class) - abstract ViewModel viewSiteViewModel(ViewSiteViewModel viewModel); -} diff --git a/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt b/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt new file mode 100644 index 0000000..9667287 --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt @@ -0,0 +1,63 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.koin + +import android.app.Application +import android.app.NotificationManager +import android.app.job.JobScheduler +import android.content.Context.JOB_SCHEDULER_SERVICE +import android.content.Context.NOTIFICATION_SERVICE +import androidx.room.Room.databaseBuilder +import com.afollestad.nocknock.R +import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.notifications.Qualifiers.APP_ICON_RES +import com.afollestad.nocknock.ui.main.MainActivity +import com.afollestad.nocknock.utilities.Qualifiers.MAIN_ACTIVITY_CLASS +import com.afollestad.nocknock.utilities.ext.systemService +import okhttp3.OkHttpClient +import org.koin.dsl.module.module + +const val MAIN_MODULE = "main" + +/** @author Aidan Follestad (@afollestad) */ +val mainModule = module(MAIN_MODULE) { + + single(name = APP_ICON_RES) { R.mipmap.ic_launcher } + + single(name = MAIN_ACTIVITY_CLASS) { MainActivity::class.java } + + single { databaseBuilder(get(), AppDatabase::class.java, "NockNock.db").build() } + + single { + OkHttpClient.Builder() + .addNetworkInterceptor { chain -> + val request = chain.request() + .newBuilder() + .addHeader("User-Agent", "com.afollestad.nocknock") + .build() + chain.proceed(request) + } + .build() + } + + single { + get().systemService(JOB_SCHEDULER_SERVICE) + } + + single { + get().systemService(NOTIFICATION_SERVICE) + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt b/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt new file mode 100644 index 0000000..55c1f57 --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt @@ -0,0 +1,60 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.koin + +import com.afollestad.nocknock.ui.addsite.AddSiteViewModel +import com.afollestad.nocknock.ui.main.MainViewModel +import com.afollestad.nocknock.ui.viewsite.ViewSiteViewModel +import com.afollestad.nocknock.utilities.Qualifiers.IO_DISPATCHER +import com.afollestad.nocknock.utilities.Qualifiers.MAIN_DISPATCHER +import org.koin.androidx.viewmodel.ext.koin.viewModel +import org.koin.dsl.module.module + +const val VIEW_MODEL_MODULE = "view_models" + +/** @author Aidan Follestad (@afollestad) */ +val viewModelModule = module(VIEW_MODEL_MODULE) { + + viewModel { + MainViewModel( + get(), + get(), + get(), + get(name = MAIN_DISPATCHER), + get(name = IO_DISPATCHER) + ) + } + + viewModel { + AddSiteViewModel( + get(), + get(), + get(name = MAIN_DISPATCHER), + get(name = IO_DISPATCHER) + ) + } + + viewModel { + ViewSiteViewModel( + get(), + get(), + get(), + get(), + get(name = MAIN_DISPATCHER), + get(name = IO_DISPATCHER) + ) + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ScopedViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt similarity index 79% rename from app/src/main/java/com/afollestad/nocknock/di/viewmodels/ScopedViewModel.kt rename to app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt index 19b8fb6..750173a 100644 --- a/app/src/main/java/com/afollestad/nocknock/di/viewmodels/ScopedViewModel.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt @@ -13,21 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.di.viewmodels +package com.afollestad.nocknock.ui import androidx.lifecycle.ViewModel -import com.afollestad.nocknock.di.qualifiers.MainDispatcher import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Job import org.jetbrains.annotations.TestOnly -import javax.inject.Inject -abstract class ScopedViewModel : ViewModel() { - - @Inject - @MainDispatcher - lateinit var mainDispatcher: CoroutineDispatcher +/** @author Aidan Follestad (@afollestad) */ +abstract class ScopedViewModel(mainDispatcher: CoroutineDispatcher) : ViewModel() { private val job = Job() protected val scope = CoroutineScope(job + mainDispatcher) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt index 93cfc32..d0b9376 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt @@ -19,11 +19,8 @@ import android.annotation.SuppressLint import android.os.Bundle import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity -import androidx.lifecycle.ViewModelProvider -import androidx.lifecycle.ViewModelProviders import com.afollestad.nocknock.R import com.afollestad.nocknock.data.model.ValidationMode -import com.afollestad.nocknock.utilities.ext.injector import com.afollestad.nocknock.viewcomponents.ext.attachLiveData import com.afollestad.nocknock.viewcomponents.ext.conceal import com.afollestad.nocknock.viewcomponents.ext.onLayout @@ -43,7 +40,7 @@ import kotlinx.android.synthetic.main.activity_addsite.scriptInputLayout import kotlinx.android.synthetic.main.activity_addsite.textUrlWarning import kotlinx.android.synthetic.main.activity_addsite.toolbar import kotlinx.android.synthetic.main.activity_addsite.validationModeDescription -import javax.inject.Inject +import org.koin.androidx.viewmodel.ext.android.viewModel import kotlin.math.max import kotlin.properties.Delegates.notNull @@ -58,19 +55,13 @@ class AddSiteActivity : AppCompatActivity() { var revealCy by notNull() var revealRadius by notNull() - @Inject lateinit var viewModelFactory: ViewModelProvider.Factory - internal var isClosing = false - private val viewModel by lazy { - return@lazy ViewModelProviders.of(this, viewModelFactory) - .get(AddSiteViewModel::class.java) - } + + private val viewModel by viewModel() @SuppressLint("SetTextI18n") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - - injector().injectInto(this) setContentView(R.layout.activity_addsite) setupUi(savedInstanceState) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt index e959e8c..ebcc4ba 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt @@ -28,23 +28,22 @@ import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH import com.afollestad.nocknock.data.putSite -import com.afollestad.nocknock.di.viewmodels.ScopedViewModel import com.afollestad.nocknock.engine.validation.ValidationManager -import com.afollestad.nocknock.di.qualifiers.IoDispatcher +import com.afollestad.nocknock.ui.ScopedViewModel import com.afollestad.nocknock.viewcomponents.ext.isNullOrLessThan import com.afollestad.nocknock.viewcomponents.ext.map import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.launch import kotlinx.coroutines.withContext import okhttp3.HttpUrl -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ -class AddSiteViewModel @Inject constructor( +class AddSiteViewModel( private val database: AppDatabase, private val validationManager: ValidationManager, - @field:IoDispatcher private val ioDispatcher: CoroutineDispatcher -) : ScopedViewModel(), LifecycleObserver { + mainDispatcher: CoroutineDispatcher, + private val ioDispatcher: CoroutineDispatcher +) : ScopedViewModel(mainDispatcher), LifecycleObserver { // Public properties val name = MutableLiveData() diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt index 9be4e52..2fc867a 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt @@ -19,8 +19,6 @@ import android.content.Intent import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.Observer -import androidx.lifecycle.ViewModelProvider -import androidx.lifecycle.ViewModelProviders import androidx.recyclerview.widget.DividerItemDecoration import androidx.recyclerview.widget.DividerItemDecoration.VERTICAL import androidx.recyclerview.widget.LinearLayoutManager @@ -28,31 +26,27 @@ import com.afollestad.materialdialogs.MaterialDialog import com.afollestad.materialdialogs.list.listItems import com.afollestad.nocknock.R import com.afollestad.nocknock.adapter.ServerAdapter +import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.dialogs.AboutDialog import com.afollestad.nocknock.notifications.NockNotificationManager -import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver -import com.afollestad.nocknock.utilities.ext.injector import com.afollestad.nocknock.viewcomponents.ext.showOrHide import kotlinx.android.synthetic.main.activity_main.fab import kotlinx.android.synthetic.main.activity_main.list import kotlinx.android.synthetic.main.activity_main.loadingProgress import kotlinx.android.synthetic.main.activity_main.toolbar import kotlinx.android.synthetic.main.include_empty_view.emptyText -import javax.inject.Inject +import org.koin.android.ext.android.inject +import org.koin.androidx.viewmodel.ext.android.viewModel /** @author Aidan Follestad (@afollestad) */ class MainActivity : AppCompatActivity() { - @Inject lateinit var notificationManager: NockNotificationManager - @Inject lateinit var viewModelFactory: ViewModelProvider.Factory + private val notificationManager by inject() + internal val viewModel by viewModel() private lateinit var adapter: ServerAdapter - internal val viewModel by lazy { - return@lazy ViewModelProviders.of(this, viewModelFactory) - .get(MainViewModel::class.java) - } private val statusUpdateReceiver = StatusUpdateIntentReceiver(application) { viewModel.postSiteUpdate(it) @@ -60,7 +54,6 @@ class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - injector().injectInto(this) setContentView(R.layout.activity_main) setupUi() diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt index 1b287b6..cef3827 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt @@ -25,22 +25,21 @@ import com.afollestad.nocknock.data.AppDatabase import com.afollestad.nocknock.data.allSites import com.afollestad.nocknock.data.deleteSite import com.afollestad.nocknock.data.model.Site -import com.afollestad.nocknock.di.viewmodels.ScopedViewModel import com.afollestad.nocknock.engine.validation.ValidationManager import com.afollestad.nocknock.notifications.NockNotificationManager -import com.afollestad.nocknock.di.qualifiers.IoDispatcher +import com.afollestad.nocknock.ui.ScopedViewModel import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.launch import kotlinx.coroutines.withContext -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ -class MainViewModel @Inject constructor( +class MainViewModel( private val database: AppDatabase, private val notificationManager: NockNotificationManager, private val validationManager: ValidationManager, - @field:IoDispatcher private val ioDispatcher: CoroutineDispatcher -) : ScopedViewModel(), LifecycleObserver { + mainDispatcher: CoroutineDispatcher, + private val ioDispatcher: CoroutineDispatcher +) : ScopedViewModel(mainDispatcher), LifecycleObserver { private val sites = MutableLiveData>() private val isLoading = MutableLiveData() diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index 6904345..aace599 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -21,13 +21,10 @@ import android.os.Bundle import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.Observer -import androidx.lifecycle.ViewModelProvider -import androidx.lifecycle.ViewModelProviders import com.afollestad.nocknock.R +import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.data.model.ValidationMode -import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver -import com.afollestad.nocknock.utilities.ext.injector import com.afollestad.nocknock.viewcomponents.ext.attachLiveData import com.afollestad.nocknock.viewcomponents.ext.dimenFloat import com.afollestad.nocknock.viewcomponents.ext.onScroll @@ -51,17 +48,13 @@ import kotlinx.android.synthetic.main.activity_viewsite.textNextCheck import kotlinx.android.synthetic.main.activity_viewsite.textUrlWarning import kotlinx.android.synthetic.main.activity_viewsite.toolbar import kotlinx.android.synthetic.main.activity_viewsite.validationModeDescription -import javax.inject.Inject +import org.koin.androidx.viewmodel.ext.android.viewModel /** @author Aidan Follestad (@afollestad) */ class ViewSiteActivity : AppCompatActivity() { - @Inject lateinit var viewModelFactory: ViewModelProvider.Factory + internal val viewModel by viewModel() - internal val viewModel by lazy { - return@lazy ViewModelProviders.of(this, viewModelFactory) - .get(ViewSiteViewModel::class.java) - } private val statusUpdateReceiver = StatusUpdateIntentReceiver(application) { viewModel.setModel(it) @@ -70,8 +63,6 @@ class ViewSiteActivity : AppCompatActivity() { @SuppressLint("SetTextI18n") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - - injector().injectInto(this) setContentView(R.layout.activity_viewsite) setupUi() diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt index 4d7b914..76258c5 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt @@ -15,7 +15,6 @@ */ package com.afollestad.nocknock.ui.viewsite -import android.app.Application import androidx.annotation.CheckResult import androidx.lifecycle.LifecycleObserver import androidx.lifecycle.LiveData @@ -33,11 +32,11 @@ import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH import com.afollestad.nocknock.data.model.ValidationResult import com.afollestad.nocknock.data.model.textRes import com.afollestad.nocknock.data.updateSite -import com.afollestad.nocknock.di.viewmodels.ScopedViewModel import com.afollestad.nocknock.engine.validation.ValidationManager import com.afollestad.nocknock.notifications.NockNotificationManager +import com.afollestad.nocknock.ui.ScopedViewModel import com.afollestad.nocknock.utilities.ext.formatDate -import com.afollestad.nocknock.di.qualifiers.IoDispatcher +import com.afollestad.nocknock.utilities.providers.StringProvider import com.afollestad.nocknock.viewcomponents.ext.isNullOrLessThan import com.afollestad.nocknock.viewcomponents.ext.map import com.afollestad.nocknock.viewcomponents.ext.zip @@ -46,16 +45,16 @@ import kotlinx.coroutines.launch import kotlinx.coroutines.withContext import okhttp3.HttpUrl import java.lang.System.currentTimeMillis -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ -class ViewSiteViewModel @Inject constructor( - private val app: Application, +class ViewSiteViewModel( + private val stringProvider: StringProvider, private val database: AppDatabase, private val notificationManager: NockNotificationManager, private val validationManager: ValidationManager, - @field:IoDispatcher private val ioDispatcher: CoroutineDispatcher -) : ScopedViewModel(), LifecycleObserver { + mainDispatcher: CoroutineDispatcher, + private val ioDispatcher: CoroutineDispatcher +) : ScopedViewModel(mainDispatcher), LifecycleObserver { lateinit var site: Site @@ -134,13 +133,13 @@ class ViewSiteViewModel @Inject constructor( @CheckResult fun onLastCheckResultText(): LiveData = lastResult.map { if (it == null) { - app.getString(R.string.none) + stringProvider.get(R.string.none) } else { val statusText = it.status.textRes() if (statusText == 0) { it.reason } else { - app.getString(statusText) + stringProvider.get(statusText) } } } @@ -151,7 +150,7 @@ class ViewSiteViewModel @Inject constructor( val disabled = it.first val lastResult = it.second if (disabled) { - app.getString(R.string.auto_checks_disabled) + stringProvider.get(R.string.auto_checks_disabled) } else { val lastCheck = lastResult?.timestampMs ?: currentTimeMillis() (lastCheck + getCheckIntervalMs()).formatDate() diff --git a/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt b/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt index b03df8b..e175d5d 100644 --- a/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt +++ b/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt @@ -1,8 +1,24 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.afollestad.nocknock import androidx.annotation.CheckResult import androidx.lifecycle.LiveData import androidx.lifecycle.Observer +import com.google.common.truth.Truth.assertThat import com.google.common.truth.Truth.assertWithMessage /** @author Aidan Follestad (@afollestad) */ @@ -22,12 +38,11 @@ class TestLiveData(data: LiveData) { fun assertValues(vararg assertValues: T) { val assertList = assertValues.toList() - assertWithMessage("Expected: $assertList, but got: $receivedValues").that(receivedValues) - .isEqualTo(assertList) + assertThat(receivedValues).isEqualTo(assertList) receivedValues.clear() } @CheckResult fun values(): List = receivedValues } -@CheckResult fun LiveData.test() = TestLiveData(this) \ No newline at end of file +@CheckResult fun LiveData.test() = TestLiveData(this) diff --git a/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt b/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt index 54d62c4..0d9b88b 100644 --- a/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt @@ -1,3 +1,18 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.afollestad.nocknock.broadcasts import android.app.Application @@ -52,4 +67,4 @@ class StatusUpdateIntentReceiverTest { receiver.onPause() verify(app).unregisterReceiver(receiver.intentReceiver) } -} \ No newline at end of file +} diff --git a/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt similarity index 99% rename from app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSitePresenterTest.kt rename to app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt index 0320fd3..d8cbe81 100644 --- a/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt @@ -42,7 +42,7 @@ package com.afollestad.nocknock.ui.addsite //import org.junit.Before //import org.junit.Test // -//class AddSitePresenterTest { +//class AddSiteViewModelTest { // // private val database = mockDatabase() // private val checkStatusManager = mock() diff --git a/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt index 6414bd5..70e732f 100644 --- a/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt @@ -15,6 +15,7 @@ */ package com.afollestad.nocknock.ui.main +import androidx.arch.core.executor.testing.InstantTaskExecutorRule import com.afollestad.nocknock.ALL_MOCK_MODELS import com.afollestad.nocknock.MOCK_MODEL_1 import com.afollestad.nocknock.MOCK_MODEL_2 @@ -28,22 +29,25 @@ import com.nhaarman.mockitokotlin2.verify import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.runBlocking import org.junit.After +import org.junit.Rule import org.junit.Test +/** @author Aidan Follestad (@afollestad) */ class MainViewModelTest { private val database = mockDatabase() private val notificationManager = mock() private val validationManager = mock() + @Rule @JvmField val rule = InstantTaskExecutorRule() + private val viewModel = MainViewModel( database, notificationManager, validationManager, - Dispatchers.Default - ).apply { - this.mainDispatcher = Dispatchers.Default - } + Dispatchers.Unconfined, + Dispatchers.Unconfined + ) @After fun tearDown() = viewModel.destroy() @@ -92,7 +96,6 @@ class MainViewModelTest { viewModel.postSiteUpdate(updatedModel2) sites.assertValues(updatedSites) - } @Test fun refreshSite() { @@ -116,6 +119,7 @@ class MainViewModelTest { listOf(), ALL_MOCK_MODELS ) + isLoading.assertValues(true, false) val modifiedModel = MOCK_MODEL_1.copy(id = 11111) viewModel.removeSite(modifiedModel) @@ -140,6 +144,7 @@ class MainViewModelTest { listOf(), ALL_MOCK_MODELS ) + isLoading.assertValues(true, false) val modelsWithout1 = ALL_MOCK_MODELS.toMutableList() .apply { diff --git a/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenterTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt similarity index 88% rename from app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenterTest.kt rename to app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt index 9b4a33b..e06b747 100644 --- a/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSitePresenterTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt @@ -15,6 +15,6 @@ */ package com.afollestad.nocknock.ui.viewsite -class ViewSitePresenterTest { +class ViewSiteViewModelTest -} +// TODO this will be mostly identical to the add site test diff --git a/utilities/.gitignore b/common/.gitignore similarity index 100% rename from utilities/.gitignore rename to common/.gitignore diff --git a/utilities/build.gradle b/common/build.gradle similarity index 90% rename from utilities/build.gradle rename to common/build.gradle index 433cdf4..16d9280 100644 --- a/utilities/build.gradle +++ b/common/build.gradle @@ -26,9 +26,7 @@ dependencies { api 'org.jetbrains.kotlinx:kotlinx-coroutines-core:' + versions.coroutines api 'org.jetbrains.kotlinx:kotlinx-coroutines-android:' + versions.coroutines - implementation 'com.google.dagger:dagger:' + versions.dagger - kapt 'com.google.dagger:dagger-compiler:' + versions.dagger - + implementation 'org.koin:koin-android:' + versions.koin implementation 'org.mozilla:rhino:' + versions.rhino testImplementation 'junit:junit:' + versions.junit diff --git a/utilities/src/main/AndroidManifest.xml b/common/src/main/AndroidManifest.xml similarity index 100% rename from utilities/src/main/AndroidManifest.xml rename to common/src/main/AndroidManifest.xml diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.java b/common/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt similarity index 50% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.java rename to common/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt index 5861004..e48adb3 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.java +++ b/common/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt @@ -1,11 +1,11 @@ -/* +/** * Designed and developed by Aidan Follestad (@afollestad) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, @@ -13,63 +13,62 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.utilities; +package com.afollestad.nocknock.utilities -import com.afollestad.nocknock.utilities.providers.BitmapProvider; -import com.afollestad.nocknock.utilities.providers.BundleProvider; -import com.afollestad.nocknock.utilities.providers.IntentProvider; -import com.afollestad.nocknock.utilities.providers.JobInfoProvider; -import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider; -import com.afollestad.nocknock.utilities.providers.NotificationProvider; -import com.afollestad.nocknock.utilities.providers.RealBitmapProvider; -import com.afollestad.nocknock.utilities.providers.RealBundleProvider; -import com.afollestad.nocknock.utilities.providers.RealIntentProvider; -import com.afollestad.nocknock.utilities.providers.RealJobInfoProvider; -import com.afollestad.nocknock.utilities.providers.RealNotificationChannelProvider; -import com.afollestad.nocknock.utilities.providers.RealNotificationProvider; -import com.afollestad.nocknock.utilities.providers.RealSdkProvider; -import com.afollestad.nocknock.utilities.providers.RealStringProvider; -import com.afollestad.nocknock.utilities.providers.SdkProvider; -import com.afollestad.nocknock.utilities.providers.StringProvider; -import dagger.Binds; -import dagger.Module; -import javax.inject.Singleton; +import com.afollestad.nocknock.utilities.Qualifiers.IO_DISPATCHER +import com.afollestad.nocknock.utilities.Qualifiers.MAIN_ACTIVITY_CLASS +import com.afollestad.nocknock.utilities.Qualifiers.MAIN_DISPATCHER +import com.afollestad.nocknock.utilities.providers.BitmapProvider +import com.afollestad.nocknock.utilities.providers.BundleProvider +import com.afollestad.nocknock.utilities.providers.IntentProvider +import com.afollestad.nocknock.utilities.providers.JobInfoProvider +import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider +import com.afollestad.nocknock.utilities.providers.NotificationProvider +import com.afollestad.nocknock.utilities.providers.RealBitmapProvider +import com.afollestad.nocknock.utilities.providers.RealBundleProvider +import com.afollestad.nocknock.utilities.providers.RealIntentProvider +import com.afollestad.nocknock.utilities.providers.RealJobInfoProvider +import com.afollestad.nocknock.utilities.providers.RealNotificationChannelProvider +import com.afollestad.nocknock.utilities.providers.RealNotificationProvider +import com.afollestad.nocknock.utilities.providers.RealSdkProvider +import com.afollestad.nocknock.utilities.providers.RealStringProvider +import com.afollestad.nocknock.utilities.providers.SdkProvider +import com.afollestad.nocknock.utilities.providers.StringProvider +import kotlinx.coroutines.Dispatchers +import org.koin.dsl.module.module + +const val UTILITIES_MODULE = "utilities" + +object Qualifiers { + const val MAIN_ACTIVITY_CLASS = "main.main_activity_class" + const val MAIN_DISPATCHER = "main.main_dispatcher" + const val IO_DISPATCHER = "main.io_dispatcher" +} /** @author Aidan Follestad (@afollestad) */ -@Module -public abstract class UtilitiesModule { +val utilitiesModule = module(UTILITIES_MODULE) { - @Binds - @Singleton - abstract SdkProvider provideSdkProvider(RealSdkProvider sdkProvider); + factory(name = MAIN_DISPATCHER) { Dispatchers.Main } - @Binds - @Singleton - abstract BitmapProvider provideBitmapProvider(RealBitmapProvider bitmapProvider); + factory(name = IO_DISPATCHER) { Dispatchers.IO } - @Binds - @Singleton - abstract StringProvider provideStringProvider(RealStringProvider stringProvider); + factory { RealSdkProvider() } bind SdkProvider::class - @Binds - @Singleton - abstract IntentProvider provideIntentProvider(RealIntentProvider intentProvider); + factory { RealBitmapProvider(get()) } bind BitmapProvider::class - @Binds - @Singleton - abstract NotificationChannelProvider provideChannelProvider( - RealNotificationChannelProvider channelProvider); + factory { RealStringProvider(get()) } bind StringProvider::class - @Binds - @Singleton - abstract NotificationProvider provideNotificationProvider( - RealNotificationProvider notificationProvider); + factory { + RealIntentProvider(get(), get(name = MAIN_ACTIVITY_CLASS)) + } bind IntentProvider::class - @Binds - @Singleton - abstract BundleProvider provideBundleProvider(RealBundleProvider bundleProvider); + factory { + RealNotificationChannelProvider(get()) + } bind NotificationChannelProvider::class - @Binds - @Singleton - abstract JobInfoProvider provideJobInfoProvider(RealJobInfoProvider jobInfoProvider); + factory { RealNotificationProvider(get()) } bind NotificationProvider::class + + factory { RealBundleProvider() } bind BundleProvider::class + + factory { RealJobInfoProvider(get()) } bind JobInfoProvider::class } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt similarity index 100% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt similarity index 100% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt similarity index 100% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt similarity index 100% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt similarity index 100% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt similarity index 100% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt b/common/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt similarity index 100% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt similarity index 85% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt index 0bbe9c3..7d87780 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt @@ -15,11 +15,10 @@ */ package com.afollestad.nocknock.utilities.providers -import android.app.Application +import android.content.Context import android.graphics.Bitmap import android.graphics.BitmapFactory.decodeResource import androidx.annotation.DrawableRes -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ interface BitmapProvider { @@ -28,11 +27,11 @@ interface BitmapProvider { } /** @author Aidan Follestad (@afollestad) */ -class RealBitmapProvider @Inject constructor( - private val app: Application +class RealBitmapProvider( + private val context: Context ) : BitmapProvider { override fun get(res: Int): Bitmap { - return decodeResource(app.resources, res) + return decodeResource(context.resources, res) } } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt similarity index 93% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt index 3d60e81..27894fe 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt @@ -16,7 +16,6 @@ package com.afollestad.nocknock.utilities.providers import android.os.PersistableBundle -import javax.inject.Inject interface IBundle { fun putLong( @@ -34,7 +33,7 @@ interface BundleProvider { } /** @author Aidan Follestad (@afollestad) */ -class RealBundleProvider @Inject constructor() : BundleProvider { +class RealBundleProvider : BundleProvider { override fun createPersistable(bundler: IBundler): PersistableBundle { val realBundle = PersistableBundle() diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt similarity index 84% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt index 56f65a0..3592bbe 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt @@ -15,13 +15,11 @@ */ package com.afollestad.nocknock.utilities.providers -import android.app.Application import android.app.PendingIntent import android.app.PendingIntent.FLAG_CANCEL_CURRENT +import android.content.Context import android.content.Intent -import com.afollestad.nocknock.utilities.qualifiers.MainActivityClass import java.io.Serializable -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ interface CanNotifyModel : Serializable { @@ -42,9 +40,9 @@ interface IntentProvider { } /** @author Aidan Follestad (@afollestad) */ -class RealIntentProvider @Inject constructor( - private val app: Application, - @MainActivityClass private val mainActivity: Class<*> +class RealIntentProvider( + private val context: Context, + private val mainActivityClass: Class<*> ) : IntentProvider { companion object { @@ -55,7 +53,7 @@ class RealIntentProvider @Inject constructor( override fun getPendingIntentForViewSite(model: CanNotifyModel): PendingIntent { val openIntent = getIntentForViewSite(model) return PendingIntent.getActivity( - app, + context, BASE_NOTIFICATION_REQUEST_CODE + model.notiId(), openIntent, FLAG_CANCEL_CURRENT @@ -63,7 +61,7 @@ class RealIntentProvider @Inject constructor( } private fun getIntentForViewSite(model: CanNotifyModel) = - Intent(app, mainActivity).apply { + Intent(context, mainActivityClass).apply { putExtra(KEY_VIEW_NOTIFICATION_MODEL, model) } } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt similarity index 90% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt index 9852c50..0b59425 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt @@ -15,13 +15,12 @@ */ package com.afollestad.nocknock.utilities.providers -import android.app.Application import android.app.job.JobInfo import android.app.job.JobInfo.NETWORK_TYPE_ANY import android.app.job.JobInfo.NETWORK_TYPE_UNMETERED import android.content.ComponentName +import android.content.Context import android.os.PersistableBundle -import javax.inject.Inject interface JobInfoProvider { @@ -34,8 +33,8 @@ interface JobInfoProvider { ): JobInfo } -class RealJobInfoProvider @Inject constructor( - private val app: Application +class RealJobInfoProvider( + private val context: Context ) : JobInfoProvider { // Note: we don't use the periodic feature of JobScheduler because it requires a @@ -48,7 +47,7 @@ class RealJobInfoProvider @Inject constructor( extras: PersistableBundle, target: Class<*> ): JobInfo { - val component = ComponentName(app, target) + val component = ComponentName(context, target) val networkType = if (onlyUnmeteredNetwork) { NETWORK_TYPE_UNMETERED } else { diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt similarity index 94% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt index 0215605..e31ef04 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt @@ -18,7 +18,6 @@ package com.afollestad.nocknock.utilities.providers import android.annotation.TargetApi import android.app.NotificationChannel import android.os.Build.VERSION_CODES -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ interface NotificationChannelProvider { @@ -33,7 +32,7 @@ interface NotificationChannelProvider { } /** @author Aidan Follestad (@afollestad) */ -class RealNotificationChannelProvider @Inject constructor( +class RealNotificationChannelProvider( private val sdkProvider: SdkProvider ) : NotificationChannelProvider { diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt similarity index 89% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt index 6c3547f..e0f45f1 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt @@ -15,13 +15,12 @@ */ package com.afollestad.nocknock.utilities.providers -import android.app.Application import android.app.Notification import android.app.PendingIntent +import android.content.Context import android.graphics.Bitmap import androidx.core.app.NotificationCompat import androidx.core.app.NotificationCompat.DEFAULT_VIBRATE -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ interface NotificationProvider { @@ -37,8 +36,8 @@ interface NotificationProvider { } /** @author Aidan Follestad (@afollestad) */ -class RealNotificationProvider @Inject constructor( - private val app: Application +class RealNotificationProvider( + private val context: Context ) : NotificationProvider { override fun create( @@ -49,7 +48,7 @@ class RealNotificationProvider @Inject constructor( smallIcon: Int, largeIcon: Bitmap ): Notification { - return NotificationCompat.Builder(app, channelId) + return NotificationCompat.Builder(context, channelId) .setContentTitle(title) .setContentText(content) .setContentIntent(intent) diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt similarity index 91% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt index 8701f41..a8ec0a9 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt @@ -17,7 +17,6 @@ package com.afollestad.nocknock.utilities.providers import android.os.Build.VERSION.SDK_INT import android.os.Build.VERSION_CODES.O -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ interface SdkProvider { @@ -26,7 +25,7 @@ interface SdkProvider { } /** @author Aidan Follestad (@afollestad) */ -class RealSdkProvider @Inject constructor() : SdkProvider { +class RealSdkProvider : SdkProvider { override fun hasOreo() = SDK_INT >= O } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt similarity index 84% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt index 1f263b5..1d24030 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt @@ -15,9 +15,8 @@ */ package com.afollestad.nocknock.utilities.providers -import android.app.Application +import android.content.Context import androidx.annotation.StringRes -import javax.inject.Inject /** @author Aidan Follestad (@afollestad) */ interface StringProvider { @@ -26,11 +25,11 @@ interface StringProvider { } /** @author Aidan Follestad (@afollestad) */ -class RealStringProvider @Inject constructor( - private val app: Application +class RealStringProvider( + private val context: Context ) : StringProvider { override fun get(res: Int): String { - return app.resources.getString(res) + return context.resources.getString(res) } } diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt similarity index 100% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt diff --git a/utilities/src/main/res/values/strings.xml b/common/src/main/res/values/strings.xml similarity index 100% rename from utilities/src/main/res/values/strings.xml rename to common/src/main/res/values/strings.xml diff --git a/data/build.gradle b/data/build.gradle index 6a79c06..5512756 100644 --- a/data/build.gradle +++ b/data/build.gradle @@ -17,13 +17,10 @@ android { } dependencies { - implementation project(':utilities') + implementation project(':common') implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:' + versions.kotlin - implementation 'com.google.dagger:dagger:' + versions.dagger - annotationProcessor 'com.google.dagger:dagger-compiler:' + versions.dagger - api 'androidx.room:room-runtime:' + versions.room kapt 'androidx.room:room-compiler:' + versions.room diff --git a/dependencies.gradle b/dependencies.gradle index f1d2a5c..e7427e5 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -12,9 +12,9 @@ ext.versions = [ okHttp : '3.12.0', rhino : '1.7.10', - dagger : '2.19', kotlin : '1.3.10', coroutines : '1.0.1', + koin : '1.0.2', androidx : '1.0.0', room : '2.0.0', @@ -30,6 +30,8 @@ ext.versions = [ mockito : '2.23.0', mockitoKotlin : '2.0.0-RC1', truth : '0.42', + androidxTestRunner: '1.1.0', androidxTest : '1.0.0', + archTesting : '2.0.0' ] diff --git a/engine/build.gradle b/engine/build.gradle index c26b99b..1808f4c 100644 --- a/engine/build.gradle +++ b/engine/build.gradle @@ -14,7 +14,7 @@ android { } dependencies { - implementation project(':utilities') + implementation project(':common') implementation project(':data') implementation project(':notifications') @@ -22,12 +22,12 @@ dependencies { api 'org.jetbrains.kotlinx:kotlinx-coroutines-core:' + versions.coroutines api 'org.jetbrains.kotlinx:kotlinx-coroutines-android:' + versions.coroutines + implementation 'org.koin:koin-android:' + versions.koin + api 'com.squareup.okhttp3:okhttp:' + versions.okHttp - implementation 'com.google.dagger:dagger:' + versions.dagger - kapt 'com.google.dagger:dagger-compiler:' + versions.dagger - implementation 'com.jakewharton.timber:timber:' + versions.timber + testImplementation 'junit:junit:' + versions.junit testImplementation 'org.mockito:mockito-core:' + versions.mockito testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:' + versions.mockitoKotlin diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt similarity index 73% rename from engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java rename to engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt index bc7599e..e766ca3 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.java +++ b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt @@ -1,4 +1,4 @@ -/* +/** * Designed and developed by Aidan Follestad (@afollestad) * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,19 +13,18 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.engine; +package com.afollestad.nocknock.engine -import com.afollestad.nocknock.engine.validation.RealValidationManager; -import com.afollestad.nocknock.engine.validation.ValidationManager; -import dagger.Binds; -import dagger.Module; -import javax.inject.Singleton; +import com.afollestad.nocknock.engine.validation.RealValidationManager +import com.afollestad.nocknock.engine.validation.ValidationManager +import org.koin.dsl.module.module + +const val ENGINE_MODULE = "engine" /** @author Aidan Follestad (@afollestad) */ -@Module -public abstract class EngineModule { +val engineModule = module(ENGINE_MODULE) { - @Binds - @Singleton - abstract ValidationManager provideValidationManager(RealValidationManager checkStatusManager); + single { + RealValidationManager(get(), get(), get(), get(), get(), get()) + } bind ValidationManager::class } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt index efdef8e..deab303 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt @@ -19,19 +19,22 @@ import android.content.BroadcastReceiver import android.content.Context import android.content.Intent import android.content.Intent.ACTION_BOOT_COMPLETED -import com.afollestad.nocknock.utilities.ext.injector -import kotlinx.coroutines.Dispatchers.IO -import kotlinx.coroutines.Dispatchers.Main +import com.afollestad.nocknock.utilities.Qualifiers.IO_DISPATCHER +import com.afollestad.nocknock.utilities.Qualifiers.MAIN_DISPATCHER +import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.GlobalScope -import kotlinx.coroutines.async import kotlinx.coroutines.launch -import javax.inject.Inject +import kotlinx.coroutines.withContext +import org.koin.standalone.KoinComponent +import org.koin.standalone.inject import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ -class BootReceiver : BroadcastReceiver() { +class BootReceiver : BroadcastReceiver(), KoinComponent { - @Inject lateinit var checkStatusManager: ValidationManager + private val validationManager by inject() + private val mainDispatcher by inject(name = MAIN_DISPATCHER) + private val ioDispatcher by inject(name = IO_DISPATCHER) override fun onReceive( context: Context, @@ -42,12 +45,10 @@ class BootReceiver : BroadcastReceiver() { } log("Received boot event! Let's go.") - context.injector() - .injectInto(this) val pendingResult = goAsync() - GlobalScope.launch(Main) { - async(IO) { checkStatusManager.ensureScheduledChecks() }.await() + GlobalScope.launch(mainDispatcher) { + withContext(ioDispatcher) { validationManager.ensureScheduledChecks() } pendingResult.resultCode = 0 pendingResult.finish() } diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt index 69e6c54..8110273 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt @@ -19,6 +19,7 @@ import android.app.job.JobParameters import android.app.job.JobService import android.content.Intent import com.afollestad.nocknock.data.AppDatabase +import com.afollestad.nocknock.data.getSite import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.data.model.Status import com.afollestad.nocknock.data.model.Status.CHECKING @@ -29,11 +30,9 @@ import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH import com.afollestad.nocknock.data.model.isPending -import com.afollestad.nocknock.data.getSite import com.afollestad.nocknock.data.updateSite import com.afollestad.nocknock.engine.BuildConfig.APPLICATION_ID import com.afollestad.nocknock.notifications.NockNotificationManager -import com.afollestad.nocknock.utilities.ext.injector import com.afollestad.nocknock.utilities.js.JavaScript import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Dispatchers.Main @@ -41,8 +40,8 @@ import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.async import kotlinx.coroutines.launch import kotlinx.coroutines.withContext +import org.koin.android.ext.android.inject import java.lang.System.currentTimeMillis -import javax.inject.Inject import timber.log.Timber.d as log /** @@ -59,12 +58,11 @@ class ValidationJob : JobService() { const val KEY_SITE_ID = "site.id" } - @Inject lateinit var database: AppDatabase - @Inject lateinit var checkStatusManager: ValidationManager - @Inject lateinit var notificationManager: NockNotificationManager + private val database by inject() + private val validaitonManager by inject() + private val notificationManager by inject() override fun onStartJob(params: JobParameters): Boolean { - injector().injectInto(this) val siteId = params.extras.getLong(KEY_SITE_ID) GlobalScope.launch(Main) { @@ -84,7 +82,7 @@ class ValidationJob : JobService() { val jobResult = async(IO) { updateStatus(site, CHECKING) - val checkResult = checkStatusManager.performCheck(site) + val checkResult = validaitonManager.performCheck(site) val resultModel = checkResult.model val resultResponse = checkResult.response val result = resultModel.lastResult!! @@ -144,7 +142,7 @@ class ValidationJob : JobService() { notificationManager.postStatusNotification(jobResult) } - checkStatusManager.scheduleCheck( + validaitonManager.scheduleCheck( site = jobResult, fromFinishingJob = true ) diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt index b7f129f..d24d4d3 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt @@ -33,7 +33,6 @@ import okhttp3.Response import org.jetbrains.annotations.TestOnly import java.net.SocketTimeoutException import java.util.concurrent.TimeUnit.MILLISECONDS -import javax.inject.Inject import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ @@ -61,7 +60,7 @@ interface ValidationManager { suspend fun performCheck(site: Site): CheckResult } -class RealValidationManager @Inject constructor( +class RealValidationManager( private val jobScheduler: JobScheduler, private val okHttpClient: OkHttpClient, private val stringProvider: StringProvider, diff --git a/notifications/build.gradle b/notifications/build.gradle index e843285..24fd449 100644 --- a/notifications/build.gradle +++ b/notifications/build.gradle @@ -14,7 +14,7 @@ android { } dependencies { - implementation project(':utilities') + implementation project(':common') api 'androidx.appcompat:appcompat:' + versions.androidx @@ -22,10 +22,10 @@ dependencies { api 'org.jetbrains.kotlinx:kotlinx-coroutines-core:' + versions.coroutines api 'org.jetbrains.kotlinx:kotlinx-coroutines-android:' + versions.coroutines - implementation 'com.google.dagger:dagger:' + versions.dagger - kapt 'com.google.dagger:dagger-compiler:' + versions.dagger + implementation 'org.koin:koin-android:' + versions.koin implementation 'com.jakewharton.timber:timber:' + versions.timber + testImplementation 'junit:junit:' + versions.junit testImplementation 'org.mockito:mockito-core:' + versions.mockito testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:' + versions.mockitoKotlin diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt index 35acd46..5be2912 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt @@ -26,8 +26,6 @@ import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider import com.afollestad.nocknock.utilities.providers.NotificationProvider import com.afollestad.nocknock.utilities.providers.RealIntentProvider.Companion.BASE_NOTIFICATION_REQUEST_CODE import com.afollestad.nocknock.utilities.providers.StringProvider -import com.afollestad.nocknock.utilities.qualifiers.AppIconRes -import javax.inject.Inject import timber.log.Timber.d as log /** @author Aidan Follestad (@afollestad) */ @@ -45,8 +43,8 @@ interface NockNotificationManager { } /** @author Aidan Follestad (@afollestad) */ -class RealNockNotificationManager @Inject constructor( - @AppIconRes private val appIconRes: Int, +class RealNockNotificationManager( + private val appIconRes: Int, private val stockManager: NotificationManager, private val bitmapProvider: BitmapProvider, private val stringProvider: StringProvider, diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.java b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.java deleted file mode 100644 index d43d339..0000000 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.notifications; - -import dagger.Binds; -import dagger.Module; -import javax.inject.Singleton; - -/** @author Aidan Follestad (@afollestad) */ -@Module -public abstract class NotificationsModule { - - @Binds - @Singleton - abstract NockNotificationManager provideNockNotificationManager( - RealNockNotificationManager notificationManager); -} diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/Injector.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt similarity index 53% rename from utilities/src/main/java/com/afollestad/nocknock/utilities/Injector.kt rename to notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt index 89972e4..3f2a9a6 100644 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/Injector.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt @@ -13,10 +13,28 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock.utilities +package com.afollestad.nocknock.notifications -/** @author Aidan Follestad (@afollestad)*/ -interface Injector { +import com.afollestad.nocknock.notifications.Qualifiers.APP_ICON_RES +import org.koin.dsl.module.module - fun injectInto(target: Any) +const val NOTIFICATIONS_MODULE = "notifications" + +object Qualifiers { + const val APP_ICON_RES = "main.app_icon_res" +} + +val notificationsModule = module(NOTIFICATIONS_MODULE) { + + single { + RealNockNotificationManager( + get(name = APP_ICON_RES), + get(), + get(), + get(), + get(), + get(), + get() + ) + } bind NockNotificationManager::class } diff --git a/settings.gradle b/settings.gradle index 71dab80..cc839f9 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1 +1 @@ -include ':app', ':engine', ':notifications', ':data', ':utilities', ':viewcomponents' +include ':app', ':engine', ':notifications', ':data', ':common', ':viewcomponents' diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/InjectorExt.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/InjectorExt.kt deleted file mode 100644 index ebf2fb0..0000000 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/ext/InjectorExt.kt +++ /dev/null @@ -1,24 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.utilities.ext - -import android.app.job.JobService -import android.content.Context -import com.afollestad.nocknock.utilities.Injector - -fun Context.injector() = applicationContext as Injector - -fun JobService.injector() = applicationContext as Injector diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/AppIconRes.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/AppIconRes.kt deleted file mode 100644 index bae9b30..0000000 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/AppIconRes.kt +++ /dev/null @@ -1,24 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.utilities.qualifiers - -import javax.inject.Qualifier -import kotlin.annotation.AnnotationRetention.RUNTIME - -/** @author Aidan Follestad (@afollestad) */ -@Qualifier -@Retention(RUNTIME) -annotation class AppIconRes diff --git a/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/MainActivityClass.kt b/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/MainActivityClass.kt deleted file mode 100644 index db9ee3a..0000000 --- a/utilities/src/main/java/com/afollestad/nocknock/utilities/qualifiers/MainActivityClass.kt +++ /dev/null @@ -1,24 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.utilities.qualifiers - -import javax.inject.Qualifier -import kotlin.annotation.AnnotationRetention.RUNTIME - -/** @author Aidan Follestad (@afollestad) */ -@Qualifier -@Retention(RUNTIME) -annotation class MainActivityClass diff --git a/viewcomponents/build.gradle b/viewcomponents/build.gradle index 51bd417..aaa0ab7 100644 --- a/viewcomponents/build.gradle +++ b/viewcomponents/build.gradle @@ -15,16 +15,13 @@ android { } dependencies { - implementation project(':utilities') + implementation project(':common') implementation project(':data') implementation 'androidx.appcompat:appcompat:' + versions.androidx api 'androidx.lifecycle:lifecycle-extensions:' + versions.lifecycle api 'com.squareup.okhttp3:okhttp:' + versions.okHttp - - implementation 'com.google.dagger:dagger:' + versions.dagger - kapt 'com.google.dagger:dagger-compiler:' + versions.dagger } apply from: '../spotless.gradle' \ No newline at end of file diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt index a91b11c..2745a3f 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt @@ -46,7 +46,14 @@ class LoadingIndicatorFrame( isFocusable = true } - fun setIsLoading(isLoading: Boolean) { + fun observe( + owner: LifecycleOwner, + data: LiveData + ) = data.observe(owner, Observer { + setIsLoading(it) + }) + + private fun setIsLoading(isLoading: Boolean) { delayHandler.removeCallbacks(showRunnable) if (isLoading) { delayHandler.postDelayed(showRunnable, SHOW_DELAY_MS) @@ -54,11 +61,4 @@ class LoadingIndicatorFrame( hide() } } - - fun observe( - owner: LifecycleOwner, - data: LiveData - ) = data.observe(owner, Observer { - setIsLoading(it) - }) } From 98327c8c5b33c198a88bea0be034c90ed2f8b959 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Thu, 6 Dec 2018 18:10:51 -0800 Subject: [PATCH 014/114] Fix StatusUpdateIntentReceiverTest --- .../broadcasts/StatusUpdateIntentReceiver.kt | 26 ++++++++++++------- .../nocknock/ui/main/MainActivity.kt | 5 +++- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 5 +++- .../java/com/afollestad/nocknock/TestData.kt | 23 ++++++++++++++++ .../StatusUpdateIntentReceiverTest.kt | 7 +++-- .../utilities/providers/IntentProvider.kt | 15 ++++++++--- .../afollestad/nocknock/data/model/Site.kt | 6 ++--- .../notifications/NockNotificationManager.kt | 12 ++++----- 8 files changed, 72 insertions(+), 27 deletions(-) diff --git a/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt b/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt index 9a507d7..c5567c5 100644 --- a/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt +++ b/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt @@ -15,11 +15,10 @@ */ package com.afollestad.nocknock.broadcasts -import android.app.Application import android.content.BroadcastReceiver import android.content.Context import android.content.Intent -import android.content.IntentFilter +import androidx.lifecycle.Lifecycle.Event.ON_DESTROY import androidx.lifecycle.Lifecycle.Event.ON_PAUSE import androidx.lifecycle.Lifecycle.Event.ON_RESUME import androidx.lifecycle.LifecycleObserver @@ -27,13 +26,15 @@ import androidx.lifecycle.OnLifecycleEvent import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.ACTION_STATUS_UPDATE import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.KEY_UPDATE_MODEL +import com.afollestad.nocknock.utilities.providers.IntentProvider typealias SiteCallback = (Site) -> Unit /** @author Aidan Follestad (@afollestad) */ class StatusUpdateIntentReceiver( - private val app: Application, - private val callback: SiteCallback + private val context: Context, + private val intentProvider: IntentProvider, + private var callback: SiteCallback? ) : LifecycleObserver { internal val intentReceiver = object : BroadcastReceiver() { @@ -44,19 +45,24 @@ class StatusUpdateIntentReceiver( if (intent.action == ACTION_STATUS_UPDATE) { val model = intent.getSerializableExtra(KEY_UPDATE_MODEL) as? Site ?: return - callback(model) + callback?.invoke(model) } } } @OnLifecycleEvent(ON_RESUME) fun onResume() { - val filter = IntentFilter().apply { - addAction(ACTION_STATUS_UPDATE) - } - app.registerReceiver(intentReceiver, filter) + val filter = intentProvider.createFilter(ACTION_STATUS_UPDATE) + context.registerReceiver(intentReceiver, filter) } @OnLifecycleEvent(ON_PAUSE) - fun onPause() = app.unregisterReceiver(intentReceiver) + fun onPause() { + context.unregisterReceiver(intentReceiver) + } + + @OnLifecycleEvent(ON_DESTROY) + fun onDestroy() { + callback = null + } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt index 2fc867a..4ee0e75 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt @@ -30,6 +30,7 @@ import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.dialogs.AboutDialog import com.afollestad.nocknock.notifications.NockNotificationManager +import com.afollestad.nocknock.utilities.providers.IntentProvider import com.afollestad.nocknock.viewcomponents.ext.showOrHide import kotlinx.android.synthetic.main.activity_main.fab import kotlinx.android.synthetic.main.activity_main.list @@ -43,12 +44,14 @@ import org.koin.androidx.viewmodel.ext.android.viewModel class MainActivity : AppCompatActivity() { private val notificationManager by inject() + private val intentProvider by inject() + internal val viewModel by viewModel() private lateinit var adapter: ServerAdapter private val statusUpdateReceiver = - StatusUpdateIntentReceiver(application) { + StatusUpdateIntentReceiver(application, intentProvider) { viewModel.postSiteUpdate(it) } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index aace599..c4d9ad4 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -25,6 +25,7 @@ import com.afollestad.nocknock.R import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.utilities.providers.IntentProvider import com.afollestad.nocknock.viewcomponents.ext.attachLiveData import com.afollestad.nocknock.viewcomponents.ext.dimenFloat import com.afollestad.nocknock.viewcomponents.ext.onScroll @@ -48,6 +49,7 @@ import kotlinx.android.synthetic.main.activity_viewsite.textNextCheck import kotlinx.android.synthetic.main.activity_viewsite.textUrlWarning import kotlinx.android.synthetic.main.activity_viewsite.toolbar import kotlinx.android.synthetic.main.activity_viewsite.validationModeDescription +import org.koin.android.ext.android.inject import org.koin.androidx.viewmodel.ext.android.viewModel /** @author Aidan Follestad (@afollestad) */ @@ -55,8 +57,9 @@ class ViewSiteActivity : AppCompatActivity() { internal val viewModel by viewModel() + private val intentProvider by inject() private val statusUpdateReceiver = - StatusUpdateIntentReceiver(application) { + StatusUpdateIntentReceiver(application, intentProvider) { viewModel.setModel(it) } diff --git a/app/src/test/java/com/afollestad/nocknock/TestData.kt b/app/src/test/java/com/afollestad/nocknock/TestData.kt index aad071f..ebe713d 100644 --- a/app/src/test/java/com/afollestad/nocknock/TestData.kt +++ b/app/src/test/java/com/afollestad/nocknock/TestData.kt @@ -15,7 +15,9 @@ */ package com.afollestad.nocknock +import android.app.PendingIntent import android.content.Intent +import android.content.IntentFilter import com.afollestad.nocknock.data.AppDatabase import com.afollestad.nocknock.data.SiteDao import com.afollestad.nocknock.data.SiteSettingsDao @@ -27,6 +29,9 @@ import com.afollestad.nocknock.data.model.Status.OK import com.afollestad.nocknock.data.model.ValidationMode import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE import com.afollestad.nocknock.data.model.ValidationResult +import com.afollestad.nocknock.utilities.providers.CanNotifyModel +import com.afollestad.nocknock.utilities.providers.IntentProvider +import com.nhaarman.mockitokotlin2.any import com.nhaarman.mockitokotlin2.doAnswer import com.nhaarman.mockitokotlin2.doReturn import com.nhaarman.mockitokotlin2.isA @@ -130,3 +135,21 @@ fun mockDatabase(): AppDatabase { on { validationResultsDao() } doReturn resultsDao } } + +fun mockIntentProvider() = object : IntentProvider { + override fun createFilter(vararg actions: String): IntentFilter { + return mock { + on { this.getAction(any()) } doAnswer { inv -> + val index = inv.getArgument(0) + return@doAnswer actions[index] + } + on { this.actionsIterator() } doReturn actions.iterator() + on { this.countActions() } doReturn actions.size + } + } + + override fun getPendingIntentForViewSite(model: CanNotifyModel): PendingIntent { + // basically no-op right now + return mock() + } +} diff --git a/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt b/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt index 0d9b88b..e3e51b3 100644 --- a/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt @@ -21,9 +21,11 @@ import com.afollestad.nocknock.MOCK_MODEL_2 import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.ACTION_STATUS_UPDATE import com.afollestad.nocknock.engine.validation.ValidationJob.Companion.KEY_UPDATE_MODEL import com.afollestad.nocknock.fakeIntent +import com.afollestad.nocknock.mockIntentProvider import com.google.common.truth.Truth.assertThat import com.nhaarman.mockitokotlin2.argumentCaptor import com.nhaarman.mockitokotlin2.doReturn +import com.nhaarman.mockitokotlin2.eq import com.nhaarman.mockitokotlin2.mock import com.nhaarman.mockitokotlin2.times import com.nhaarman.mockitokotlin2.verify @@ -34,9 +36,10 @@ import org.junit.Test class StatusUpdateIntentReceiverTest { private val app = mock() + private val intentProvider = mockIntentProvider() private val callback = mock() - private val receiver = StatusUpdateIntentReceiver(app, callback) + private val receiver = StatusUpdateIntentReceiver(app, intentProvider, callback) @Test fun onReceive() { val badIntent = fakeIntent("Hello World") @@ -54,7 +57,7 @@ class StatusUpdateIntentReceiverTest { receiver.onResume() val filterCaptor = argumentCaptor() - verify(app).registerReceiver(receiver.intentReceiver, filterCaptor.capture()) + verify(app).registerReceiver(eq(receiver.intentReceiver), filterCaptor.capture()) val actionIterator = filterCaptor.firstValue.actionsIterator() assertThat(actionIterator.hasNext()).isTrue() diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt index 3592bbe..a177c49 100644 --- a/common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt @@ -19,21 +19,24 @@ import android.app.PendingIntent import android.app.PendingIntent.FLAG_CANCEL_CURRENT import android.content.Context import android.content.Intent +import android.content.IntentFilter import java.io.Serializable /** @author Aidan Follestad (@afollestad) */ interface CanNotifyModel : Serializable { - fun notiId(): Int + fun notifyId(): Int - fun notiName(): String + fun notifyName(): String - fun notiTag(): String + fun notifyTag(): String } /** @author Aidan Follestad (@afollestad) */ interface IntentProvider { + fun createFilter(vararg actions: String): IntentFilter + fun getPendingIntentForViewSite( model: CanNotifyModel ): PendingIntent @@ -50,11 +53,15 @@ class RealIntentProvider( const val KEY_VIEW_NOTIFICATION_MODEL = "model" } + override fun createFilter(vararg actions: String) = IntentFilter().apply { + actions.forEach { addAction(it) } + } + override fun getPendingIntentForViewSite(model: CanNotifyModel): PendingIntent { val openIntent = getIntentForViewSite(model) return PendingIntent.getActivity( context, - BASE_NOTIFICATION_REQUEST_CODE + model.notiId(), + BASE_NOTIFICATION_REQUEST_CODE + model.notifyId(), openIntent, FLAG_CANCEL_CURRENT ) diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt b/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt index b0539d7..132cc4e 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt @@ -41,11 +41,11 @@ data class Site( constructor() : this(0, "", "", null, null) - override fun notiId(): Int = id.toInt() + override fun notifyId(): Int = id.toInt() - override fun notiName(): String = name + override fun notifyName(): String = name - override fun notiTag(): String = url + override fun notifyTag(): String = url fun intervalText(): String { requireNotNull(settings) { "Settings not queried." } diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt index 5be2912..981a442 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt @@ -66,29 +66,29 @@ class RealNockNotificationManager( override fun postStatusNotification(model: CanNotifyModel) { if (isAppOpen) { // Don't show notifications while the app is open - log("App is open, status notification for site ${model.notiId()} won't be posted.") + log("App is open, status notification for site ${model.notifyId()} won't be posted.") return } - log("Posting status notification for site ${model.notiId()}...") + log("Posting status notification for site ${model.notifyId()}...") val intent = intentProvider.getPendingIntentForViewSite(model) val newNotification = notificationProvider.create( channelId = CheckFailures.id, - title = model.notiName(), + title = model.notifyName(), content = stringProvider.get(R.string.something_wrong), intent = intent, smallIcon = R.drawable.ic_notification, largeIcon = bitmapProvider.get(appIconRes) ) - stockManager.notify(model.notiTag(), model.notificationId(), newNotification) + stockManager.notify(model.notifyTag(), model.notificationId(), newNotification) log("Posted status notification for site ${model.notificationId()}.") } override fun cancelStatusNotification(model: CanNotifyModel) { stockManager.cancel(model.notificationId()) - log("Cancelled status notification for site ${model.notiId()}.") + log("Cancelled status notification for site ${model.notifyId()}.") } override fun cancelStatusNotifications() = stockManager.cancelAll() @@ -105,5 +105,5 @@ class RealNockNotificationManager( log("Created notification channel ${channel.id}") } - private fun CanNotifyModel.notificationId() = BASE_NOTIFICATION_REQUEST_CODE + this.notiId() + private fun CanNotifyModel.notificationId() = BASE_NOTIFICATION_REQUEST_CODE + this.notifyId() } From b57f645c98e1fb3d08f77c6d4264b49776a11e70 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Thu, 6 Dec 2018 19:41:12 -0800 Subject: [PATCH 015/114] AddSiteViewModelTest --- .../nocknock/ui/addsite/AddSiteViewModel.kt | 20 +- .../afollestad/nocknock/LiveDataTestUtil.kt | 4 +- .../ui/addsite/AddSiteViewModelTest.kt | 692 +++++++++++------- .../nocknock/ui/main/MainViewModelTest.kt | 2 + 4 files changed, 423 insertions(+), 295 deletions(-) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt index ebcc4ba..4f51b73 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt @@ -16,6 +16,8 @@ package com.afollestad.nocknock.ui.addsite import androidx.annotation.CheckResult +import androidx.annotation.VisibleForTesting +import androidx.annotation.VisibleForTesting.PRIVATE import androidx.lifecycle.LifecycleObserver import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData @@ -74,10 +76,7 @@ class AddSiteViewModel( @CheckResult fun onUrlWarningVisibility(): LiveData { return url.map { val parsed = HttpUrl.parse(it) - return@map it.isNotEmpty() && - parsed != null && - parsed.scheme() != "http" && - parsed.scheme() != "https" + return@map it.isNotEmpty() && parsed == null } } @@ -85,11 +84,10 @@ class AddSiteViewModel( @CheckResult fun onValidationModeDescription(): LiveData { return validationMode.map { - when (it) { + when (it!!) { STATUS_CODE -> R.string.validation_mode_status_desc TERM_SEARCH -> R.string.validation_mode_term_desc JAVASCRIPT -> R.string.validation_mode_javascript_desc - else -> throw IllegalStateException("Unknown validation mode: $it") } } } @@ -127,13 +125,15 @@ class AddSiteViewModel( } // Utilities - private fun getCheckIntervalMs(): Long { + @VisibleForTesting(otherwise = PRIVATE) + fun getCheckIntervalMs(): Long { val value = checkIntervalValue.value ?: return 0 val unit = checkIntervalUnit.value ?: return 0 return value * unit } - private fun getValidationArgs(): String? { + @VisibleForTesting(otherwise = PRIVATE) + fun getValidationArgs(): String? { return when (validationMode.value) { TERM_SEARCH -> validationSearchTerm.value JAVASCRIPT -> validationScript.value @@ -184,13 +184,13 @@ class AddSiteViewModel( } // Validate arguments - if (validationMode == TERM_SEARCH && + if (validationMode.value == TERM_SEARCH && validationSearchTerm.value.isNullOrEmpty() ) { errorCount++ validationSearchTermError.value = R.string.please_enter_search_term validationScriptError.value = null - } else if (validationMode == JAVASCRIPT && + } else if (validationMode.value == JAVASCRIPT && validationScript.value.isNullOrEmpty() ) { errorCount++ diff --git a/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt b/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt index e175d5d..0556668 100644 --- a/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt +++ b/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt @@ -25,7 +25,9 @@ import com.google.common.truth.Truth.assertWithMessage class TestLiveData(data: LiveData) { private val receivedValues = mutableListOf() - private val observer = Observer { receivedValues.add(it) } + private val observer = Observer { emission -> + emission?.let { receivedValues.add(it) } + } init { data.observeForever(observer) diff --git a/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt index d8cbe81..08af8fd 100644 --- a/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt @@ -15,287 +15,411 @@ */ package com.afollestad.nocknock.ui.addsite -//import com.afollestad.nocknock.R.string -//import com.afollestad.nocknock.data.model.Site -//import com.afollestad.nocknock.data.model.SiteSettings -//import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT -//import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE -//import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH -//import com.afollestad.nocknock.engine.validation.ValidationManager -//import com.afollestad.nocknock.mockDatabase -//import com.afollestad.nocknock.ui.addsite.AddSiteView -//import com.afollestad.nocknock.ui.addsite.InputErrors -//import com.afollestad.nocknock.ui.addsite.RealAddSitePresenter -//import com.afollestad.nocknock.utilities.ext.ScopeReceiver -//import com.google.common.truth.Truth.assertThat -//import com.nhaarman.mockitokotlin2.any -//import com.nhaarman.mockitokotlin2.argumentCaptor -//import com.nhaarman.mockitokotlin2.doAnswer -//import com.nhaarman.mockitokotlin2.mock -//import com.nhaarman.mockitokotlin2.never -//import com.nhaarman.mockitokotlin2.times -//import com.nhaarman.mockitokotlin2.verify -//import com.nhaarman.mockitokotlin2.verifyNoMoreInteractions -//import com.nhaarman.mockitokotlin2.whenever -//import kotlinx.coroutines.runBlocking -//import org.junit.After -//import org.junit.Before -//import org.junit.Test -// -//class AddSiteViewModelTest { -// -// private val database = mockDatabase() -// private val checkStatusManager = mock() -// private val view = mock() -// -// private val presenter = RealAddSitePresenter( -// database, -// checkStatusManager -// ) -// -// @Before fun setup() { -// doAnswer { -// val exec = it.getArgument(1) -// runBlocking { exec() } -// Unit -// }.whenever(view) -// .scopeWhileAttached(any(), any()) -// -// presenter.takeView(view) -// } -// -// @After fun destroy() { -// presenter.dropView() -// } -// -// @Test fun onUrlInputFocusChange_focused() { -// presenter.onUrlInputFocusChange(true, "hello") -// verifyNoMoreInteractions(view) -// } -// -// @Test fun onUrlInputFocusChange_empty() { -// presenter.onUrlInputFocusChange(false, "") -// verifyNoMoreInteractions(view) -// } -// -// @Test fun onUrlInputFocusChange_notHttpHttps() { -// presenter.onUrlInputFocusChange(false, "ftp://hello.com") -// verify(view).showOrHideUrlSchemeWarning(true) -// } -// -// @Test fun onUrlInputFocusChange_isHttpOrHttps() { -// presenter.onUrlInputFocusChange(false, "http://hello.com") -// presenter.onUrlInputFocusChange(false, "https://hello.com") -// verify(view, times(2)).showOrHideUrlSchemeWarning(false) -// } -// -// @Test fun onValidationModeSelected_statusCode() { -// presenter.onValidationModeSelected(0) -// verify(view).showOrHideValidationSearchTerm(false) -// verify(view).showOrHideScriptInput(false) -// verify(view).setValidationModeDescription( -// string.validation_mode_status_desc -// ) -// } -// -// @Test fun onValidationModeSelected_termSearch() { -// presenter.onValidationModeSelected(1) -// verify(view).showOrHideValidationSearchTerm(true) -// verify(view).showOrHideScriptInput(false) -// verify(view).setValidationModeDescription( -// string.validation_mode_term_desc -// ) -// } -// -// @Test fun onValidationModeSelected_javaScript() { -// presenter.onValidationModeSelected(2) -// verify(view).showOrHideValidationSearchTerm(false) -// verify(view).showOrHideScriptInput(true) -// verify(view).setValidationModeDescription( -// string.validation_mode_javascript_desc -// ) -// } -// -// @Test(expected = IllegalStateException::class) -// fun onValidationModeSelected_other() { -// presenter.onValidationModeSelected(3) -// } -// -// @Test fun commit_nameError() { -// presenter.commit( -// "", -// "https://test.com", -// 1, -// STATUS_CODE, -// null, -// 60000 -// ) -// -// val inputErrorsCaptor = argumentCaptor() -// verify(view).setInputErrors(inputErrorsCaptor.capture()) -// verify(checkStatusManager, never()) -// .scheduleCheck(any(), any(), any(), any()) -// -// val errors = inputErrorsCaptor.firstValue -// assertThat(errors.name).isEqualTo(string.please_enter_name) -// } -// -// @Test fun commit_urlEmptyError() { -// presenter.commit( -// "Testing", -// "", -// 1, -// STATUS_CODE, -// null, -// 60000 -// ) -// -// val inputErrorsCaptor = argumentCaptor() -// verify(view).setInputErrors(inputErrorsCaptor.capture()) -// verify(checkStatusManager, never()) -// .scheduleCheck(any(), any(), any(), any()) -// -// val errors = inputErrorsCaptor.firstValue -// assertThat(errors.url).isEqualTo(string.please_enter_url) -// } -// -// @Test fun commit_urlFormatError() { -// presenter.commit( -// "Testing", -// "ftp://hello.com", -// 1, -// STATUS_CODE, -// null, -// 60000 -// ) -// -// val inputErrorsCaptor = argumentCaptor() -// verify(view).setInputErrors(inputErrorsCaptor.capture()) -// verify(checkStatusManager, never()) -// .scheduleCheck(any(), any(), any(), any()) -// -// val errors = inputErrorsCaptor.firstValue -// assertThat(errors.url).isEqualTo(string.please_enter_valid_url) -// } -// -// @Test fun commit_checkIntervalError() { -// presenter.commit( -// "Testing", -// "https://hello.com", -// -1, -// STATUS_CODE, -// null, -// 60000 -// ) -// -// val inputErrorsCaptor = argumentCaptor() -// verify(view).setInputErrors(inputErrorsCaptor.capture()) -// verify(checkStatusManager, never()) -// .scheduleCheck(any(), any(), any(), any()) -// -// val errors = inputErrorsCaptor.firstValue -// assertThat(errors.checkInterval).isEqualTo( -// string.please_enter_check_interval -// ) -// } -// -// @Test fun commit_termSearchError() { -// presenter.commit( -// "Testing", -// "https://hello.com", -// 1, -// TERM_SEARCH, -// null, -// 60000 -// ) -// -// val inputErrorsCaptor = argumentCaptor() -// verify(view).setInputErrors(inputErrorsCaptor.capture()) -// verify(checkStatusManager, never()) -// .scheduleCheck(any(), any(), any(), any()) -// -// val errors = inputErrorsCaptor.firstValue -// assertThat(errors.termSearch).isEqualTo( -// string.please_enter_search_term -// ) -// } -// -// @Test fun commit_networkTimeout_error() { -// presenter.commit( -// "Testing", -// "https://hello.com", -// 1, -// STATUS_CODE, -// null, -// 0 -// ) -// -// val inputErrorsCaptor = argumentCaptor() -// verify(view).setInputErrors(inputErrorsCaptor.capture()) -// verify(checkStatusManager, never()) -// .scheduleCheck(any(), any(), any(), any()) -// -// val errors = inputErrorsCaptor.firstValue -// assertThat(errors.networkTimeout).isEqualTo( -// string.please_enter_networkTimeout -// ) -// } -// -// @Test fun commit_javaScript_error() { -// presenter.commit( -// "Testing", -// "https://hello.com", -// 1, -// JAVASCRIPT, -// null, -// 60000 -// ) -// -// val inputErrorsCaptor = argumentCaptor() -// verify(view).setInputErrors(inputErrorsCaptor.capture()) -// verify(checkStatusManager, never()) -// .scheduleCheck(any(), any(), any(), any()) -// -// val errors = inputErrorsCaptor.firstValue -// assertThat(errors.javaScript).isEqualTo( -// string.please_enter_javaScript -// ) -// } -// -// @Test fun commit_success() = runBlocking { -// presenter.commit( -// "Testing", -// "https://hello.com", -// 1, -// STATUS_CODE, -// null, -// 60000 -// ) -// -// val siteCaptor = argumentCaptor() -// val settingsCaptor = argumentCaptor() -// -// verify(view).setLoading() -// verify(database.siteDao()).insert(siteCaptor.capture()) -// verify(database.siteSettingsDao()).insert(settingsCaptor.capture()) -// verify(database.validationResultsDao(), never()).insert(any()) -// -// val settings = settingsCaptor.firstValue -// val model = siteCaptor.firstValue.copy( -// id = 1, // fill it in because our insert captor doesn't catch this -// settings = settings, -// lastResult = null -// ) -// -// verify(view, never()).setInputErrors(any()) -// verify(checkStatusManager).scheduleCheck( -// site = model, -// rightNow = true, -// cancelPrevious = true, -// fromFinishingJob = false -// ) -// -// verify(view).setDoneLoading() -// verify(view).onSiteAdded() -// } -//} +import androidx.arch.core.executor.testing.InstantTaskExecutorRule +import com.afollestad.nocknock.R +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.engine.validation.ValidationManager +import com.afollestad.nocknock.mockDatabase +import com.afollestad.nocknock.test +import com.google.common.truth.Truth.assertThat +import com.nhaarman.mockitokotlin2.any +import com.nhaarman.mockitokotlin2.argumentCaptor +import com.nhaarman.mockitokotlin2.mock +import com.nhaarman.mockitokotlin2.never +import com.nhaarman.mockitokotlin2.verify +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.ExperimentalCoroutinesApi +import kotlinx.coroutines.runBlocking +import org.junit.After +import org.junit.Rule +import org.junit.Test + +/** @author Aidan Follestad (@afollestad) */ +@ExperimentalCoroutinesApi +class AddSiteViewModelTest { + + private val database = mockDatabase() + private val validationManager = mock() + + @Rule @JvmField val rule = InstantTaskExecutorRule() + + private val viewModel = AddSiteViewModel( + database, + validationManager, + Dispatchers.Unconfined, + Dispatchers.Unconfined + ) + + @After fun tearDown() = viewModel.destroy() + + @Test fun onUrlWarningVisibility() { + val urlWarningVisibility = viewModel.onUrlWarningVisibility() + .test() + + viewModel.url.value = "" + urlWarningVisibility.assertValues(false) + + viewModel.url.value = "helloworld" + urlWarningVisibility.assertValues(true) + + viewModel.url.value = "http://helloworld.com" + urlWarningVisibility.assertValues(false) + + viewModel.url.value = "ftp://helloworld.com" + urlWarningVisibility.assertValues(true) + } + + @Test fun onValidationModeDescription() { + val description = viewModel.onValidationModeDescription() + .test() + + viewModel.validationMode.value = STATUS_CODE + description.assertValues(R.string.validation_mode_status_desc) + + viewModel.validationMode.value = TERM_SEARCH + description.assertValues(R.string.validation_mode_term_desc) + + viewModel.validationMode.value = JAVASCRIPT + description.assertValues(R.string.validation_mode_javascript_desc) + } + + @Test fun onValidationSearchTermVisibility() { + val visibility = viewModel.onValidationSearchTermVisibility() + .test() + + viewModel.validationMode.value = STATUS_CODE + visibility.assertValues(false) + + viewModel.validationMode.value = TERM_SEARCH + visibility.assertValues(true) + + viewModel.validationMode.value = JAVASCRIPT + visibility.assertValues(false) + } + + @Test fun onValidationScriptVisibility() { + val visibility = viewModel.onValidationScriptVisibility() + .test() + + viewModel.validationMode.value = STATUS_CODE + visibility.assertValues(false) + + viewModel.validationMode.value = TERM_SEARCH + visibility.assertValues(false) + + viewModel.validationMode.value = JAVASCRIPT + visibility.assertValues(true) + } + + @Test fun getCheckIntervalMs() { + viewModel.checkIntervalValue.value = 3 + viewModel.checkIntervalUnit.value = 200 + assertThat(viewModel.getCheckIntervalMs()).isEqualTo(600L) + } + + @Test fun getValidationArgs() { + viewModel.validationSearchTerm.value = "One" + viewModel.validationScript.value = "Two" + + viewModel.validationMode.value = STATUS_CODE + assertThat(viewModel.getValidationArgs()).isNull() + + viewModel.validationMode.value = TERM_SEARCH + assertThat(viewModel.getValidationArgs()).isEqualTo("One") + + viewModel.validationMode.value = JAVASCRIPT + assertThat(viewModel.getValidationArgs()).isEqualTo("Two") + } + + @Test fun commit_nameError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + name.value = "" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertValues(R.string.please_enter_name) + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_urlEmptyError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + url.value = "" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertValues(R.string.please_enter_url) + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_urlFormatError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + url.value = "ftp://www.idk.com" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertValues(R.string.please_enter_valid_url) + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_networkTimeout_error() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + timeout.value = 0 + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertValues(R.string.please_enter_networkTimeout) + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_checkIntervalError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + checkIntervalValue.value = 0 + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertValues(R.string.please_enter_check_interval) + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_termSearchError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + validationMode.value = TERM_SEARCH + validationSearchTerm.value = "" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertValues(R.string.please_enter_search_term) + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_javaScript_error() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + validationMode.value = JAVASCRIPT + validationScript.value = "" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertValues(R.string.please_enter_javaScript) + + verify(onDone, never()).invoke() + } + + @Test fun commit_success() = runBlocking { + val isLoading = viewModel.onIsLoading() + .test() + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + + fillInModel() + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + val siteCaptor = argumentCaptor() + val settingsCaptor = argumentCaptor() + + isLoading.assertValues(true, false) + verify(database.siteDao()).insert(siteCaptor.capture()) + verify(database.siteSettingsDao()).insert(settingsCaptor.capture()) + verify(database.validationResultsDao(), never()).insert(any()) + + val settings = settingsCaptor.firstValue + val model = siteCaptor.firstValue.copy( + id = 1, // fill it in because our insert captor doesn't catch this + settings = settings, + lastResult = null + ) + + verify(validationManager).scheduleCheck( + site = model, + rightNow = true, + cancelPrevious = true, + fromFinishingJob = false + ) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone).invoke() + } + + private fun fillInModel() = viewModel.apply { + name.value = "Welcome to Wakanda" + url.value = "https://www.wakanda.gov" + timeout.value = 10000 + validationMode.value = TERM_SEARCH + validationSearchTerm.value = "T'Challa" + validationScript.value = null + checkIntervalValue.value = 60 + checkIntervalUnit.value = 1000 + } +} diff --git a/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt index 70e732f..fba42db 100644 --- a/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ui/main/MainViewModelTest.kt @@ -27,12 +27,14 @@ import com.afollestad.nocknock.test import com.nhaarman.mockitokotlin2.mock import com.nhaarman.mockitokotlin2.verify import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.runBlocking import org.junit.After import org.junit.Rule import org.junit.Test /** @author Aidan Follestad (@afollestad) */ +@ExperimentalCoroutinesApi class MainViewModelTest { private val database = mockDatabase() From 8470b65df1b3be8f86040dc88472141291ffbacf Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Thu, 6 Dec 2018 20:27:38 -0800 Subject: [PATCH 016/114] ViewSiteViewModelTest --- .../ui/viewsite/ViewSiteActivityExt.kt | 2 +- .../nocknock/ui/viewsite/ViewSiteViewModel.kt | 22 +- .../ui/viewsite/ViewSiteViewModelTest.kt | 607 +++++++++++++++++- .../nocknock/utilities/ext/DateExt.kt | 2 +- 4 files changed, 618 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt index e9bfe1a..2504966 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt @@ -45,7 +45,7 @@ internal fun ViewSiteActivity.maybeDisableChecks() { message( text = context.getString(R.string.disable_automatic_checks_prompt, model.name).toHtml() ) - positiveButton(R.string.disable) { viewModel.disable() } + positiveButton(R.string.disable) { viewModel.disableSite() } negativeButton(android.R.string.cancel) } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt index 76258c5..a88013c 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt @@ -16,6 +16,8 @@ package com.afollestad.nocknock.ui.viewsite import androidx.annotation.CheckResult +import androidx.annotation.VisibleForTesting +import androidx.annotation.VisibleForTesting.PRIVATE import androidx.lifecycle.LifecycleObserver import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData @@ -90,10 +92,7 @@ class ViewSiteViewModel( @CheckResult fun onUrlWarningVisibility(): LiveData { return url.map { val parsed = HttpUrl.parse(it) - return@map it.isNotEmpty() && - parsed != null && - parsed.scheme() != "http" && - parsed.scheme() != "https" + return@map it.isNotEmpty() && parsed == null } } @@ -101,11 +100,10 @@ class ViewSiteViewModel( @CheckResult fun onValidationModeDescription(): LiveData { return validationMode.map { - when (it) { + when (it!!) { STATUS_CODE -> R.string.validation_mode_status_desc TERM_SEARCH -> R.string.validation_mode_term_desc JAVASCRIPT -> R.string.validation_mode_javascript_desc - else -> throw IllegalStateException("Unknown validation mode: $it") } } } @@ -204,7 +202,7 @@ class ViewSiteViewModel( } } - fun disable() { + fun disableSite() { validationManager.cancelCheck(site) notificationManager.cancelStatusNotification(site) @@ -224,13 +222,15 @@ class ViewSiteViewModel( } // Utilities - private fun getCheckIntervalMs(): Long { + @VisibleForTesting(otherwise = PRIVATE) + fun getCheckIntervalMs(): Long { val value = checkIntervalValue.value ?: return 0 val unit = checkIntervalUnit.value ?: return 0 return value * unit } - private fun getValidationArgs(): String? { + @VisibleForTesting(otherwise = PRIVATE) + fun getValidationArgs(): String? { return when (validationMode.value) { TERM_SEARCH -> validationSearchTerm.value JAVASCRIPT -> validationScript.value @@ -281,13 +281,13 @@ class ViewSiteViewModel( } // Validate arguments - if (validationMode == TERM_SEARCH && + if (validationMode.value == TERM_SEARCH && validationSearchTerm.value.isNullOrEmpty() ) { errorCount++ validationSearchTermError.value = R.string.please_enter_search_term validationScriptError.value = null - } else if (validationMode == JAVASCRIPT && + } else if (validationMode.value == JAVASCRIPT && validationScript.value.isNullOrEmpty() ) { errorCount++ diff --git a/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt b/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt index e06b747..c249e2c 100644 --- a/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt +++ b/app/src/test/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt @@ -15,6 +15,609 @@ */ package com.afollestad.nocknock.ui.viewsite -class ViewSiteViewModelTest +import androidx.arch.core.executor.testing.InstantTaskExecutorRule +import com.afollestad.nocknock.MOCK_MODEL_1 +import com.afollestad.nocknock.R +import com.afollestad.nocknock.data.model.Site +import com.afollestad.nocknock.data.model.SiteSettings +import com.afollestad.nocknock.data.model.Status.CHECKING +import com.afollestad.nocknock.data.model.Status.ERROR +import com.afollestad.nocknock.data.model.Status.OK +import com.afollestad.nocknock.data.model.Status.WAITING +import com.afollestad.nocknock.data.model.ValidationMode.JAVASCRIPT +import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE +import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH +import com.afollestad.nocknock.data.model.ValidationResult +import com.afollestad.nocknock.engine.validation.ValidationManager +import com.afollestad.nocknock.mockDatabase +import com.afollestad.nocknock.notifications.NockNotificationManager +import com.afollestad.nocknock.test +import com.afollestad.nocknock.utilities.providers.StringProvider +import com.google.common.truth.Truth +import com.google.common.truth.Truth.assertThat +import com.nhaarman.mockitokotlin2.any +import com.nhaarman.mockitokotlin2.argumentCaptor +import com.nhaarman.mockitokotlin2.doAnswer +import com.nhaarman.mockitokotlin2.mock +import com.nhaarman.mockitokotlin2.never +import com.nhaarman.mockitokotlin2.verify +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.ExperimentalCoroutinesApi +import kotlinx.coroutines.runBlocking +import org.junit.After +import org.junit.Rule +import org.junit.Test +import java.util.Calendar -// TODO this will be mostly identical to the add site test +/** @author Aidan Follestad (@afollestad) */ +@ExperimentalCoroutinesApi +class ViewSiteViewModelTest { + + companion object { + private const val TEXT_NONE = "None" + private const val TEXT_EVERYTHING_CHECKS_OUT = "Everything checks out!" + private const val TEXT_WAITING = "Waiting..." + private const val TEXT_CHECKING = "Checking..." + private const val TEXT_CHECKS_DISABLED = "Automatic Checks Disabled" + } + + private val stringProvider = mock { + on { get(any()) } doAnswer { inv -> + val id = inv.getArgument(0) + when (id) { + R.string.none -> TEXT_NONE + R.string.everything_checks_out -> TEXT_EVERYTHING_CHECKS_OUT + R.string.waiting -> TEXT_WAITING + R.string.checking_status -> TEXT_CHECKING + R.string.auto_checks_disabled -> TEXT_CHECKS_DISABLED + else -> "" + } + } + } + private val database = mockDatabase() + private val validationManager = mock() + private val notificationManager = mock() + + @Rule @JvmField val rule = InstantTaskExecutorRule() + + private val viewModel = ViewSiteViewModel( + stringProvider, + database, + notificationManager, + validationManager, + Dispatchers.Unconfined, + Dispatchers.Unconfined + ) + + @After fun tearDown() = viewModel.destroy() + + @Test fun onUrlWarningVisibility() { + val urlWarningVisibility = viewModel.onUrlWarningVisibility() + .test() + + viewModel.url.value = "" + urlWarningVisibility.assertValues(false) + + viewModel.url.value = "helloworld" + urlWarningVisibility.assertValues(true) + + viewModel.url.value = "http://helloworld.com" + urlWarningVisibility.assertValues(false) + + viewModel.url.value = "ftp://helloworld.com" + urlWarningVisibility.assertValues(true) + } + + @Test fun onValidationModeDescription() { + val description = viewModel.onValidationModeDescription() + .test() + + viewModel.validationMode.value = STATUS_CODE + description.assertValues(R.string.validation_mode_status_desc) + + viewModel.validationMode.value = TERM_SEARCH + description.assertValues(R.string.validation_mode_term_desc) + + viewModel.validationMode.value = JAVASCRIPT + description.assertValues(R.string.validation_mode_javascript_desc) + } + + @Test fun onValidationSearchTermVisibility() { + val visibility = viewModel.onValidationSearchTermVisibility() + .test() + + viewModel.validationMode.value = STATUS_CODE + visibility.assertValues(false) + + viewModel.validationMode.value = TERM_SEARCH + visibility.assertValues(true) + + viewModel.validationMode.value = JAVASCRIPT + visibility.assertValues(false) + } + + @Test fun onValidationScriptVisibility() { + val visibility = viewModel.onValidationScriptVisibility() + .test() + + viewModel.validationMode.value = STATUS_CODE + visibility.assertValues(false) + + viewModel.validationMode.value = TERM_SEARCH + visibility.assertValues(false) + + viewModel.validationMode.value = JAVASCRIPT + visibility.assertValues(true) + } + + @Test fun onDisableChecksVisibility() { + val visibility = viewModel.onDisableChecksVisibility() + .test() + + viewModel.disabled.value = false + visibility.assertValues(true) + + viewModel.disabled.value = true + visibility.assertValues(false) + } + + @Test fun onDoneButtonText() { + val text = viewModel.onDoneButtonText() + .test() + + viewModel.disabled.value = false + text.assertValues(R.string.save_changes) + + viewModel.disabled.value = true + text.assertValues(R.string.renable_and_save_changes) + } + + @Test fun onLastCheckResultText() { + val text = viewModel.onLastCheckResultText() + .test() + val lastResult = ValidationResult( + siteId = 1, + timestampMs = 10, + status = OK, + reason = "Hello, world!" + ) + + viewModel.lastResult.value = null + text.assertValues(TEXT_NONE) + + viewModel.lastResult.value = lastResult + text.assertValues(TEXT_EVERYTHING_CHECKS_OUT) + + viewModel.lastResult.value = lastResult.copy(status = WAITING) + text.assertValues(TEXT_WAITING) + + viewModel.lastResult.value = lastResult.copy(status = CHECKING) + text.assertValues(TEXT_CHECKING) + + viewModel.lastResult.value = lastResult.copy( + status = ERROR, + reason = "Uh oh!" + ) + text.assertValues("Uh oh!") + } + + @Test fun onNextCheckText() { + viewModel.checkIntervalValue.value = 60 + viewModel.checkIntervalUnit.value = 5000 + + val text = viewModel.onNextCheckText() + .test() + val calendar = Calendar.getInstance() + .apply { + set(Calendar.YEAR, 2018) + set(Calendar.MONTH, Calendar.DECEMBER) + set(Calendar.DAY_OF_MONTH, 6) + set(Calendar.HOUR_OF_DAY, 8) + set(Calendar.MINUTE, 30) + set(Calendar.SECOND, 0) + } + val lastResult = ValidationResult( + siteId = 1, + timestampMs = calendar.timeInMillis, + status = OK, + reason = null + ) + + viewModel.disabled.value = true + viewModel.lastResult.value = lastResult + text.assertValues(TEXT_CHECKS_DISABLED) + + viewModel.disabled.value = false + text.assertValues("December 6, 8:35AM") + } + + @Test fun getCheckIntervalMs() { + viewModel.checkIntervalValue.value = 3 + viewModel.checkIntervalUnit.value = 200 + Truth.assertThat(viewModel.getCheckIntervalMs()) + .isEqualTo(600L) + } + + @Test fun getValidationArgs() { + viewModel.validationSearchTerm.value = "One" + viewModel.validationScript.value = "Two" + + viewModel.validationMode.value = STATUS_CODE + Truth.assertThat(viewModel.getValidationArgs()) + .isNull() + + viewModel.validationMode.value = TERM_SEARCH + Truth.assertThat(viewModel.getValidationArgs()) + .isEqualTo("One") + + viewModel.validationMode.value = JAVASCRIPT + Truth.assertThat(viewModel.getValidationArgs()) + .isEqualTo("Two") + } + + @Test fun commit_nameError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + name.value = "" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertValues(R.string.please_enter_name) + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_urlEmptyError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + url.value = "" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertValues(R.string.please_enter_url) + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_urlFormatError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + url.value = "ftp://www.idk.com" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertValues(R.string.please_enter_valid_url) + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_networkTimeout_error() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + timeout.value = 0 + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertValues(R.string.please_enter_networkTimeout) + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_checkIntervalError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + checkIntervalValue.value = 0 + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertValues(R.string.please_enter_check_interval) + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_termSearchError() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + validationMode.value = TERM_SEARCH + validationSearchTerm.value = "" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertValues(R.string.please_enter_search_term) + onScriptError.assertNoValues() + + verify(onDone, never()).invoke() + } + + @Test fun commit_javaScript_error() { + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + + fillInModel().apply { + validationMode.value = JAVASCRIPT + validationScript.value = "" + } + val onDone = mock<() -> Unit>() + viewModel.commit(onDone) + + verify(validationManager, never()) + .scheduleCheck(any(), any(), any(), any()) + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertValues(R.string.please_enter_javaScript) + + verify(onDone, never()).invoke() + } + + @Test fun commit_success() = runBlocking { + val isLoading = viewModel.onIsLoading() + .test() + val onNameError = viewModel.onNameError() + .test() + val onUrlError = viewModel.onUrlError() + .test() + val onTimeoutError = viewModel.onTimeoutError() + .test() + val onSearchTermError = viewModel.onValidationSearchTermError() + .test() + val onScriptError = viewModel.onValidationScriptError() + .test() + val onCheckIntervalError = viewModel.onCheckIntervalError() + .test() + + fillInModel() + val onDone = mock<() -> Unit>() + + viewModel.site = MOCK_MODEL_1 + viewModel.commit(onDone) + + val siteCaptor = argumentCaptor() + val settingsCaptor = argumentCaptor() + val resultCaptor = argumentCaptor() + + isLoading.assertValues(true, false) + verify(database.siteDao()).update(siteCaptor.capture()) + verify(database.siteSettingsDao()).update(settingsCaptor.capture()) + verify(database.validationResultsDao()).update(resultCaptor.capture()) + + // From fillInModel() below + val updatedSettings = MOCK_MODEL_1.settings!!.copy( + networkTimeout = 30000, + validationMode = JAVASCRIPT, + validationArgs = "throw 'Oh no!'", + disabled = false, + validationIntervalMs = 24 * 60000 + ) + val updatedResult = MOCK_MODEL_1.lastResult!!.copy( + status = WAITING + ) + val updatedModel = MOCK_MODEL_1.copy( + name = "Hello There", + url = "https://www.hellothere.com", + settings = updatedSettings, + lastResult = updatedResult + ) + + assertThat(siteCaptor.firstValue).isEqualTo(updatedModel) + assertThat(settingsCaptor.firstValue).isEqualTo(updatedSettings) + assertThat(resultCaptor.firstValue).isEqualTo(updatedResult) + + verify(validationManager).scheduleCheck( + site = updatedModel, + rightNow = true, + cancelPrevious = true, + fromFinishingJob = false + ) + + onNameError.assertNoValues() + onUrlError.assertNoValues() + onTimeoutError.assertNoValues() + onCheckIntervalError.assertNoValues() + onSearchTermError.assertNoValues() + onScriptError.assertNoValues() + + verify(onDone).invoke() + } + + @Test fun checkNow() { + val status = viewModel.status.test() + + viewModel.site = MOCK_MODEL_1 + val expectedModel = MOCK_MODEL_1.copy( + lastResult = MOCK_MODEL_1.lastResult!!.copy( + status = WAITING + ) + ) + + viewModel.checkNow() + verify(validationManager).scheduleCheck( + site = expectedModel, + rightNow = true, + cancelPrevious = true + ) + status.assertValues(WAITING) + } + + @Test fun removeSite() { + val isLoading = viewModel.onIsLoading() + .test() + val onDone = mock<() -> Unit>() + + viewModel.site = MOCK_MODEL_1 + viewModel.removeSite(onDone) + isLoading.assertValues(true, false) + + verify(validationManager).cancelCheck(MOCK_MODEL_1) + verify(notificationManager).cancelStatusNotification(MOCK_MODEL_1) + verify(database.siteDao()).delete(MOCK_MODEL_1) + verify(database.siteSettingsDao()).delete(MOCK_MODEL_1.settings!!) + verify(database.validationResultsDao()).delete(MOCK_MODEL_1.lastResult!!) + verify(onDone).invoke() + } + + @Test fun disableSite() { + val isLoading = viewModel.onIsLoading() + .test() + val disabled = viewModel.disabled.test() + + viewModel.site = MOCK_MODEL_1 + viewModel.disableSite() + isLoading.assertValues(true, false) + disabled.assertValues(true) + + val expectedSite = MOCK_MODEL_1.copy( + settings = MOCK_MODEL_1.settings!!.copy( + disabled = true + ) + ) + + verify(validationManager).cancelCheck(MOCK_MODEL_1) + verify(notificationManager).cancelStatusNotification(MOCK_MODEL_1) + verify(database.siteDao()).update(expectedSite) + verify(database.siteSettingsDao()).update(expectedSite.settings!!) + verify(database.validationResultsDao()).update(expectedSite.lastResult!!) + } + + private fun fillInModel() = viewModel.apply { + name.value = "Hello There" + url.value = "https://www.hellothere.com" + timeout.value = 30000 + validationMode.value = JAVASCRIPT + validationSearchTerm.value = null + validationScript.value = "throw 'Oh no!'" + checkIntervalValue.value = 24 + checkIntervalUnit.value = 60000 + } +} diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt index 5ea3d77..64c1008 100644 --- a/common/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt @@ -23,6 +23,6 @@ fun Long.formatDate(): String { if (this <= 0) { return "(None)" } - val df = SimpleDateFormat("MMMM dd, hh:mm:ss a", Locale.getDefault()) + val df = SimpleDateFormat("MMMM d, h:mma", Locale.getDefault()) return df.format(Date(this)) } From 9a849ab8ac2fae643ba5c6b4ea980bf976819909 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Thu, 6 Dec 2018 22:01:45 -0800 Subject: [PATCH 017/114] Koin setup tweaks --- .../com/afollestad/nocknock/NockNockApp.kt | 6 +- .../afollestad/nocknock/koin/MainModule.kt | 12 +-- .../nocknock/koin/ViewModelModule.kt | 4 +- .../nocknock/ui/main/MainActivity.kt | 3 +- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 3 +- .../nocknock/utilities/CommonModule.kt | 39 ++++++++++ .../nocknock/utilities/UtilitiesModule.kt | 74 ------------------- .../utilities/providers/BitmapProvider.kt | 37 ---------- .../providers/NotificationProvider.kt | 4 +- .../nocknock/engine/EngineModule.kt | 4 +- .../notifications/NockNotificationManager.kt | 6 +- .../notifications/NotificationsModule.kt | 38 ++++++++-- .../NockNotificationManagerTest.kt | 35 ++++----- 13 files changed, 100 insertions(+), 165 deletions(-) create mode 100644 common/src/main/java/com/afollestad/nocknock/utilities/CommonModule.kt delete mode 100644 common/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt delete mode 100644 common/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt diff --git a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt index 6e08bd5..9cc5a8e 100644 --- a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt +++ b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt @@ -13,6 +13,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +@file:Suppress("unused") + package com.afollestad.nocknock import android.app.Application @@ -21,7 +23,7 @@ import com.afollestad.nocknock.koin.mainModule import com.afollestad.nocknock.koin.viewModelModule import com.afollestad.nocknock.notifications.NockNotificationManager import com.afollestad.nocknock.notifications.notificationsModule -import com.afollestad.nocknock.utilities.utilitiesModule +import com.afollestad.nocknock.utilities.commonModule import org.koin.android.ext.android.inject import org.koin.android.ext.android.startKoin import timber.log.Timber @@ -42,7 +44,7 @@ class NockNockApp : Application() { val modules = listOf( mainModule, engineModule, - utilitiesModule, + commonModule, notificationsModule, viewModelModule ) diff --git a/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt b/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt index 9667287..33a3df5 100644 --- a/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt +++ b/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt @@ -21,23 +21,19 @@ import android.app.job.JobScheduler import android.content.Context.JOB_SCHEDULER_SERVICE import android.content.Context.NOTIFICATION_SERVICE import androidx.room.Room.databaseBuilder -import com.afollestad.nocknock.R import com.afollestad.nocknock.data.AppDatabase -import com.afollestad.nocknock.notifications.Qualifiers.APP_ICON_RES +import com.afollestad.nocknock.notifications.Qualifiers.MAIN_ACTIVITY_CLASS import com.afollestad.nocknock.ui.main.MainActivity -import com.afollestad.nocknock.utilities.Qualifiers.MAIN_ACTIVITY_CLASS import com.afollestad.nocknock.utilities.ext.systemService import okhttp3.OkHttpClient import org.koin.dsl.module.module -const val MAIN_MODULE = "main" +val mainActivityCls = MainActivity::class.java /** @author Aidan Follestad (@afollestad) */ -val mainModule = module(MAIN_MODULE) { +val mainModule = module { - single(name = APP_ICON_RES) { R.mipmap.ic_launcher } - - single(name = MAIN_ACTIVITY_CLASS) { MainActivity::class.java } + single(name = MAIN_ACTIVITY_CLASS) { mainActivityCls } single { databaseBuilder(get(), AppDatabase::class.java, "NockNock.db").build() } diff --git a/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt b/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt index 55c1f57..ab8cd79 100644 --- a/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt +++ b/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt @@ -23,10 +23,8 @@ import com.afollestad.nocknock.utilities.Qualifiers.MAIN_DISPATCHER import org.koin.androidx.viewmodel.ext.koin.viewModel import org.koin.dsl.module.module -const val VIEW_MODEL_MODULE = "view_models" - /** @author Aidan Follestad (@afollestad) */ -val viewModelModule = module(VIEW_MODEL_MODULE) { +val viewModelModule = module { viewModel { MainViewModel( diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt index 4ee0e75..0c9bc7d 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt @@ -50,10 +50,11 @@ class MainActivity : AppCompatActivity() { private lateinit var adapter: ServerAdapter - private val statusUpdateReceiver = + private val statusUpdateReceiver by lazy { StatusUpdateIntentReceiver(application, intentProvider) { viewModel.postSiteUpdate(it) } + } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index c4d9ad4..fddf3d7 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -58,10 +58,11 @@ class ViewSiteActivity : AppCompatActivity() { internal val viewModel by viewModel() private val intentProvider by inject() - private val statusUpdateReceiver = + private val statusUpdateReceiver by lazy { StatusUpdateIntentReceiver(application, intentProvider) { viewModel.setModel(it) } + } @SuppressLint("SetTextI18n") override fun onCreate(savedInstanceState: Bundle?) { diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/CommonModule.kt b/common/src/main/java/com/afollestad/nocknock/utilities/CommonModule.kt new file mode 100644 index 0000000..49ceb52 --- /dev/null +++ b/common/src/main/java/com/afollestad/nocknock/utilities/CommonModule.kt @@ -0,0 +1,39 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.utilities + +import com.afollestad.nocknock.utilities.Qualifiers.IO_DISPATCHER +import com.afollestad.nocknock.utilities.Qualifiers.MAIN_DISPATCHER +import com.afollestad.nocknock.utilities.providers.RealStringProvider +import com.afollestad.nocknock.utilities.providers.StringProvider +import kotlinx.coroutines.CoroutineDispatcher +import kotlinx.coroutines.Dispatchers +import org.koin.dsl.module.module + +object Qualifiers { + const val MAIN_DISPATCHER = "main_dispatcher" + const val IO_DISPATCHER = "io_dispatcher" +} + +/** @author Aidan Follestad (@afollestad) */ +val commonModule = module { + + factory(name = MAIN_DISPATCHER) { Dispatchers.Main } + + factory(name = IO_DISPATCHER) { Dispatchers.IO } + + factory { RealStringProvider(get()) } bind StringProvider::class +} diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt b/common/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt deleted file mode 100644 index e48adb3..0000000 --- a/common/src/main/java/com/afollestad/nocknock/utilities/UtilitiesModule.kt +++ /dev/null @@ -1,74 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.utilities - -import com.afollestad.nocknock.utilities.Qualifiers.IO_DISPATCHER -import com.afollestad.nocknock.utilities.Qualifiers.MAIN_ACTIVITY_CLASS -import com.afollestad.nocknock.utilities.Qualifiers.MAIN_DISPATCHER -import com.afollestad.nocknock.utilities.providers.BitmapProvider -import com.afollestad.nocknock.utilities.providers.BundleProvider -import com.afollestad.nocknock.utilities.providers.IntentProvider -import com.afollestad.nocknock.utilities.providers.JobInfoProvider -import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider -import com.afollestad.nocknock.utilities.providers.NotificationProvider -import com.afollestad.nocknock.utilities.providers.RealBitmapProvider -import com.afollestad.nocknock.utilities.providers.RealBundleProvider -import com.afollestad.nocknock.utilities.providers.RealIntentProvider -import com.afollestad.nocknock.utilities.providers.RealJobInfoProvider -import com.afollestad.nocknock.utilities.providers.RealNotificationChannelProvider -import com.afollestad.nocknock.utilities.providers.RealNotificationProvider -import com.afollestad.nocknock.utilities.providers.RealSdkProvider -import com.afollestad.nocknock.utilities.providers.RealStringProvider -import com.afollestad.nocknock.utilities.providers.SdkProvider -import com.afollestad.nocknock.utilities.providers.StringProvider -import kotlinx.coroutines.Dispatchers -import org.koin.dsl.module.module - -const val UTILITIES_MODULE = "utilities" - -object Qualifiers { - const val MAIN_ACTIVITY_CLASS = "main.main_activity_class" - const val MAIN_DISPATCHER = "main.main_dispatcher" - const val IO_DISPATCHER = "main.io_dispatcher" -} - -/** @author Aidan Follestad (@afollestad) */ -val utilitiesModule = module(UTILITIES_MODULE) { - - factory(name = MAIN_DISPATCHER) { Dispatchers.Main } - - factory(name = IO_DISPATCHER) { Dispatchers.IO } - - factory { RealSdkProvider() } bind SdkProvider::class - - factory { RealBitmapProvider(get()) } bind BitmapProvider::class - - factory { RealStringProvider(get()) } bind StringProvider::class - - factory { - RealIntentProvider(get(), get(name = MAIN_ACTIVITY_CLASS)) - } bind IntentProvider::class - - factory { - RealNotificationChannelProvider(get()) - } bind NotificationChannelProvider::class - - factory { RealNotificationProvider(get()) } bind NotificationProvider::class - - factory { RealBundleProvider() } bind BundleProvider::class - - factory { RealJobInfoProvider(get()) } bind JobInfoProvider::class -} diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt deleted file mode 100644 index 7d87780..0000000 --- a/common/src/main/java/com/afollestad/nocknock/utilities/providers/BitmapProvider.kt +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.utilities.providers - -import android.content.Context -import android.graphics.Bitmap -import android.graphics.BitmapFactory.decodeResource -import androidx.annotation.DrawableRes - -/** @author Aidan Follestad (@afollestad) */ -interface BitmapProvider { - - fun get(@DrawableRes res: Int): Bitmap -} - -/** @author Aidan Follestad (@afollestad) */ -class RealBitmapProvider( - private val context: Context -) : BitmapProvider { - - override fun get(res: Int): Bitmap { - return decodeResource(context.resources, res) - } -} diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt index e0f45f1..6a85298 100644 --- a/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt @@ -31,7 +31,7 @@ interface NotificationProvider { content: String, intent: PendingIntent, smallIcon: Int, - largeIcon: Bitmap + largeIcon: Bitmap? = null ): Notification } @@ -46,7 +46,7 @@ class RealNotificationProvider( content: String, intent: PendingIntent, smallIcon: Int, - largeIcon: Bitmap + largeIcon: Bitmap? ): Notification { return NotificationCompat.Builder(context, channelId) .setContentTitle(title) diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt index e766ca3..fbd3a45 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt @@ -19,10 +19,8 @@ import com.afollestad.nocknock.engine.validation.RealValidationManager import com.afollestad.nocknock.engine.validation.ValidationManager import org.koin.dsl.module.module -const val ENGINE_MODULE = "engine" - /** @author Aidan Follestad (@afollestad) */ -val engineModule = module(ENGINE_MODULE) { +val engineModule = module { single { RealValidationManager(get(), get(), get(), get(), get(), get()) diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt index 981a442..e497151 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt @@ -19,7 +19,6 @@ import android.annotation.TargetApi import android.app.NotificationManager import android.os.Build.VERSION_CODES import com.afollestad.nocknock.notifications.Channel.CheckFailures -import com.afollestad.nocknock.utilities.providers.BitmapProvider import com.afollestad.nocknock.utilities.providers.CanNotifyModel import com.afollestad.nocknock.utilities.providers.IntentProvider import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider @@ -44,9 +43,7 @@ interface NockNotificationManager { /** @author Aidan Follestad (@afollestad) */ class RealNockNotificationManager( - private val appIconRes: Int, private val stockManager: NotificationManager, - private val bitmapProvider: BitmapProvider, private val stringProvider: StringProvider, private val intentProvider: IntentProvider, private val channelProvider: NotificationChannelProvider, @@ -78,8 +75,7 @@ class RealNockNotificationManager( title = model.notifyName(), content = stringProvider.get(R.string.something_wrong), intent = intent, - smallIcon = R.drawable.ic_notification, - largeIcon = bitmapProvider.get(appIconRes) + smallIcon = R.drawable.ic_notification ) stockManager.notify(model.notifyTag(), model.notificationId(), newNotification) diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt index 3f2a9a6..73274c5 100644 --- a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt +++ b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt @@ -15,21 +15,45 @@ */ package com.afollestad.nocknock.notifications -import com.afollestad.nocknock.notifications.Qualifiers.APP_ICON_RES +import com.afollestad.nocknock.notifications.Qualifiers.MAIN_ACTIVITY_CLASS +import com.afollestad.nocknock.utilities.providers.BundleProvider +import com.afollestad.nocknock.utilities.providers.IntentProvider +import com.afollestad.nocknock.utilities.providers.JobInfoProvider +import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider +import com.afollestad.nocknock.utilities.providers.NotificationProvider +import com.afollestad.nocknock.utilities.providers.RealBundleProvider +import com.afollestad.nocknock.utilities.providers.RealIntentProvider +import com.afollestad.nocknock.utilities.providers.RealJobInfoProvider +import com.afollestad.nocknock.utilities.providers.RealNotificationChannelProvider +import com.afollestad.nocknock.utilities.providers.RealNotificationProvider +import com.afollestad.nocknock.utilities.providers.RealSdkProvider +import com.afollestad.nocknock.utilities.providers.SdkProvider import org.koin.dsl.module.module -const val NOTIFICATIONS_MODULE = "notifications" - object Qualifiers { - const val APP_ICON_RES = "main.app_icon_res" + const val MAIN_ACTIVITY_CLASS = "main_activity_class" } -val notificationsModule = module(NOTIFICATIONS_MODULE) { +val notificationsModule = module { + + factory { + RealIntentProvider(get(), get(name = MAIN_ACTIVITY_CLASS)) + } bind IntentProvider::class + + factory { RealSdkProvider() } bind SdkProvider::class + + factory { + RealNotificationChannelProvider(get()) + } bind NotificationChannelProvider::class + + factory { RealNotificationProvider(get()) } bind NotificationProvider::class + + factory { RealBundleProvider() } bind BundleProvider::class + + factory { RealJobInfoProvider(get()) } bind JobInfoProvider::class single { RealNockNotificationManager( - get(name = APP_ICON_RES), - get(), get(), get(), get(), diff --git a/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt b/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt index de614fa..0f92bc0 100644 --- a/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt +++ b/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt @@ -19,11 +19,8 @@ import android.app.Notification import android.app.NotificationChannel import android.app.NotificationManager import android.app.PendingIntent -import android.graphics.Bitmap -import com.afollestad.nocknock.data.legacy.ServerModel -import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE import com.afollestad.nocknock.notifications.Channel.CheckFailures -import com.afollestad.nocknock.utilities.providers.BitmapProvider +import com.afollestad.nocknock.utilities.providers.CanNotifyModel import com.afollestad.nocknock.utilities.providers.IntentProvider import com.afollestad.nocknock.utilities.providers.NotificationChannelProvider import com.afollestad.nocknock.utilities.providers.NotificationProvider @@ -48,10 +45,6 @@ class NockNotificationManagerTest { private val somethingWentWrong = "something went wrong" private val stockManager = mock() - private val appIcon = mock() - private val bitmapProvider = mock { - on { get(appIconRes) } doReturn appIcon - } private val stringProvider = mock { on { get(R.string.something_wrong) } doReturn somethingWentWrong } @@ -60,9 +53,7 @@ class NockNotificationManagerTest { private val notificationProvider = mock() private val manager = RealNockNotificationManager( - appIconRes, stockManager, - bitmapProvider, stringProvider, intentProvider, channelProvider, @@ -121,19 +112,18 @@ class NockNotificationManagerTest { whenever( notificationProvider.create( CheckFailures.id, - model.name, + "Testing", somethingWentWrong, pendingIntent, - R.drawable.ic_notification, - appIcon + R.drawable.ic_notification ) ).doReturn(notification) manager.postStatusNotification(model) verify(stockManager).notify( - model.url, - BASE_NOTIFICATION_REQUEST_CODE + model.id, + "https://hello.com", + BASE_NOTIFICATION_REQUEST_CODE + 1, notification ) verifyNoMoreInteractions(stockManager) @@ -142,7 +132,7 @@ class NockNotificationManagerTest { @Test fun cancelStatusNotification() { val model = fakeModel() manager.cancelStatusNotification(model) - verify(stockManager).cancel(BASE_NOTIFICATION_REQUEST_CODE + model.id) + verify(stockManager).cancel(BASE_NOTIFICATION_REQUEST_CODE + 1) verifyNoMoreInteractions(stockManager) } @@ -152,10 +142,11 @@ class NockNotificationManagerTest { verifyNoMoreInteractions(stockManager) } - private fun fakeModel() = ServerModel( - id = 1, - url = "https://hello.com", - name = "Testing", - validationMode = STATUS_CODE - ) + private fun fakeModel() = object : CanNotifyModel { + override fun notifyId() = 1 + + override fun notifyName() = "Testing" + + override fun notifyTag() = "https://hello.com" + } } From fc6bdf1c3940f616175b5de7754a07323bb9a677 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Fri, 7 Dec 2018 00:11:13 -0800 Subject: [PATCH 018/114] View <-> LiveData connection tweaks, some re-org --- .../com/afollestad/nocknock/AppExt.kt | 0 .../com/afollestad/nocknock/NockNockApp.kt | 0 .../nocknock/adapter/SiteAdapter.kt | 0 .../nocknock/adapter/SiteDiffCallback.kt | 0 .../broadcasts/StatusUpdateIntentReceiver.kt | 0 .../nocknock/dialogs/AboutDialog.kt | 0 .../afollestad/nocknock/koin/MainModule.kt | 0 .../nocknock/koin/ViewModelModule.kt | 0 .../afollestad/nocknock/ui/ScopedViewModel.kt | 0 .../nocknock/ui/addsite/AddSiteActivity.kt | 22 ++- .../nocknock/ui/addsite/AddSiteActivityExt.kt | 0 .../nocknock/ui/addsite/AddSiteViewModel.kt | 10 +- .../nocknock/ui/main/MainActivity.kt | 0 .../nocknock/ui/main/MainActivityExt.kt | 0 .../nocknock/ui/main/MainViewModel.kt | 0 .../nocknock/ui/viewsite/ViewSiteActivity.kt | 17 +- .../ui/viewsite/ViewSiteActivityExt.kt | 0 .../nocknock/ui/viewsite/ViewSiteViewModel.kt | 12 +- .../ui/viewsite/ViewSiteViewModelExt.kt | 0 app/src/main/res/layout/activity_addsite.xml | 2 +- app/src/main/res/layout/activity_viewsite.xml | 2 +- .../com/afollestad/nocknock/TestData.kt | 0 .../StatusUpdateIntentReceiverTest.kt | 0 .../ui/addsite/AddSiteViewModelTest.kt | 2 +- .../nocknock/ui/main/MainViewModelTest.kt | 2 +- .../ui/viewsite/ViewSiteViewModelTest.kt | 2 +- common/build.gradle | 5 +- .../nocknock/utilities/CommonModule.kt | 0 .../nocknock/utilities/ext/AnimationExt.kt | 0 .../nocknock/utilities/ext/ContextExt.kt | 0 .../nocknock/utilities/ext/DateExt.kt | 0 .../nocknock/utilities/ext/TimeExt.kt | 0 .../nocknock/utilities/ext/UriExt.kt | 0 .../nocknock/utilities/ext/ViewExt.kt | 31 +++- .../nocknock/utilities/js/JavaScript.kt | 0 .../nocknock/utilities/livedata/Distinct.kt | 53 +++++++ .../utilities/livedata/LiveDataExt.kt | 25 +++ .../utilities/livedata/TestLiveData.kt | 25 ++- .../nocknock/utilities/livedata/Zip.kt | 102 ++++++++++++ .../utilities/providers/BundleProvider.kt | 0 .../utilities/providers/IntentProvider.kt | 0 .../utilities/providers/JobInfoProvider.kt | 0 .../providers/NotificationChannelProvider.kt | 0 .../providers/NotificationProvider.kt | 0 .../utilities/providers/SdkProvider.kt | 0 .../utilities/providers/StringProvider.kt | 0 .../utilities/ui/DebouncedOnClickListener.kt | 0 .../utilities/livedata/DistinctTest.kt | 47 ++++++ .../nocknock/utilities/livedata/ZipTest.kt | 123 +++++++++++++++ .../nocknock/data/AppDatabaseTest.kt | 0 .../com/afollestad/nocknock/data/TestUtil.kt | 0 .../afollestad/nocknock/data/AppDatabase.kt | 0 .../com/afollestad/nocknock/data/SiteDao.kt | 0 .../nocknock/data/SiteSettingsDao.kt | 0 .../nocknock/data/ValidationResultsDao.kt | 0 .../nocknock/data/model/Converters.kt | 0 .../afollestad/nocknock/data/model/Site.kt | 0 .../nocknock/data/model/SiteSettings.kt | 0 .../afollestad/nocknock/data/model/Status.kt | 0 .../nocknock/data/model/ValidationMode.kt | 0 .../nocknock/data/model/ValidationResult.kt | 0 .../nocknock/engine/EngineModule.kt | 0 .../engine/validation/BootReceiver.kt | 0 .../engine/validation/ValidationJob.kt | 0 .../engine/validation/ValidationManager.kt | 0 .../nocknock/engine/CheckStatusManagerTest.kt | 0 .../afollestad/nocknock/engine/TestUtil.kt | 0 .../nocknock/notifications/Channel.kt | 0 .../notifications/NockNotificationManager.kt | 0 .../notifications/NotificationsModule.kt | 0 .../NockNotificationManagerTest.kt | 0 .../viewcomponents/ext/LiveDataExt.kt | 148 ------------------ .../interval/CheckIntervalLayout.kt | 133 ---------------- .../viewcomponents/LoadingIndicatorFrame.kt | 0 .../viewcomponents/StatusImageView.kt | 0 .../nocknock/viewcomponents/ext/IntExt.kt | 0 .../viewcomponents/ext/ScrollViewExt.kt | 0 .../nocknock/viewcomponents/ext/SpinnerExt.kt | 0 .../nocknock/viewcomponents/ext/ViewExt.kt | 0 .../interval/ValidationIntervalLayout.kt | 101 ++++++++++++ .../js/JavaScriptInputLayout.kt | 63 ++------ .../livedata/LiveDataViewExt.kt | 120 ++++++++++++++ .../livedata/ViewLifecycleOwner.kt | 59 +++++++ ...out.xml => validation_interval_layout.xml} | 0 viewcomponents/src/main/res/values/ids.xml | 4 + 85 files changed, 737 insertions(+), 373 deletions(-) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/AppExt.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/NockNockApp.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/adapter/SiteAdapter.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/adapter/SiteDiffCallback.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/dialogs/AboutDialog.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/koin/MainModule.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/koin/ViewModelModule.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/ScopedViewModel.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt (89%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt (97%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/main/MainActivity.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/main/MainActivityExt.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/main/MainViewModel.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt (93%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt (100%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt (97%) rename app/src/main/{java => kotlin}/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt (100%) rename app/src/test/{java => kotlin}/com/afollestad/nocknock/TestData.kt (100%) rename app/src/test/{java => kotlin}/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiverTest.kt (100%) rename app/src/test/{java => kotlin}/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt (99%) rename app/src/test/{java => kotlin}/com/afollestad/nocknock/ui/main/MainViewModelTest.kt (98%) rename app/src/test/{java => kotlin}/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt (99%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/CommonModule.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/ext/AnimationExt.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/ext/ContextExt.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/ext/DateExt.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/ext/TimeExt.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/ext/UriExt.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/ext/ViewExt.kt (60%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/js/JavaScript.kt (100%) create mode 100644 common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Distinct.kt create mode 100644 common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt rename app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt => common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt (69%) create mode 100644 common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Zip.kt rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/providers/BundleProvider.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/providers/IntentProvider.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/providers/SdkProvider.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/providers/StringProvider.kt (100%) rename common/src/main/{java => kotlin}/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt (100%) create mode 100644 common/src/test/kotlin/com/afollestad/nocknock/utilities/livedata/DistinctTest.kt create mode 100644 common/src/test/kotlin/com/afollestad/nocknock/utilities/livedata/ZipTest.kt rename data/src/androidTest/{java => kotlin}/com/afollestad/nocknock/data/AppDatabaseTest.kt (100%) rename data/src/androidTest/{java => kotlin}/com/afollestad/nocknock/data/TestUtil.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/AppDatabase.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/SiteDao.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/SiteSettingsDao.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/ValidationResultsDao.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/model/Converters.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/model/Site.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/model/SiteSettings.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/model/Status.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/model/ValidationMode.kt (100%) rename data/src/main/{java => kotlin}/com/afollestad/nocknock/data/model/ValidationResult.kt (100%) rename engine/src/main/{java => kotlin}/com/afollestad/nocknock/engine/EngineModule.kt (100%) rename engine/src/main/{java => kotlin}/com/afollestad/nocknock/engine/validation/BootReceiver.kt (100%) rename engine/src/main/{java => kotlin}/com/afollestad/nocknock/engine/validation/ValidationJob.kt (100%) rename engine/src/main/{java => kotlin}/com/afollestad/nocknock/engine/validation/ValidationManager.kt (100%) rename engine/src/test/{java => kotlin}/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt (100%) rename engine/src/test/{java => kotlin}/com/afollestad/nocknock/engine/TestUtil.kt (100%) rename notifications/src/main/{java => kotlin}/com/afollestad/nocknock/notifications/Channel.kt (100%) rename notifications/src/main/{java => kotlin}/com/afollestad/nocknock/notifications/NockNotificationManager.kt (100%) rename notifications/src/main/{java => kotlin}/com/afollestad/nocknock/notifications/NotificationsModule.kt (100%) rename notifications/src/test/{java => kotlin}/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt (100%) delete mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/LiveDataExt.kt delete mode 100644 viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/CheckIntervalLayout.kt rename viewcomponents/src/main/{java => kotlin}/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt (100%) rename viewcomponents/src/main/{java => kotlin}/com/afollestad/nocknock/viewcomponents/StatusImageView.kt (100%) rename viewcomponents/src/main/{java => kotlin}/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt (100%) rename viewcomponents/src/main/{java => kotlin}/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt (100%) rename viewcomponents/src/main/{java => kotlin}/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt (100%) rename viewcomponents/src/main/{java => kotlin}/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt (100%) create mode 100644 viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt rename viewcomponents/src/main/{java => kotlin}/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt (58%) create mode 100644 viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt create mode 100644 viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt rename viewcomponents/src/main/res/layout/{check_interval_layout.xml => validation_interval_layout.xml} (100%) create mode 100644 viewcomponents/src/main/res/values/ids.xml diff --git a/app/src/main/java/com/afollestad/nocknock/AppExt.kt b/app/src/main/kotlin/com/afollestad/nocknock/AppExt.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/AppExt.kt rename to app/src/main/kotlin/com/afollestad/nocknock/AppExt.kt diff --git a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/kotlin/com/afollestad/nocknock/NockNockApp.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/NockNockApp.kt rename to app/src/main/kotlin/com/afollestad/nocknock/NockNockApp.kt diff --git a/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt b/app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteAdapter.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt rename to app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteAdapter.kt diff --git a/app/src/main/java/com/afollestad/nocknock/adapter/SiteDiffCallback.kt b/app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteDiffCallback.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/adapter/SiteDiffCallback.kt rename to app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteDiffCallback.kt diff --git a/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt b/app/src/main/kotlin/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt rename to app/src/main/kotlin/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt diff --git a/app/src/main/java/com/afollestad/nocknock/dialogs/AboutDialog.kt b/app/src/main/kotlin/com/afollestad/nocknock/dialogs/AboutDialog.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/dialogs/AboutDialog.kt rename to app/src/main/kotlin/com/afollestad/nocknock/dialogs/AboutDialog.kt diff --git a/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt b/app/src/main/kotlin/com/afollestad/nocknock/koin/MainModule.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt rename to app/src/main/kotlin/com/afollestad/nocknock/koin/MainModule.kt diff --git a/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt b/app/src/main/kotlin/com/afollestad/nocknock/koin/ViewModelModule.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt rename to app/src/main/kotlin/com/afollestad/nocknock/koin/ViewModelModule.kt diff --git a/app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/ScopedViewModel.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/ScopedViewModel.kt diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt similarity index 89% rename from app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt index d0b9376..9e91397 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt +++ b/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt @@ -21,12 +21,12 @@ import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity import com.afollestad.nocknock.R import com.afollestad.nocknock.data.model.ValidationMode -import com.afollestad.nocknock.viewcomponents.ext.attachLiveData import com.afollestad.nocknock.viewcomponents.ext.conceal import com.afollestad.nocknock.viewcomponents.ext.onLayout -import com.afollestad.nocknock.viewcomponents.ext.toViewError -import com.afollestad.nocknock.viewcomponents.ext.toViewText -import com.afollestad.nocknock.viewcomponents.ext.toViewVisibility +import com.afollestad.nocknock.viewcomponents.livedata.attachLiveData +import com.afollestad.nocknock.viewcomponents.livedata.toViewError +import com.afollestad.nocknock.viewcomponents.livedata.toViewText +import com.afollestad.nocknock.viewcomponents.livedata.toViewVisibility import kotlinx.android.synthetic.main.activity_addsite.checkIntervalLayout import kotlinx.android.synthetic.main.activity_addsite.doneBtn import kotlinx.android.synthetic.main.activity_addsite.inputName @@ -88,9 +88,11 @@ class AddSiteActivity : AppCompatActivity() { .toViewError(this, responseTimeoutInput) // Validation mode - responseValidationMode.attachLiveData(this, viewModel.validationMode, - { ValidationMode.fromIndex(it) }, - { it.toIndex() } + responseValidationMode.attachLiveData( + lifecycleOwner = this, + data = viewModel.validationMode, + outTransformer = { ValidationMode.fromIndex(it) }, + inTransformer = { it.toIndex() } ) viewModel.onValidationSearchTermError() .toViewError(this, responseValidationSearchTerm) @@ -98,7 +100,11 @@ class AddSiteActivity : AppCompatActivity() { .toViewText(this, validationModeDescription) // Validation search term - responseValidationSearchTerm.attachLiveData(this, viewModel.validationSearchTerm) + responseValidationSearchTerm.attachLiveData( + lifecycleOwner = this, + data = viewModel.validationSearchTerm, + pullInChanges = false + ) viewModel.onValidationSearchTermVisibility() .toViewVisibility(this, responseValidationSearchTerm) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt similarity index 97% rename from app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt index 4f51b73..9b388b1 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt +++ b/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt @@ -32,8 +32,8 @@ import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH import com.afollestad.nocknock.data.putSite import com.afollestad.nocknock.engine.validation.ValidationManager import com.afollestad.nocknock.ui.ScopedViewModel +import com.afollestad.nocknock.utilities.livedata.map import com.afollestad.nocknock.viewcomponents.ext.isNullOrLessThan -import com.afollestad.nocknock.viewcomponents.ext.map import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.launch import kotlinx.coroutines.withContext @@ -50,7 +50,9 @@ class AddSiteViewModel( // Public properties val name = MutableLiveData() val url = MutableLiveData() - val timeout = MutableLiveData() + val timeout = MutableLiveData().apply { + this.value = 10000 + } val validationMode = MutableLiveData() val validationSearchTerm = MutableLiveData() val validationScript = MutableLiveData() @@ -214,8 +216,8 @@ class AddSiteViewModel( ) return Site( id = 0, - name = name.value!!, - url = url.value!!, + name = name.value!!.trim(), + url = url.value!!.trim(), settings = newSettings, lastResult = null ) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainActivity.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainActivity.kt diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainActivityExt.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainActivityExt.kt diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainViewModel.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainViewModel.kt diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt similarity index 93% rename from app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index fddf3d7..76011bc 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -26,12 +26,12 @@ import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.data.model.ValidationMode import com.afollestad.nocknock.utilities.providers.IntentProvider -import com.afollestad.nocknock.viewcomponents.ext.attachLiveData +import com.afollestad.nocknock.viewcomponents.livedata.attachLiveData import com.afollestad.nocknock.viewcomponents.ext.dimenFloat import com.afollestad.nocknock.viewcomponents.ext.onScroll -import com.afollestad.nocknock.viewcomponents.ext.toViewError -import com.afollestad.nocknock.viewcomponents.ext.toViewText -import com.afollestad.nocknock.viewcomponents.ext.toViewVisibility +import com.afollestad.nocknock.viewcomponents.livedata.toViewError +import com.afollestad.nocknock.viewcomponents.livedata.toViewText +import com.afollestad.nocknock.viewcomponents.livedata.toViewVisibility import kotlinx.android.synthetic.main.activity_viewsite.checkIntervalLayout import kotlinx.android.synthetic.main.activity_viewsite.disableChecksButton import kotlinx.android.synthetic.main.activity_viewsite.doneBtn @@ -102,9 +102,12 @@ class ViewSiteActivity : AppCompatActivity() { .toViewError(this, responseTimeoutInput) // Validation mode - responseValidationMode.attachLiveData(this, viewModel.validationMode, - { ValidationMode.fromIndex(it) }, - { it.toIndex() }) + responseValidationMode.attachLiveData( + lifecycleOwner = this, + data = viewModel.validationMode, + outTransformer = { ValidationMode.fromIndex(it) }, + inTransformer = { it.toIndex() } + ) viewModel.onValidationSearchTermError() .toViewError(this, responseValidationSearchTerm) viewModel.onValidationModeDescription() diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt similarity index 97% rename from app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt index a88013c..57bc172 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt +++ b/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt @@ -38,10 +38,10 @@ import com.afollestad.nocknock.engine.validation.ValidationManager import com.afollestad.nocknock.notifications.NockNotificationManager import com.afollestad.nocknock.ui.ScopedViewModel import com.afollestad.nocknock.utilities.ext.formatDate +import com.afollestad.nocknock.utilities.livedata.map +import com.afollestad.nocknock.utilities.livedata.zip import com.afollestad.nocknock.utilities.providers.StringProvider import com.afollestad.nocknock.viewcomponents.ext.isNullOrLessThan -import com.afollestad.nocknock.viewcomponents.ext.map -import com.afollestad.nocknock.viewcomponents.ext.zip import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.launch import kotlinx.coroutines.withContext @@ -232,8 +232,8 @@ class ViewSiteViewModel( @VisibleForTesting(otherwise = PRIVATE) fun getValidationArgs(): String? { return when (validationMode.value) { - TERM_SEARCH -> validationSearchTerm.value - JAVASCRIPT -> validationScript.value + TERM_SEARCH -> validationSearchTerm.value?.trim() + JAVASCRIPT -> validationScript.value?.trim() else -> null } } @@ -310,8 +310,8 @@ class ViewSiteViewModel( disabled = false ) return site.copy( - name = name.value!!, - url = url.value!!, + name = name.value!!.trim(), + url = url.value!!.trim(), settings = newSettings ) .withStatus(status = WAITING) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt similarity index 100% rename from app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt rename to app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt diff --git a/app/src/main/res/layout/activity_addsite.xml b/app/src/main/res/layout/activity_addsite.xml index 69a29d9..8567019 100644 --- a/app/src/main/res/layout/activity_addsite.xml +++ b/app/src/main/res/layout/activity_addsite.xml @@ -93,7 +93,7 @@ - - Unit) { +fun EditText.setTextAndMaintainSelection(text: CharSequence) { + val formerStart = min(selectionStart, text.length) + val formerEnd = min(selectionEnd, text.length) + setText(text) + if (formerEnd <= formerStart) { + setSelection(formerStart) + } else { + setSelection(formerStart, formerEnd) + } +} + +fun EditText.onTextChanged( + @IntRange(from = 0, to = 10000) debounce: Int = 0, + cb: (String) -> Unit +) { addTextChangedListener(object : TextWatcher { + val callbackRunner = Runnable { + cb(text.trim().toString()) + } + override fun afterTextChanged(s: Editable?) = Unit override fun beforeTextChanged( @@ -35,6 +55,13 @@ fun EditText.onTextChanged(cb: (String) -> Unit) { start: Int, before: Int, count: Int - ) = cb(s.toString().trim()) + ) { + removeCallbacks(callbackRunner) + if (debounce == 0) { + callbackRunner.run() + } else { + postDelayed(callbackRunner, debounce.toLong()) + } + } }) } diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/js/JavaScript.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/js/JavaScript.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Distinct.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Distinct.kt new file mode 100644 index 0000000..d6a26d2 --- /dev/null +++ b/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Distinct.kt @@ -0,0 +1,53 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.utilities.livedata + +import androidx.lifecycle.LiveData +import androidx.lifecycle.MediatorLiveData +import androidx.lifecycle.Observer + +/** @author Aidan Follestad (@afollestad) */ +class DistinctLiveData(source1: LiveData) : MediatorLiveData() { + + private var isInitialized = false + private var lastValue: T? = null + + init { + super.addSource(source1) { + if (!isInitialized) { + value = it + isInitialized = true + lastValue = it + } else if (lastValue != it) { + value = it + lastValue = it + } + } + } + + override fun addSource( + source: LiveData, + onChanged: Observer + ) { + throw UnsupportedOperationException() + } + + override fun removeSource(toRemote: LiveData) { + throw UnsupportedOperationException() + } +} + +fun LiveData.distinct(): MediatorLiveData = DistinctLiveData(this) diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt new file mode 100644 index 0000000..cacdc92 --- /dev/null +++ b/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt @@ -0,0 +1,25 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.utilities.livedata + +import androidx.lifecycle.LiveData +import androidx.lifecycle.Transformations + +fun LiveData.map(mapper: (X) -> Y) = + Transformations.map(this, mapper)!! + +fun LiveData.switchMap(mapper: (X) -> LiveData) = + Transformations.switchMap(this, mapper)!! diff --git a/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt similarity index 69% rename from app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt index 0556668..7b94e95 100644 --- a/app/src/test/java/com/afollestad/nocknock/LiveDataTestUtil.kt +++ b/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt @@ -13,13 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.afollestad.nocknock +package com.afollestad.nocknock.utilities.livedata import androidx.annotation.CheckResult import androidx.lifecycle.LiveData import androidx.lifecycle.Observer -import com.google.common.truth.Truth.assertThat -import com.google.common.truth.Truth.assertWithMessage /** @author Aidan Follestad (@afollestad) */ class TestLiveData(data: LiveData) { @@ -34,17 +32,32 @@ class TestLiveData(data: LiveData) { } fun assertNoValues() { - assertWithMessage("Expected no values, but got: $receivedValues").that(receivedValues) - .isEmpty() + if (receivedValues.isNotEmpty()) { + throw AssertionError("Expected no values, but got: $receivedValues") + } } fun assertValues(vararg assertValues: T) { val assertList = assertValues.toList() - assertThat(receivedValues).isEqualTo(assertList) + if (!assertList.contentEquals(receivedValues)) { + throw AssertionError("Expected $assertList\n\t\tBut got: $receivedValues") + } receivedValues.clear() } @CheckResult fun values(): List = receivedValues + + private fun List.contentEquals(other: List): Boolean { + if (this.size != other.size) { + return false + } + for ((index, value) in this.withIndex()) { + if (other[index] != value) { + return false + } + } + return true + } } @CheckResult fun LiveData.test() = TestLiveData(this) diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Zip.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Zip.kt new file mode 100644 index 0000000..739fa5b --- /dev/null +++ b/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Zip.kt @@ -0,0 +1,102 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.utilities.livedata + +import androidx.lifecycle.LiveData +import androidx.lifecycle.MediatorLiveData +import androidx.lifecycle.Observer + +typealias Zipper = (T, K) -> R + +/** @author Aidan Follestad (@afollestad) */ +class ZipLiveData( + source1: LiveData, + source2: LiveData, + private val distinctUntilChanged: Boolean, + private val resetAfterEmission: Boolean, + private val zipper: Zipper +) : MediatorLiveData() { + + private var data1: T? = null + private var data2: K? = null + private var lastNotified: R? = null + + init { + super.addSource(source1) { + if (data1 == it) return@addSource + data1 = it + maybeNotify() + } + super.addSource(source2) { + if (data2 == it) return@addSource + data2 = it + maybeNotify() + } + } + + private fun maybeNotify() { + if (data1 != null && data2 != null) { + val zippedUp = zipper(data1!!, data2!!) + + if (!distinctUntilChanged || zippedUp != lastNotified) { + value = zippedUp + lastNotified = zippedUp + + if (resetAfterEmission) { + data1 = null + data2 = null + } + } + } + } + + override fun addSource( + source: LiveData, + onChanged: Observer + ) { + throw UnsupportedOperationException() + } + + override fun removeSource(toRemote: LiveData) { + throw UnsupportedOperationException() + } +} + +fun zip( + source1: LiveData, + source2: LiveData, + distinctUntilChanged: Boolean = true, + resetAfterEmission: Boolean = false, + zipper: Zipper +) = ZipLiveData( + source1 = source1, + source2 = source2, + distinctUntilChanged = distinctUntilChanged, + resetAfterEmission = resetAfterEmission, + zipper = zipper +) + +fun zip( + source1: LiveData, + source2: LiveData, + distinctUntilChanged: Boolean = true, + resetAfterEmission: Boolean = false +) = zip( + source1 = source1, + source2 = source2, + distinctUntilChanged = distinctUntilChanged, + resetAfterEmission = resetAfterEmission, + zipper = { left, right -> Pair(left, right) }) diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/BundleProvider.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/BundleProvider.kt diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/IntentProvider.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/IntentProvider.kt diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/SdkProvider.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/SdkProvider.kt diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/StringProvider.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/StringProvider.kt diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt similarity index 100% rename from common/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt rename to common/src/main/kotlin/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt diff --git a/common/src/test/kotlin/com/afollestad/nocknock/utilities/livedata/DistinctTest.kt b/common/src/test/kotlin/com/afollestad/nocknock/utilities/livedata/DistinctTest.kt new file mode 100644 index 0000000..465a085 --- /dev/null +++ b/common/src/test/kotlin/com/afollestad/nocknock/utilities/livedata/DistinctTest.kt @@ -0,0 +1,47 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.utilities.livedata + +import androidx.arch.core.executor.testing.InstantTaskExecutorRule +import androidx.lifecycle.MutableLiveData +import org.junit.Rule +import org.junit.Test + +/** @author Aidan Follestad (@afollestad) */ +class DistinctTest { + + @Rule @JvmField val rule = InstantTaskExecutorRule() + + @Test fun filterLastValues() { + val data = MutableLiveData() + val distinct = data.distinct() + .test() + + data.postValue("Hello") + data.postValue("Hello") + + data.postValue("Hi") + data.postValue("Hi") + + data.postValue("Hello") + + distinct.assertValues( + "Hello", + "Hi", + "Hello" + ) + } +} diff --git a/common/src/test/kotlin/com/afollestad/nocknock/utilities/livedata/ZipTest.kt b/common/src/test/kotlin/com/afollestad/nocknock/utilities/livedata/ZipTest.kt new file mode 100644 index 0000000..0cc57da --- /dev/null +++ b/common/src/test/kotlin/com/afollestad/nocknock/utilities/livedata/ZipTest.kt @@ -0,0 +1,123 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.utilities.livedata + +import androidx.arch.core.executor.testing.InstantTaskExecutorRule +import androidx.lifecycle.MutableLiveData +import org.junit.Rule +import org.junit.Test + +/** @author Aidan Follestad (@afollestad) */ +class ZipTest { + + @Rule @JvmField val rule = InstantTaskExecutorRule() + + @Test fun test_withDistinct() { + val data1 = MutableLiveData() + val data2 = MutableLiveData() + val zipped = zip(data1, data2, true) + .test() + + data1.postValue("Hello") + data2.postValue(24) + zipped.assertValues(Pair("Hello", 24)) + + data1.postValue("Hello") + data2.postValue(24) + zipped.assertNoValues() + } + + @Test fun test_noDistinct() { + val data1 = MutableLiveData() + val data2 = MutableLiveData() + val zipped = zip(data1, data2, false) + .test() + + data1.postValue("Hello") + data2.postValue(24) + zipped.assertValues(Pair("Hello", 24)) + + data1.postValue("Hi") + data2.postValue(24) + zipped.assertValues(Pair("Hi", 24)) + } + + @Test fun test_noDistinct_resetAfterEmission() { + val data1 = MutableLiveData() + val data2 = MutableLiveData() + val zipped = zip(data1, data2, false, true) + .test() + + data1.postValue("Hello") + data2.postValue(24) + zipped.assertValues(Pair("Hello", 24)) + + data1.postValue("Hi") + data2.postValue(50) + zipped.assertValues(Pair("Hi", 50)) + } + + @Test fun test_withDistinct_customZipper() { + val data1 = MutableLiveData() + val data2 = MutableLiveData() + val zipped = zip(data1, data2, true, + zipper = { left, right -> + "$left $right" + }).test() + + data1.postValue("Hello") + data2.postValue(24) + zipped.assertValues("Hello 24") + + data1.postValue("Hello") + data2.postValue(24) + zipped.assertNoValues() + } + + @Test fun test_noDistinct_customZipper() { + val data1 = MutableLiveData() + val data2 = MutableLiveData() + val zipped = zip(data1, data2, false, + zipper = { left, right -> + "$left $right" + }).test() + + data1.postValue("Hello") + data2.postValue(24) + zipped.assertValues("Hello 24") + + data1.postValue("Hi") + data2.postValue(24) + zipped.assertValues("Hi 24") + } + + @Test fun test_noDistinct_customZipper_resetAfterEmission() { + val data1 = MutableLiveData() + val data2 = MutableLiveData() + val zipped = zip(data1, data2, false, true, + zipper = { left, right -> + "$left $right" + }).test() + + data1.postValue("Hello") + data2.postValue(24) + zipped.assertValues("Hello 24") + + data1.postValue("Hi") + data2.postValue(50) + zipped.assertValues("Hi 50") + } +} diff --git a/data/src/androidTest/java/com/afollestad/nocknock/data/AppDatabaseTest.kt b/data/src/androidTest/kotlin/com/afollestad/nocknock/data/AppDatabaseTest.kt similarity index 100% rename from data/src/androidTest/java/com/afollestad/nocknock/data/AppDatabaseTest.kt rename to data/src/androidTest/kotlin/com/afollestad/nocknock/data/AppDatabaseTest.kt diff --git a/data/src/androidTest/java/com/afollestad/nocknock/data/TestUtil.kt b/data/src/androidTest/kotlin/com/afollestad/nocknock/data/TestUtil.kt similarity index 100% rename from data/src/androidTest/java/com/afollestad/nocknock/data/TestUtil.kt rename to data/src/androidTest/kotlin/com/afollestad/nocknock/data/TestUtil.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/AppDatabase.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/AppDatabase.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/AppDatabase.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/AppDatabase.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/SiteDao.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/SiteDao.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/SiteDao.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/SiteDao.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/SiteSettingsDao.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/SiteSettingsDao.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/SiteSettingsDao.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/SiteSettingsDao.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/ValidationResultsDao.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/ValidationResultsDao.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/ValidationResultsDao.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/ValidationResultsDao.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/Converters.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/model/Converters.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/model/Converters.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/model/Converters.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/model/Site.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/model/Site.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/model/Site.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/SiteSettings.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/model/SiteSettings.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/model/SiteSettings.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/model/SiteSettings.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/model/Status.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/model/Status.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/model/Status.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/model/ValidationMode.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/model/ValidationMode.kt diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/ValidationResult.kt b/data/src/main/kotlin/com/afollestad/nocknock/data/model/ValidationResult.kt similarity index 100% rename from data/src/main/java/com/afollestad/nocknock/data/model/ValidationResult.kt rename to data/src/main/kotlin/com/afollestad/nocknock/data/model/ValidationResult.kt diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt b/engine/src/main/kotlin/com/afollestad/nocknock/engine/EngineModule.kt similarity index 100% rename from engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt rename to engine/src/main/kotlin/com/afollestad/nocknock/engine/EngineModule.kt diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt b/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/BootReceiver.kt similarity index 100% rename from engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt rename to engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/BootReceiver.kt diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt b/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationJob.kt similarity index 100% rename from engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt rename to engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationJob.kt diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt b/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationManager.kt similarity index 100% rename from engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt rename to engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationManager.kt diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt b/engine/src/test/kotlin/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt similarity index 100% rename from engine/src/test/java/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt rename to engine/src/test/kotlin/com/afollestad/nocknock/engine/CheckStatusManagerTest.kt diff --git a/engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt b/engine/src/test/kotlin/com/afollestad/nocknock/engine/TestUtil.kt similarity index 100% rename from engine/src/test/java/com/afollestad/nocknock/engine/TestUtil.kt rename to engine/src/test/kotlin/com/afollestad/nocknock/engine/TestUtil.kt diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt b/notifications/src/main/kotlin/com/afollestad/nocknock/notifications/Channel.kt similarity index 100% rename from notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt rename to notifications/src/main/kotlin/com/afollestad/nocknock/notifications/Channel.kt diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt b/notifications/src/main/kotlin/com/afollestad/nocknock/notifications/NockNotificationManager.kt similarity index 100% rename from notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt rename to notifications/src/main/kotlin/com/afollestad/nocknock/notifications/NockNotificationManager.kt diff --git a/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt b/notifications/src/main/kotlin/com/afollestad/nocknock/notifications/NotificationsModule.kt similarity index 100% rename from notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt rename to notifications/src/main/kotlin/com/afollestad/nocknock/notifications/NotificationsModule.kt diff --git a/notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt b/notifications/src/test/kotlin/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt similarity index 100% rename from notifications/src/test/java/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt rename to notifications/src/test/kotlin/com/afollestad/nocknock/notifications/NockNotificationManagerTest.kt diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/LiveDataExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/LiveDataExt.kt deleted file mode 100644 index 7b73308..0000000 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/LiveDataExt.kt +++ /dev/null @@ -1,148 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.viewcomponents.ext - -import android.view.View -import android.widget.EditText -import android.widget.Spinner -import android.widget.TextView -import androidx.lifecycle.LifecycleOwner -import androidx.lifecycle.LiveData -import androidx.lifecycle.MediatorLiveData -import androidx.lifecycle.MutableLiveData -import androidx.lifecycle.Observer -import androidx.lifecycle.Transformations -import com.afollestad.nocknock.utilities.ext.onTextChanged - -fun LiveData.map(mapper: (X) -> Y) = - Transformations.map(this, mapper)!! - -fun LiveData.switchMap(mapper: (X) -> LiveData) = - Transformations.switchMap(this, mapper)!! - -inline fun EditText.attachLiveData( - lifecycleOwner: LifecycleOwner, - data: MutableLiveData -) { - // Out - when { - T::class == Int::class -> { - onTextChanged { data.postValue(it.trim().toInt() as T) } - } - T::class == Long::class -> { - onTextChanged { data.postValue(it.trim().toLong() as T) } - } - T::class == String::class -> { - onTextChanged { data.postValue(it.trim() as T) } - } - else -> { - throw IllegalArgumentException("Can't send EditText text changes into ${T::class}") - } - } - // In - data.observe(lifecycleOwner, Observer { - when { - T::class == Int::class -> setText(it as Int) - T::class == String::class -> setText(it as String) - } - }) -} - -fun Spinner.attachLiveData( - lifecycleOwner: LifecycleOwner, - data: MutableLiveData, - outTransformer: (Int) -> T, - inTransformer: (T) -> Int -) { - // Out - onItemSelected { data.postValue(outTransformer(it)) } - // In - data.observe(lifecycleOwner, Observer { - setSelection(inTransformer(it)) - }) -} - -fun LiveData.toViewError( - owner: LifecycleOwner, - view: EditText -) = observe(owner, Observer { error -> - view.error = if (error != null) { - view.resources.getString(error) - } else { - null - } -}) - -inline fun LiveData.toViewText( - owner: LifecycleOwner, - view: TextView -) = observe(owner, Observer { - when { - T::class == Int::class -> view.setText(it as Int) - T::class == String::class -> view.text = it as String - else -> throw IllegalStateException("Cannot set ${T::class} as view text.") - } -}) - -fun LiveData.toViewVisibility( - owner: LifecycleOwner, - view: View -) = observe(owner, Observer { view.showOrHide(it) }) - -/** @author Aidan Follestad (@afollestad) */ -class ZipLiveData( - source1: LiveData, - source2: LiveData -) : MediatorLiveData>() { - - private var data1: T? = null - private var data2: K? = null - - init { - super.addSource(source1) { - data1 = it - maybeNotify() - } - super.addSource(source2) { - data2 = it - maybeNotify() - } - } - - private fun maybeNotify() { - if (data1 != null && data2 != null) { - value = Pair(data1!!, data2!!) - } - } - - override fun addSource( - source: LiveData, - onChanged: Observer - ) { - throw UnsupportedOperationException() - } - - override fun removeSource(toRemote: LiveData) { - throw UnsupportedOperationException() - } -} - -fun zip( - source1: LiveData, - source2: LiveData -): MediatorLiveData> { - return ZipLiveData(source1, source2) -} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/CheckIntervalLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/CheckIntervalLayout.kt deleted file mode 100644 index 819f45d..0000000 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/CheckIntervalLayout.kt +++ /dev/null @@ -1,133 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.viewcomponents.interval - -import android.content.Context -import android.util.AttributeSet -import android.widget.ArrayAdapter -import android.widget.LinearLayout -import androidx.lifecycle.Lifecycle.State.DESTROYED -import androidx.lifecycle.Lifecycle.State.RESUMED -import androidx.lifecycle.Lifecycle.State.STARTED -import androidx.lifecycle.LifecycleOwner -import androidx.lifecycle.LifecycleRegistry -import androidx.lifecycle.LiveData -import androidx.lifecycle.MutableLiveData -import androidx.lifecycle.Observer -import com.afollestad.nocknock.utilities.ext.DAY -import com.afollestad.nocknock.utilities.ext.HOUR -import com.afollestad.nocknock.utilities.ext.MINUTE -import com.afollestad.nocknock.utilities.ext.WEEK -import com.afollestad.nocknock.utilities.ext.onTextChanged -import com.afollestad.nocknock.viewcomponents.R.array -import com.afollestad.nocknock.viewcomponents.R.layout -import com.afollestad.nocknock.viewcomponents.ext.onItemSelected -import kotlinx.android.synthetic.main.check_interval_layout.view.input -import kotlinx.android.synthetic.main.check_interval_layout.view.spinner - -/** @author Aidan Follestad (@afollestad) */ -class CheckIntervalLayout( - context: Context, - attrs: AttributeSet? = null -) : LinearLayout(context, attrs), LifecycleOwner { - - companion object { - const val INDEX_MINUTE = 0 - const val INDEX_HOUR = 1 - const val INDEX_DAY = 2 - const val INDEX_WEEK = 3 - } - - init { - orientation = VERTICAL - inflate(context, layout.check_interval_layout, this) - } - - private lateinit var valueData: MutableLiveData - private lateinit var multiplierData: MutableLiveData - - private val lifecycle = LifecycleRegistry(this) - - override fun onFinishInflate() { - super.onFinishInflate() - val spinnerAdapter = ArrayAdapter( - context, - layout.list_item_spinner, - resources.getStringArray(array.interval_options) - ) - spinnerAdapter.setDropDownViewResource( - layout.list_item_spinner_dropdown - ) - spinner.adapter = spinnerAdapter - lifecycle.markState(STARTED) - } - - override fun onAttachedToWindow() { - super.onAttachedToWindow() - lifecycle.markState(RESUMED) - } - - override fun onDetachedFromWindow() { - lifecycle.markState(DESTROYED) - super.onDetachedFromWindow() - } - - fun setError(error: String?) { - input.error = error - } - - fun attach( - valueData: MutableLiveData, - multiplierData: MutableLiveData, - errorData: LiveData - ) { - this.valueData = valueData - this.multiplierData = multiplierData - - this.valueData.observe(this, Observer { - input.setText("$it") - }) - this.multiplierData.observe(this, Observer { multiplier -> - val targetPos = when (multiplier) { - MINUTE -> 0 - HOUR -> 1 - DAY -> 2 - WEEK -> 3 - else -> throw IllegalStateException("Unknown multiplier: $multiplier") - } - if (spinner.selectedItemPosition != targetPos) { - spinner.setSelection(targetPos) - } - }) - - errorData.observe(this, Observer { - setError(if (it != null) resources.getString(it) else null) - }) - - input.onTextChanged { this.valueData.value = it.toInt() } - spinner.onItemSelected { - this.multiplierData.value = when (it) { - INDEX_MINUTE -> MINUTE - INDEX_HOUR -> HOUR - INDEX_DAY -> DAY - INDEX_WEEK -> WEEK - else -> throw IllegalStateException("Unknown multiplier index: $it") - } - } - } - - override fun getLifecycle() = lifecycle -} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt similarity index 100% rename from viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt rename to viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/StatusImageView.kt similarity index 100% rename from viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt rename to viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/StatusImageView.kt diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt similarity index 100% rename from viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt rename to viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt similarity index 100% rename from viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt rename to viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt similarity index 100% rename from viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt rename to viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt similarity index 100% rename from viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt rename to viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt new file mode 100644 index 0000000..58bbe9d --- /dev/null +++ b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt @@ -0,0 +1,101 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.viewcomponents.interval + +import android.content.Context +import android.util.AttributeSet +import android.widget.ArrayAdapter +import android.widget.LinearLayout +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData +import com.afollestad.nocknock.utilities.ext.DAY +import com.afollestad.nocknock.utilities.ext.HOUR +import com.afollestad.nocknock.utilities.ext.MINUTE +import com.afollestad.nocknock.utilities.ext.WEEK +import com.afollestad.nocknock.viewcomponents.R.array +import com.afollestad.nocknock.viewcomponents.R.layout +import com.afollestad.nocknock.viewcomponents.livedata.attachLiveData +import com.afollestad.nocknock.viewcomponents.livedata.lifecycleOwner +import com.afollestad.nocknock.viewcomponents.livedata.toViewError +import kotlinx.android.synthetic.main.validation_interval_layout.view.input +import kotlinx.android.synthetic.main.validation_interval_layout.view.spinner + +/** @author Aidan Follestad (@afollestad) */ +class ValidationIntervalLayout( + context: Context, + attrs: AttributeSet? = null +) : LinearLayout(context, attrs) { + + companion object { + const val INDEX_MINUTE = 0 + const val INDEX_HOUR = 1 + const val INDEX_DAY = 2 + const val INDEX_WEEK = 3 + } + + init { + orientation = VERTICAL + inflate(context, layout.validation_interval_layout, this) + } + + override fun onFinishInflate() { + super.onFinishInflate() + val spinnerAdapter = ArrayAdapter( + context, + layout.list_item_spinner, + resources.getStringArray(array.interval_options) + ) + spinnerAdapter.setDropDownViewResource( + layout.list_item_spinner_dropdown + ) + spinner.adapter = spinnerAdapter + } + + fun attach( + valueData: MutableLiveData, + multiplierData: MutableLiveData, + errorData: LiveData + ) { + input.attachLiveData(lifecycleOwner(), valueData) + spinner.attachLiveData( + lifecycleOwner = lifecycleOwner(), + data = multiplierData, + inTransformer = { + when (it) { + MINUTE -> 0 + HOUR -> 1 + DAY -> 2 + WEEK -> 3 + else -> throw IllegalStateException("Unknown multiplier: $it") + } + }, + outTransformer = { + when (it) { + INDEX_MINUTE -> MINUTE + INDEX_HOUR -> HOUR + INDEX_DAY -> DAY + INDEX_WEEK -> WEEK + else -> throw IllegalStateException("Unknown multiplier index: $it") + } + } + ) + errorData.toViewError(lifecycleOwner(), this, ::setError) + } + + private fun setError(error: String?) { + input.error = error + } +} diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt similarity index 58% rename from viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt rename to viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt index 3c91995..cf7858c 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt +++ b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt @@ -18,22 +18,17 @@ package com.afollestad.nocknock.viewcomponents.js import android.content.Context import android.util.AttributeSet import android.widget.HorizontalScrollView -import androidx.lifecycle.Lifecycle.State.CREATED -import androidx.lifecycle.Lifecycle.State.DESTROYED -import androidx.lifecycle.Lifecycle.State.RESUMED -import androidx.lifecycle.LifecycleOwner -import androidx.lifecycle.LifecycleRegistry import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData -import androidx.lifecycle.Observer -import com.afollestad.nocknock.utilities.ext.onTextChanged import com.afollestad.nocknock.viewcomponents.R.dimen import com.afollestad.nocknock.viewcomponents.R.layout -import com.afollestad.nocknock.viewcomponents.R.string import com.afollestad.nocknock.viewcomponents.ext.dimenFloat import com.afollestad.nocknock.viewcomponents.ext.dimenInt import com.afollestad.nocknock.viewcomponents.ext.showOrHide -import com.afollestad.nocknock.viewcomponents.ext.toViewVisibility +import com.afollestad.nocknock.viewcomponents.livedata.attachLiveData +import com.afollestad.nocknock.viewcomponents.livedata.lifecycleOwner +import com.afollestad.nocknock.viewcomponents.livedata.toViewError +import com.afollestad.nocknock.viewcomponents.livedata.toViewVisibility import kotlinx.android.synthetic.main.javascript_input_layout.view.error_text import kotlinx.android.synthetic.main.javascript_input_layout.view.userInput @@ -41,10 +36,7 @@ import kotlinx.android.synthetic.main.javascript_input_layout.view.userInput class JavaScriptInputLayout( context: Context, attrs: AttributeSet? = null -) : HorizontalScrollView(context, attrs), LifecycleOwner { - - private val lifecycle = LifecycleRegistry(this) - private lateinit var codeData: MutableLiveData +) : HorizontalScrollView(context, attrs) { init { val contentInset = dimenInt(dimen.content_inset) @@ -61,51 +53,20 @@ class JavaScriptInputLayout( inflate(context, layout.javascript_input_layout, this) } - override fun onFinishInflate() { - super.onFinishInflate() - lifecycle.markState(CREATED) - } - - override fun onAttachedToWindow() { - super.onAttachedToWindow() - lifecycle.markState(RESUMED) - } - - override fun onDetachedFromWindow() { - lifecycle.markState(DESTROYED) - super.onDetachedFromWindow() - } - - fun setError(error: String?) { - error_text.showOrHide(error != null) - error_text.text = error - } - fun attach( codeData: MutableLiveData, errorData: LiveData, visibility: LiveData ) { - this.codeData = codeData - this.codeData.observe(this, Observer { - if (it.isNullOrEmpty()) { - setDefaultCode() - } else { - userInput.setText(it) - } - }) - errorData.observe(this, Observer { - setError(if (it != null) resources.getString(it) else null) - }) - visibility.toViewVisibility(this, this) - userInput.onTextChanged { this.codeData.value = it } + userInput.attachLiveData(lifecycleOwner(), codeData) + errorData.toViewError(lifecycleOwner(), this, ::setError) + visibility.toViewVisibility(lifecycleOwner(), this) } fun clear() = userInput.setText("") - private fun setDefaultCode() = userInput.setText( - string.default_js - ) - - override fun getLifecycle() = lifecycle + private fun setError(error: String?) { + error_text.showOrHide(error != null) + error_text.text = error + } } diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt new file mode 100644 index 0000000..e27be55 --- /dev/null +++ b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt @@ -0,0 +1,120 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.viewcomponents.livedata + +import android.view.View +import android.widget.EditText +import android.widget.Spinner +import android.widget.TextView +import androidx.lifecycle.LifecycleOwner +import androidx.lifecycle.LiveData +import androidx.lifecycle.MutableLiveData +import androidx.lifecycle.Observer +import com.afollestad.nocknock.utilities.ext.onTextChanged +import com.afollestad.nocknock.utilities.ext.setTextAndMaintainSelection +import com.afollestad.nocknock.utilities.livedata.distinct +import com.afollestad.nocknock.viewcomponents.ext.onItemSelected +import com.afollestad.nocknock.viewcomponents.ext.showOrHide + +inline fun EditText.attachLiveData( + lifecycleOwner: LifecycleOwner, + data: MutableLiveData, + debounce: Int = 100, + pushOutChanges: Boolean = true, + pullInChanges: Boolean = false +) { + // Initial value + if (T::class == String::class) { + data.value = this.text.trim().toString() as T + } + // Out + if (pushOutChanges) { + when { + T::class == Int::class -> { + onTextChanged(debounce) { data.postValue(it.trim().toInt() as T) } + } + T::class == Long::class -> { + onTextChanged(debounce) { data.postValue(it.trim().toLong() as T) } + } + T::class == String::class -> { + onTextChanged(debounce) { data.postValue(it as T) } + } + else -> { + throw IllegalArgumentException("Can't send EditText text changes into ${T::class}") + } + } + } + // In + if (pullInChanges) { + data.distinct() + .observe(lifecycleOwner, Observer { + when { + T::class == Int::class -> setText(it as Int) + T::class == String::class -> setTextAndMaintainSelection(it as String) + } + }) + } +} + +fun Spinner.attachLiveData( + lifecycleOwner: LifecycleOwner, + data: MutableLiveData, + outTransformer: (Int) -> T, + inTransformer: (T) -> Int +) { + // Out + onItemSelected { data.postValue(outTransformer(it)) } + // In + data.distinct() + .observe(lifecycleOwner, Observer { + setSelection(inTransformer(it)) + }) +} + +fun LiveData.toViewError( + owner: LifecycleOwner, + view: View, + setter: (String?) -> Unit +) = observe(owner, Observer { error -> + setter( + if (error != null) { + view.resources.getString(error) + } else { + null + } + ) +}) + +fun LiveData.toViewError( + owner: LifecycleOwner, + view: EditText +) = toViewError(owner, view, view::setError) + +fun LiveData<*>.toViewText( + owner: LifecycleOwner, + view: TextView +) = distinct().observe(owner, Observer { + when (it) { + is Int -> view.setText(it) + is String -> view.text = it + else -> throw IllegalStateException("Can't set $it to a text view.") + } +}) + +fun LiveData.toViewVisibility( + owner: LifecycleOwner, + view: View +) = distinct().observe(owner, Observer { view.showOrHide(it) }) diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt new file mode 100644 index 0000000..111a36f --- /dev/null +++ b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt @@ -0,0 +1,59 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.viewcomponents.livedata + +import android.view.View +import android.view.View.OnAttachStateChangeListener +import androidx.lifecycle.Lifecycle.State.CREATED +import androidx.lifecycle.Lifecycle.State.DESTROYED +import androidx.lifecycle.Lifecycle.State.RESUMED +import androidx.lifecycle.Lifecycle.State.STARTED +import androidx.lifecycle.LifecycleOwner +import androidx.lifecycle.LifecycleRegistry +import com.afollestad.nocknock.viewcomponents.R + +/** @author Aidan Follestad (@afollestad) */ +class ViewLifecycleOwner(view: View) : LifecycleOwner, OnAttachStateChangeListener { + + private val lifecycleRegistry = LifecycleRegistry(this) + + init { + view.addOnAttachStateChangeListener(this) + } + + override fun getLifecycle() = lifecycleRegistry + + override fun onViewAttachedToWindow(v: View?) { + lifecycleRegistry.markState(CREATED) + lifecycleRegistry.markState(STARTED) + lifecycleRegistry.markState(RESUMED) + } + + override fun onViewDetachedFromWindow(v: View) { + lifecycleRegistry.markState(DESTROYED) + } +} + +fun View.lifecycleOwner(): LifecycleOwner { + val tagOwner = getTag(R.id.view_lifecycle_registry) as? ViewLifecycleOwner + return if (tagOwner != null) { + tagOwner + } else { + val newOwner = ViewLifecycleOwner(this) + setTag(R.id.view_lifecycle_registry, newOwner) + newOwner + } +} diff --git a/viewcomponents/src/main/res/layout/check_interval_layout.xml b/viewcomponents/src/main/res/layout/validation_interval_layout.xml similarity index 100% rename from viewcomponents/src/main/res/layout/check_interval_layout.xml rename to viewcomponents/src/main/res/layout/validation_interval_layout.xml diff --git a/viewcomponents/src/main/res/values/ids.xml b/viewcomponents/src/main/res/values/ids.xml new file mode 100644 index 0000000..561aa8e --- /dev/null +++ b/viewcomponents/src/main/res/values/ids.xml @@ -0,0 +1,4 @@ + + + + From 76a5a4645429c8949ae358f5c009ddcf3342d93f Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Fri, 7 Dec 2018 00:17:46 -0800 Subject: [PATCH 019/114] Add site view model should have default values --- .../nocknock/ui/addsite/AddSiteViewModel.kt | 15 ++++++++++++--- .../nocknock/ui/addsite/AddSiteViewModelTest.kt | 14 ++++++++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt index 9b388b1..47c6c4f 100644 --- a/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt +++ b/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt @@ -18,9 +18,11 @@ package com.afollestad.nocknock.ui.addsite import androidx.annotation.CheckResult import androidx.annotation.VisibleForTesting import androidx.annotation.VisibleForTesting.PRIVATE +import androidx.lifecycle.Lifecycle.Event.ON_START import androidx.lifecycle.LifecycleObserver import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData +import androidx.lifecycle.OnLifecycleEvent import com.afollestad.nocknock.R import com.afollestad.nocknock.data.AppDatabase import com.afollestad.nocknock.data.model.Site @@ -32,6 +34,7 @@ import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH import com.afollestad.nocknock.data.putSite import com.afollestad.nocknock.engine.validation.ValidationManager import com.afollestad.nocknock.ui.ScopedViewModel +import com.afollestad.nocknock.utilities.ext.MINUTE import com.afollestad.nocknock.utilities.livedata.map import com.afollestad.nocknock.viewcomponents.ext.isNullOrLessThan import kotlinx.coroutines.CoroutineDispatcher @@ -50,15 +53,21 @@ class AddSiteViewModel( // Public properties val name = MutableLiveData() val url = MutableLiveData() - val timeout = MutableLiveData().apply { - this.value = 10000 - } + val timeout = MutableLiveData() val validationMode = MutableLiveData() val validationSearchTerm = MutableLiveData() val validationScript = MutableLiveData() val checkIntervalValue = MutableLiveData() val checkIntervalUnit = MutableLiveData() + @OnLifecycleEvent(ON_START) + fun setDefaults() { + timeout.value = 10000 + validationMode.value = STATUS_CODE + checkIntervalValue.value = 0 + checkIntervalUnit.value = MINUTE + } + // Private properties private val isLoading = MutableLiveData() private val nameError = MutableLiveData() diff --git a/app/src/test/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt b/app/src/test/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt index 607f5fc..9acd165 100644 --- a/app/src/test/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt +++ b/app/src/test/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModelTest.kt @@ -24,6 +24,7 @@ import com.afollestad.nocknock.data.model.ValidationMode.STATUS_CODE import com.afollestad.nocknock.data.model.ValidationMode.TERM_SEARCH import com.afollestad.nocknock.engine.validation.ValidationManager import com.afollestad.nocknock.mockDatabase +import com.afollestad.nocknock.utilities.ext.MINUTE import com.afollestad.nocknock.utilities.livedata.test import com.google.common.truth.Truth.assertThat import com.nhaarman.mockitokotlin2.any @@ -56,6 +57,19 @@ class AddSiteViewModelTest { @After fun tearDown() = viewModel.destroy() + @Test fun setDefaults() { + viewModel.setDefaults() + + assertThat(viewModel.name.value).isNull() + assertThat(viewModel.url.value).isNull() + assertThat(viewModel.timeout.value).isEqualTo(10000) + assertThat(viewModel.validationMode.value).isEqualTo(STATUS_CODE) + assertThat(viewModel.validationSearchTerm.value).isNull() + assertThat(viewModel.validationScript.value).isNull() + assertThat(viewModel.checkIntervalValue.value).isEqualTo(0) + assertThat(viewModel.checkIntervalUnit.value).isEqualTo(MINUTE) + } + @Test fun onUrlWarningVisibility() { val urlWarningVisibility = viewModel.onUrlWarningVisibility() .test() From 3b1aae66f304550e1a267f53e999c4bcddfaeb8a Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Fri, 7 Dec 2018 00:19:41 -0800 Subject: [PATCH 020/114] ValidateJob must retrieve the job ID as a long --- .../com/afollestad/nocknock/engine/validation/ValidationJob.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationJob.kt b/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationJob.kt index 8110273..f5235e8 100644 --- a/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationJob.kt +++ b/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationJob.kt @@ -152,7 +152,7 @@ class ValidationJob : JobService() { } override fun onStopJob(params: JobParameters): Boolean { - val siteId = params.extras.getInt(KEY_SITE_ID) + val siteId = params.extras.getLong(KEY_SITE_ID) log("Check job for site $siteId is done") return true } From 8effe38a1ab6c1687446511694084f195ed9616b Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Fri, 7 Dec 2018 00:27:00 -0800 Subject: [PATCH 021/114] More View <-> LiveData connection fixes --- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 8 ++++---- .../nocknock/ui/viewsite/ViewSiteViewModelTest.kt | 2 +- .../com/afollestad/nocknock/utilities/ext/DateExt.kt | 2 +- .../viewcomponents/livedata/LiveDataViewExt.kt | 12 +++++++++++- 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index 76011bc..8f82296 100644 --- a/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -75,6 +75,10 @@ class ViewSiteActivity : AppCompatActivity() { addObserver(statusUpdateReceiver) } + // Populate view model with initial data + val model = intent.getSerializableExtra(KEY_SITE) as Site + viewModel.setModel(model) + // Loading loadingProgress.observe(this, viewModel.onIsLoading()) @@ -149,10 +153,6 @@ class ViewSiteActivity : AppCompatActivity() { doneBtn.setOnClickListener { viewModel.commit { finish() } } - - // Populate view model with initial data - val model = intent.getSerializableExtra(KEY_SITE) as Site - viewModel.setModel(model) } private fun setupUi() { diff --git a/app/src/test/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt b/app/src/test/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt index 5f66a73..04e1c79 100644 --- a/app/src/test/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt +++ b/app/src/test/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelTest.kt @@ -228,7 +228,7 @@ class ViewSiteViewModelTest { text.assertValues(TEXT_CHECKS_DISABLED) viewModel.disabled.value = false - text.assertValues("December 6, 8:35AM") + text.assertValues("December 6, 8:35 AM") } @Test fun getCheckIntervalMs() { diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/DateExt.kt b/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/DateExt.kt index 64c1008..6ef6e7f 100644 --- a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/DateExt.kt +++ b/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/DateExt.kt @@ -23,6 +23,6 @@ fun Long.formatDate(): String { if (this <= 0) { return "(None)" } - val df = SimpleDateFormat("MMMM d, h:mma", Locale.getDefault()) + val df = SimpleDateFormat("MMMM d, h:mm a", Locale.getDefault()) return df.format(Date(this)) } diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt index e27be55..4ca3564 100644 --- a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt +++ b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt @@ -38,7 +38,17 @@ inline fun EditText.attachLiveData( ) { // Initial value if (T::class == String::class) { - data.value = this.text.trim().toString() as T + if (data.value != null) { + this.setText(data.value as? String) + } else { + data.value = this.text.trim().toString() as T + } + } else if (T::class == Int::class) { + if (data.value != null) { + this.setText(data.value.toString()) + } else { + data.value = this.text.trim().toString().toInt() as T + } } // Out if (pushOutChanges) { From b09088ab9eaada599df4c45bd0f1ff2f9dea4189 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Fri, 7 Dec 2018 00:30:50 -0800 Subject: [PATCH 022/114] String tweak --- app/src/main/res/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ce75a62..d4be0d7 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -49,7 +49,7 @@ Disable Enable Auto Validation & Save Changes - Network Response Timeout + Network Response Timeout (ms) 10000 Refresh Status From b7c51a12ed63607f175ca113a463a0cf7b07d400 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Fri, 7 Dec 2018 00:38:43 -0800 Subject: [PATCH 023/114] Fix DiffUtil usage --- .../com/afollestad/nocknock/adapter/SiteDiffCallback.kt | 4 ++-- .../nocknock/viewcomponents/livedata/LiveDataViewExt.kt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteDiffCallback.kt b/app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteDiffCallback.kt index 2893c0a..de8b7ca 100644 --- a/app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteDiffCallback.kt +++ b/app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteDiffCallback.kt @@ -31,10 +31,10 @@ class SiteDiffCallback( override fun areItemsTheSame( oldItemPosition: Int, newItemPosition: Int - ) = oldItems[oldItemPosition].id == oldItems[newItemPosition].id + ) = oldItems[oldItemPosition].id == newItems[newItemPosition].id override fun areContentsTheSame( oldItemPosition: Int, newItemPosition: Int - ) = oldItems[oldItemPosition] == oldItems[newItemPosition] + ) = oldItems[oldItemPosition] == newItems[newItemPosition] } diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt index 4ca3564..9ab5e1f 100644 --- a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt +++ b/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt @@ -47,7 +47,7 @@ inline fun EditText.attachLiveData( if (data.value != null) { this.setText(data.value.toString()) } else { - data.value = this.text.trim().toString().toInt() as T + data.value = (this.text.trim().toString().toIntOrNull() ?: 0) as T } } // Out From a8626b4d293cf910e53c9c79dbd5c1a59b5da58d Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Wed, 12 Dec 2018 20:56:13 -0800 Subject: [PATCH 024/114] Add .editorconfig --- .editorconfig | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .editorconfig diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..17bc1fa --- /dev/null +++ b/.editorconfig @@ -0,0 +1,3 @@ +[*.kt] +indent_size = 2 +continuation_indent_size=4 \ No newline at end of file From 4c3c22eb8db16b72795142cd05bf8e4c7b6a4c10 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Wed, 12 Dec 2018 21:42:15 -0800 Subject: [PATCH 025/114] Android Studio stopped recognizing kotlin folders as source root automatically. Renamed main ones to java again --- .idea/misc.xml | 2 +- app/src/main/{kotlin => java}/com/afollestad/nocknock/AppExt.kt | 0 .../{kotlin => java}/com/afollestad/nocknock/NockNockApp.kt | 0 .../com/afollestad/nocknock/adapter/SiteAdapter.kt | 0 .../com/afollestad/nocknock/adapter/SiteDiffCallback.kt | 0 .../nocknock/broadcasts/StatusUpdateIntentReceiver.kt | 0 .../com/afollestad/nocknock/dialogs/AboutDialog.kt | 0 .../{kotlin => java}/com/afollestad/nocknock/koin/MainModule.kt | 0 .../com/afollestad/nocknock/koin/ViewModelModule.kt | 0 .../com/afollestad/nocknock/ui/ScopedViewModel.kt | 0 .../com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt | 0 .../com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt | 0 .../com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt | 0 .../com/afollestad/nocknock/ui/main/MainActivity.kt | 0 .../com/afollestad/nocknock/ui/main/MainActivityExt.kt | 0 .../com/afollestad/nocknock/ui/main/MainViewModel.kt | 0 .../com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt | 0 .../com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt | 0 .../com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt | 0 .../com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt | 0 .../com/afollestad/nocknock/utilities/CommonModule.kt | 0 .../com/afollestad/nocknock/utilities/ext/AnimationExt.kt | 0 .../com/afollestad/nocknock/utilities/ext/ContextExt.kt | 0 .../com/afollestad/nocknock/utilities/ext/DateExt.kt | 0 .../com/afollestad/nocknock/utilities/ext/TimeExt.kt | 0 .../com/afollestad/nocknock/utilities/ext/UriExt.kt | 0 .../com/afollestad/nocknock/utilities/ext/ViewExt.kt | 0 .../com/afollestad/nocknock/utilities/js/JavaScript.kt | 0 .../com/afollestad/nocknock/utilities/livedata/Distinct.kt | 0 .../com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt | 0 .../com/afollestad/nocknock/utilities/livedata/TestLiveData.kt | 0 .../com/afollestad/nocknock/utilities/livedata/Zip.kt | 0 .../afollestad/nocknock/utilities/providers/BundleProvider.kt | 0 .../afollestad/nocknock/utilities/providers/IntentProvider.kt | 0 .../afollestad/nocknock/utilities/providers/JobInfoProvider.kt | 0 .../nocknock/utilities/providers/NotificationChannelProvider.kt | 0 .../nocknock/utilities/providers/NotificationProvider.kt | 0 .../com/afollestad/nocknock/utilities/providers/SdkProvider.kt | 0 .../afollestad/nocknock/utilities/providers/StringProvider.kt | 0 .../nocknock/utilities/ui/DebouncedOnClickListener.kt | 0 .../com/afollestad/nocknock/data/AppDatabase.kt | 0 .../{kotlin => java}/com/afollestad/nocknock/data/SiteDao.kt | 0 .../com/afollestad/nocknock/data/SiteSettingsDao.kt | 0 .../com/afollestad/nocknock/data/ValidationResultsDao.kt | 0 .../com/afollestad/nocknock/data/model/Converters.kt | 0 .../{kotlin => java}/com/afollestad/nocknock/data/model/Site.kt | 0 .../com/afollestad/nocknock/data/model/SiteSettings.kt | 0 .../com/afollestad/nocknock/data/model/Status.kt | 0 .../com/afollestad/nocknock/data/model/ValidationMode.kt | 0 .../com/afollestad/nocknock/data/model/ValidationResult.kt | 0 .../com/afollestad/nocknock/engine/EngineModule.kt | 0 .../com/afollestad/nocknock/engine/validation/BootReceiver.kt | 0 .../com/afollestad/nocknock/engine/validation/ValidationJob.kt | 0 .../afollestad/nocknock/engine/validation/ValidationManager.kt | 0 .../com/afollestad/nocknock/notifications/Channel.kt | 0 .../nocknock/notifications/NockNotificationManager.kt | 0 .../afollestad/nocknock/notifications/NotificationsModule.kt | 0 .../afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt | 0 .../com/afollestad/nocknock/viewcomponents/StatusImageView.kt | 0 .../com/afollestad/nocknock/viewcomponents/ext/IntExt.kt | 0 .../com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt | 0 .../com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt | 0 .../com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt | 0 .../viewcomponents/interval/ValidationIntervalLayout.kt | 0 .../nocknock/viewcomponents/js/JavaScriptInputLayout.kt | 0 .../nocknock/viewcomponents/livedata/LiveDataViewExt.kt | 0 .../nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt | 0 67 files changed, 1 insertion(+), 1 deletion(-) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/AppExt.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/NockNockApp.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/adapter/SiteAdapter.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/adapter/SiteDiffCallback.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/dialogs/AboutDialog.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/koin/MainModule.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/koin/ViewModelModule.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/ScopedViewModel.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/main/MainActivity.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/main/MainActivityExt.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/main/MainViewModel.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt (100%) rename app/src/main/{kotlin => java}/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/CommonModule.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/ext/AnimationExt.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/ext/ContextExt.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/ext/DateExt.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/ext/TimeExt.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/ext/UriExt.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/ext/ViewExt.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/js/JavaScript.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/livedata/Distinct.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/livedata/Zip.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/providers/BundleProvider.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/providers/IntentProvider.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/providers/SdkProvider.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/providers/StringProvider.kt (100%) rename common/src/main/{kotlin => java}/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/AppDatabase.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/SiteDao.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/SiteSettingsDao.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/ValidationResultsDao.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/model/Converters.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/model/Site.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/model/SiteSettings.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/model/Status.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/model/ValidationMode.kt (100%) rename data/src/main/{kotlin => java}/com/afollestad/nocknock/data/model/ValidationResult.kt (100%) rename engine/src/main/{kotlin => java}/com/afollestad/nocknock/engine/EngineModule.kt (100%) rename engine/src/main/{kotlin => java}/com/afollestad/nocknock/engine/validation/BootReceiver.kt (100%) rename engine/src/main/{kotlin => java}/com/afollestad/nocknock/engine/validation/ValidationJob.kt (100%) rename engine/src/main/{kotlin => java}/com/afollestad/nocknock/engine/validation/ValidationManager.kt (100%) rename notifications/src/main/{kotlin => java}/com/afollestad/nocknock/notifications/Channel.kt (100%) rename notifications/src/main/{kotlin => java}/com/afollestad/nocknock/notifications/NockNotificationManager.kt (100%) rename notifications/src/main/{kotlin => java}/com/afollestad/nocknock/notifications/NotificationsModule.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/StatusImageView.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt (100%) rename viewcomponents/src/main/{kotlin => java}/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt (100%) diff --git a/.idea/misc.xml b/.idea/misc.xml index 06ee295..1a0fbc3 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -29,7 +29,7 @@ - + diff --git a/app/src/main/kotlin/com/afollestad/nocknock/AppExt.kt b/app/src/main/java/com/afollestad/nocknock/AppExt.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/AppExt.kt rename to app/src/main/java/com/afollestad/nocknock/AppExt.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/NockNockApp.kt rename to app/src/main/java/com/afollestad/nocknock/NockNockApp.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteAdapter.kt b/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteAdapter.kt rename to app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteDiffCallback.kt b/app/src/main/java/com/afollestad/nocknock/adapter/SiteDiffCallback.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/adapter/SiteDiffCallback.kt rename to app/src/main/java/com/afollestad/nocknock/adapter/SiteDiffCallback.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt b/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt rename to app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/dialogs/AboutDialog.kt b/app/src/main/java/com/afollestad/nocknock/dialogs/AboutDialog.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/dialogs/AboutDialog.kt rename to app/src/main/java/com/afollestad/nocknock/dialogs/AboutDialog.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/koin/MainModule.kt b/app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/koin/MainModule.kt rename to app/src/main/java/com/afollestad/nocknock/koin/MainModule.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/koin/ViewModelModule.kt b/app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/koin/ViewModelModule.kt rename to app/src/main/java/com/afollestad/nocknock/koin/ViewModelModule.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/ScopedViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/ScopedViewModel.kt rename to app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt rename to app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt rename to app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt rename to app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteViewModel.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainActivity.kt rename to app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainActivityExt.kt rename to app/src/main/java/com/afollestad/nocknock/ui/main/MainActivityExt.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/main/MainViewModel.kt rename to app/src/main/java/com/afollestad/nocknock/ui/main/MainViewModel.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt rename to app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt rename to app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt rename to app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModel.kt diff --git a/app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt similarity index 100% rename from app/src/main/kotlin/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt rename to app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteViewModelExt.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/CommonModule.kt b/common/src/main/java/com/afollestad/nocknock/utilities/CommonModule.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/CommonModule.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/CommonModule.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/AnimationExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/AnimationExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/AnimationExt.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/ContextExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/ContextExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/ContextExt.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/DateExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/DateExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/DateExt.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/TimeExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/TimeExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/TimeExt.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/UriExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/UriExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/ViewExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/ext/ViewExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ext/ViewExt.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/js/JavaScript.kt b/common/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/js/JavaScript.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/js/JavaScript.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Distinct.kt b/common/src/main/java/com/afollestad/nocknock/utilities/livedata/Distinct.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Distinct.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/livedata/Distinct.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt b/common/src/main/java/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/livedata/TestLiveData.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Zip.kt b/common/src/main/java/com/afollestad/nocknock/utilities/livedata/Zip.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/livedata/Zip.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/livedata/Zip.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/BundleProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/BundleProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/BundleProvider.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/IntentProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/IntentProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/IntentProvider.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/JobInfoProvider.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationChannelProvider.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/NotificationProvider.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/SdkProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/SdkProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/SdkProvider.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/StringProvider.kt b/common/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/providers/StringProvider.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/providers/StringProvider.kt diff --git a/common/src/main/kotlin/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt similarity index 100% rename from common/src/main/kotlin/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt rename to common/src/main/java/com/afollestad/nocknock/utilities/ui/DebouncedOnClickListener.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/AppDatabase.kt b/data/src/main/java/com/afollestad/nocknock/data/AppDatabase.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/AppDatabase.kt rename to data/src/main/java/com/afollestad/nocknock/data/AppDatabase.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/SiteDao.kt b/data/src/main/java/com/afollestad/nocknock/data/SiteDao.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/SiteDao.kt rename to data/src/main/java/com/afollestad/nocknock/data/SiteDao.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/SiteSettingsDao.kt b/data/src/main/java/com/afollestad/nocknock/data/SiteSettingsDao.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/SiteSettingsDao.kt rename to data/src/main/java/com/afollestad/nocknock/data/SiteSettingsDao.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/ValidationResultsDao.kt b/data/src/main/java/com/afollestad/nocknock/data/ValidationResultsDao.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/ValidationResultsDao.kt rename to data/src/main/java/com/afollestad/nocknock/data/ValidationResultsDao.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/model/Converters.kt b/data/src/main/java/com/afollestad/nocknock/data/model/Converters.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/model/Converters.kt rename to data/src/main/java/com/afollestad/nocknock/data/model/Converters.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/model/Site.kt b/data/src/main/java/com/afollestad/nocknock/data/model/Site.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/model/Site.kt rename to data/src/main/java/com/afollestad/nocknock/data/model/Site.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/model/SiteSettings.kt b/data/src/main/java/com/afollestad/nocknock/data/model/SiteSettings.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/model/SiteSettings.kt rename to data/src/main/java/com/afollestad/nocknock/data/model/SiteSettings.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/model/Status.kt b/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/model/Status.kt rename to data/src/main/java/com/afollestad/nocknock/data/model/Status.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/model/ValidationMode.kt b/data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/model/ValidationMode.kt rename to data/src/main/java/com/afollestad/nocknock/data/model/ValidationMode.kt diff --git a/data/src/main/kotlin/com/afollestad/nocknock/data/model/ValidationResult.kt b/data/src/main/java/com/afollestad/nocknock/data/model/ValidationResult.kt similarity index 100% rename from data/src/main/kotlin/com/afollestad/nocknock/data/model/ValidationResult.kt rename to data/src/main/java/com/afollestad/nocknock/data/model/ValidationResult.kt diff --git a/engine/src/main/kotlin/com/afollestad/nocknock/engine/EngineModule.kt b/engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt similarity index 100% rename from engine/src/main/kotlin/com/afollestad/nocknock/engine/EngineModule.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/EngineModule.kt diff --git a/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/BootReceiver.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt similarity index 100% rename from engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/BootReceiver.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/validation/BootReceiver.kt diff --git a/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationJob.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt similarity index 100% rename from engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationJob.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt diff --git a/engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt similarity index 100% rename from engine/src/main/kotlin/com/afollestad/nocknock/engine/validation/ValidationManager.kt rename to engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt diff --git a/notifications/src/main/kotlin/com/afollestad/nocknock/notifications/Channel.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt similarity index 100% rename from notifications/src/main/kotlin/com/afollestad/nocknock/notifications/Channel.kt rename to notifications/src/main/java/com/afollestad/nocknock/notifications/Channel.kt diff --git a/notifications/src/main/kotlin/com/afollestad/nocknock/notifications/NockNotificationManager.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt similarity index 100% rename from notifications/src/main/kotlin/com/afollestad/nocknock/notifications/NockNotificationManager.kt rename to notifications/src/main/java/com/afollestad/nocknock/notifications/NockNotificationManager.kt diff --git a/notifications/src/main/kotlin/com/afollestad/nocknock/notifications/NotificationsModule.kt b/notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt similarity index 100% rename from notifications/src/main/kotlin/com/afollestad/nocknock/notifications/NotificationsModule.kt rename to notifications/src/main/java/com/afollestad/nocknock/notifications/NotificationsModule.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/LoadingIndicatorFrame.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/StatusImageView.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/StatusImageView.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/StatusImageView.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/IntExt.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ScrollViewExt.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/SpinnerExt.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/interval/ValidationIntervalLayout.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/livedata/LiveDataViewExt.kt diff --git a/viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt similarity index 100% rename from viewcomponents/src/main/kotlin/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt rename to viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/livedata/ViewLifecycleOwner.kt From a8d7f85c9b892bc974ae9221dfac5a5fa9eab2ec Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Wed, 2 Jan 2019 21:09:50 -0800 Subject: [PATCH 026/114] Update showcase image --- README.md | 4 ++-- art/showcasemain.png | Bin 737498 -> 0 bytes art/showcasemain2.png | Bin 0 -> 848771 bytes 3 files changed, 2 insertions(+), 2 deletions(-) delete mode 100644 art/showcasemain.png create mode 100644 art/showcasemain2.png diff --git a/README.md b/README.md index ea087de..97b2fd8 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ [![Build Status](https://travis-ci.org/afollestad/nock-nock.svg)](https://travis-ci.org/afollestad/nock-nock) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg?style=flat-square)](https://www.apache.org/licenses/LICENSE-2.0.html) -![Showcase](https://raw.githubusercontent.com/afollestad/nock-nock/master/art/showcasemain.png) +![Showcase](https://raw.githubusercontent.com/afollestad/nock-nock/master/art/showcasemain2.png) Nock Nock is a simple app which allows you to monitor your websites for maximum uptime. @@ -11,4 +11,4 @@ The app will automatically knock on the door of your websites (or web servers) o to make sure they are up and responding successfully. If something is wrong, you get a notification telling you so.
-Get it on Google Play \ No newline at end of file +Get it on Google Play diff --git a/art/showcasemain.png b/art/showcasemain.png deleted file mode 100644 index 3d6a0c6faa1943df07f9073f0c4892166003efca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 737498 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℘$ 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
x}Jpio6}CM63+? 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ⅅg@wAc`<~6pp0Y0a(h|=fpn+uJ$DcL{F|+d> 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
AlP9t4?rFUNe0bv-o6d8qOGmXz|OAEIQ^W$r< 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ℜvhO(eAwu(`_%D5f7weAxX5IB; zX+_We{mO+;?EZXtQ~l%eUhO}hk9qCc&ibMIqu{@?)24rKzTo-aGw;FqFY6LY_T3PC zwcoG($NNhU4?h3<^8x3-PY*Qf&T)O*{@HHbwOf1FKiuzg?8o9T4u&7$Z(0A{zMp-Z z|B><^|C#;&xBO>1oTu9(Isckfo#LL%MLW;`{rmFf_Yc$A{Xgn16?y;n@S&siJFISI zyJZ#KFFa)MUJHJL`##M#w+;X6H61aVc;7D2g!8k_&l8^rbF4t%!pQ4?O0*=4}vdaL6xc**!Lo>16j}yBss=6|1ybu9&E2gcl2SO@8St z7N^~%)Tg+xJW#}mL9aWB_pm_Q>aSJ0EoXPXd%w`r>FlT6MGwplzOOwav3+Tp$?JQm zmlj-qW-+ZlpX-{Zhu-y#{wMC(%=`5xU~zQxUzXmPwW;^ia*x?nO)Y;n{d$p6Q$Uda ztYsdTLpa`T290U8FUyqRVJnbf4-{Fb!KDH^!LD^;725 zbN=&&sI><3&kMFG*4zgz&v&_WqG+eftYt~EN|U7+pr_iN_$fy`&=sq^mMryA6HZLi zJT2roDPdy-$7GqAv2Ke6bxt2D+bybQwM(DjNR{_rkGH$_>=DTn+H~+`ZgKqPTd@_F zcdhI%iEUrCN-5Fp-=4F7DpnM}w|hJFxPt0Y27$MWs!tlc=l=6Q>%PywmF;WZnAbfv z|F?eI_xgX&>;EbGJ3p`bUje;nkGy8r*={6C)ms?`n~e1Ew2 z@Aj_6@Bcq(zJAhx=kT8SC04RC+Ulwu+Y%+%HsAkOFSp0<-*&FHM7bH?zunh*_W7sd z(>(7l8QvFn_}-`pf2iE~-y_5C{l#-nHd#bpHkkpwXZ3F0#ATYBbcC;OTFtwAlIXqi zdr$A~|Gsst<+FPxf-dX)ua~~q)wfBfb>-o0xr)!se1+G&UbHS7(yRLNyH=yC$$;nR zyLaneGgYK&Tr>gQT?6S&tXh?1A#=!pM@Ni%Nha6rZJQQxtZ6oz*XMFe?rkTJ zHLtB~&L6JY3u-LJUZ3HkR`KVDA!zZIUG3CKUTnR~el|?9eo<^xctL)ae#x9ws{%s5 zwgv25mz`rK{gJ&w^-#EotAxuerkKc#yVu@tSFPC6xo5W1JLlt{a@%^h6&1;woj$?V zVrKX?w{*+Y$rD-Mhpaoh<=VA8%ZCfk?ohg3E`1kt8mj!AciUONE(Gs3NsUxG|5^I2 zf-#e=_=zV8v(&&VG6O)j20C9h(V6c3q>?Z8I_R)k4X(7!Gd=1Ic$_6XPvn?N@Gv;c zU?_=gfB)OSH+V_Ygv!$fJcV&y9}IYymt`t}T1$NAKO0E!Y`B|OSX!!jt>t3{&t((P z#U`f?6j-?IzwbURb;rJaZu6ci?L1r>yCzIq#IgANH=q)|{?tILzumdN4w zw`{klo1Rg}n(NttexX;T**2|O)$+3W4F9ZUogo6p3m3e$vYN}cNyk~{xX0xXi7O_) z!sioiD!9Gozq@~%p`V)YWs{39OIjG8+FjVCy1w!Tr4Lhu%1@WZTkh%h{OeUJX9nH*EFQ>_y%?&rV7Eux;OZ`<8%D zuQ_bPonUJLj^+MU?7sCh_R0I%KNf(tJ~++;kMA=opD*6AuKQp@gNmoY{PP!Ie|4F4 z0DSoIhuZiz3**SnNhQ+CEY`t(U?-RnnBp0IdM zO4u5;P{&(wjhb-h``;gGs=Y{vkjYGO=*4g>F3jL6Cxez z@~2PO@%F~E=VwdT?fiFg{>i5+d3Rqs^~}osM5kNP-%m9e!Zr6(=bd<3KGToy;RMsV z`|tjg)C7totvU7gdX92$rq|hmSn+MS%HZL(9qY7@{9ApM3v{wduJqxD0s^cXy)4n1H|YX zyB2l4mn_NG3~V{0w?%B?!M1D4zt%a`u6u3uYS*zEyL#QTFBjh2Dt32k-|Zez{zBd_ zcYAmWb6?NBvn)3Ip7R#xxWy}dP1-aVpTABKN!u5RK7@gFwW5Th43ZK(kNB#Eszx9#ro<<~slba1y~_v@$O zkL=tgtXj1|gDd8`YoLhI#lxF)7!G7@6|%0&2cO=q;@NaDg9Wl}c&^_=3qDX+lZEk+ zfruKY#F!7gRf4UVQBO~=pt4f4>~;LwFeTRo_uoJM@)9f%g~~gf#fm0RnE7jBkmIaH^|Qi#AGgjq za9K@=yrAu8H99wPy;s~wUB|FbpwT>Y){ZBSZ)bF^%fGF<|LlW{CTVZ9)Z^#R z;kl6ZC}Z2wwQuykP5rs*+8pO2H-Dcoy8TuR+@>{jzx`{%sf({KUK9k+U9_i0D*1vg zpnvs>Yi}I?GkZl9r1ZEiX$zcRGKZw`vtf69f2UREf66xb^LM+qKum!Km|bBX2EA{vp#?6 zSu%yo>zBgicAM=Qf=lnecfKC4dSlW>72n{HP}Ngbea#0G7_OHtd~F3@KLQ#fa44I3 zWY)4Z+csWI`*GWJ+pTN7H$zlsADyHkn8ueiKXVr7aFSYi&~?&rGRKwPHeU<6Ug|18 z`KGJcqLXUU#|v95muPV5O!r=M{q^=dhKW1RSKjK$j~6?eURP`*b7@^{sfm65wW~gR zvepGpdF6E8|L1PC!+ZGgrP_VZ_HAZ2W zZf_ju;PC6EJnha?QafM2&Ia!QR-eQS8m_$m9dw^hqS(b!*=@PWyYD7h&2_q7I#Fpu zgbw&rQP7fa@ZDYw>t4V3{<}biy--G(gK47Prn`B9uAoDDz=zwo$sGUjVsU@VkGa3v zT~?oc(zoov>|YCap5A%q{g%nKo8LdJbZ5$+WvqS-H%KK)$j6MH== z{YR`!)+&pZ+sE$cO+KNQC%wO&V@iIsxqOkWrAtoz^j&0k|8eL51=i7@vn*cs0TQ$h0YOh=kXb1M9nEm(N*IyT2Dd{M{ z@pww^?TEEuKi=N|m-}O1|K`ocpxfQjjB7rfRNs&*J^ADlH=&6+GK$WPb0j`JY?tr) zHa)d6nRh{{x1Uvji0hJ?37L&8?@m7z3Jp~}U(6uz`f-7U2&e7rvuv5OlsK3s+PJ*# z(pfeA_~CVyx6IUL*~=#}Ot>y=6o2CN-L%b)fg*?ATzdWWh=g_*lcT_cPoIKj#G3dD zyO}?@x@+3=ogThQ%#*+aq%)i~1XVbgu9WKjy1hv!XM6OL%&H4_c4(JJe&?GxKmOSF zskirOzw`QQu_X7b>5iW~N*QNPCHtBQo;+`6^s8idtf9Tcv)V?q0ap0H{$T^2&!%b9 zH{?yf_)tLk$n1{qDT;EOmYyB!Uhfj%51zZ}#gx9~SDMbIDYML;eU_~>HhFIx_r+(i zmsH;=P58H|{8F99y%3InYR{{smq`je3=3^F@m=`Zs%o#?sZAn>GH-8NxJv7j&GDk0 zEueOoaH2$#-TcM(--EUdBuXT0jNsU4*12#psGGGxhubyq!PC>zC3@XJH;jU>ylDrY zs#PGve)*-y_3PImeZ3_0zl$`E^!))}`*V0(ZqM=LAN%@m=BWMh^gA@cSLW=#>~}?e zsTq7*mKFtcah#pLYL&~+XSS1roo55ap{qf64bm5JNtKz)*DQYjjR&CJXUbU*rZsL3C z4c1rF?@KH)?Ks9hQ)||R8JV*zGi&eUZNFgRyF@p4d-RdQp4YFl6ODpITxa}b=$N8v zR2y)JtM>nk@4pRroWFd}+Uhj#dD6R*-LZ)lS4@0o%+C1xchx@WH&*X&o7KLF`h2VB z@L4n2UphCwzsZymSZO2c+^Lu1Fy(gGb<>bg(XS_-dA3!?C!nn_0*zFjVg8WXZ4PM? zNIdh+ygm2dzD)Vtrf17C*8h~`yq@X)>}{ELkgSPs^CAtWDejt_DqL${OJ&aDVyuq6 zZr)P=UC{2{(;4fv{yz5of9_-I|G7)w*6?StE&T1j=-nnAK^D-(90e94N<~6%%B*A) z_k92#o0}-X#kljaMaLoz{rG(@`@zkyOD3YbUrhF}0N?plF|Yl2zq~S!b4*+uSFn4a zNXH_NE7mi8TsAq*dw!u*w)r4K<-Es_9yxWKy=)@7=4Y z*NlG``o5LeaHev)1|B(oc1fG_k$XimV-MYm-M#&On$ZpOG`^YN+w1ma-+AZFml^&3 zo9e_jLQeOOtuuRP^z7og@9}KgXL3EgUORvN_3Ra(xqu_Zihaq72bQy}czzz7|DHT? zQOR@(Y>8XnK6$e6mD1juIc?yL7kzzw6P{a6QgIYAIqT8(y4Twu{00rrGcsI$DPsTY zV!z9xlNlyL%QiqxN2;mm$=lw2G^z3V`T6%N_$E0v-}3vsNrP)mn0Dd|rQpLECPF8p zrc{CMZk@K&V7g|P(xk0Emqore{A%zK&Q0E#+jBabP15j*iC~sF=SN14jr->06y3h_ zqHOnyRa~Ec{@H4Jev?jOz{*u#DzXy;okK$<+8B=)wk(`-DFL*!qAZ|ma^|c>b5kRg zJcTaSr_8C$xOMH=?TQ!g)y`J$&bQ4rZZy50y)C$I>DH`xua2BaIoZuQ26=slpOs$x zq1=2TS2L97v)&;!0od{yX!>hQoWY*3_nt$j{6G6z*w8`j!-Yo*HyQN5S~B-^W_g~_ zhHq82D^_XUTffSS<9F)A-FNJS{+O2Y|F`;3YB=BiO6|hfJ)TQ)B-lh;9cL}m=wjL% z=f9*bB$V~ALBegbu0;;>o`X)Qwz6^(0Udht;%n8RIf8A9A)!YT3>tE8a~u|koVIXX z_KtPkHlXQ`gjs68{@TS{KU!mV{OMEGn)}C7j2uN=ISzj~#`k&4=08~|)27t8T4x4ZoO$qsgI&)~>|^2k*`M=kLDkAPwLD={yqF%e2|nECwjlPp6ajt(1NpaCyR%Wtx{vT2mtnWY}jdQ}hjX z2~?RR0X{3yV-m~WIR53!mv=1kQ2D{r?mTDiTu_s**+kjh%`MT^ zxOubjjcvU*bJT=7k3BX7ZJOyQHWlX4c-z4~#n&e@F1+T5T771MUYAQF1y7VjK zwwcx3J`e9jrG3|wjVvZ4CSTv1Up;@`(@#4Vn>O;y-PHM6Z$cw$h3WMdl@6KmUyNhf zCF^`Hw`9(`kz@8~)@Pgj6S*$E|DG5r#-MP%_(-7+&+?Qog~gYu_PWU&FVFgI_vGtG z#b>XbFPJC@eaX3*{zGL}w#v+s6z1g1Aui{Qe%>jue;M(s?#8#fL3!L$C%<0uT-$c_ zy|$U{iTBjtL#FV=Cec>OaBVhk$cK6{=*_(E^?x5Z`aN-e!N#4*JO0>l8fPB=7Pp?= z_i_s(XqM^GiDeri?=k*=eaLxPdd*zWVyExFK(h#vK9^nAUv~}^;b>y$dkos_;~T8v zsU&0@66z`gx|U(z`@^4YSR5Nxuh#zZyH-Y4R?#;YG|X5ilgP%|#Na5v@v$Uw+KwGN z8Xj9%SXntuOO4PGyI{h5_@ThE%%rVR4}blVT9$cFfLDLIcg4JR_kOvBI^G*6+jj;% z{lZsSbNZ#+0r5w5M(rn_rXJMY>)v$F?Bg4~$4=XC?@ipbYqj75-)G6i4-7Y2=$#&Sr~kx6Jr`VG4uSsmhEz@7$f6I}PpU+f+8`oCaNr zb2EK@=a#-zs{~jW?S4KH{_?vPw3}X5R*}b<#j(M}_h=OhWF92RKmxQB2E45D!Q+1W zw#OD9YU5{I(2zXx*~aj@#@^<4nv$xTmfb=vmrPs*Sd=t7CmFIeH@;ZEYn|);NuGI| zZ*qL@NR)W=?*yk*yMq1fmvyIJhsRzwzqZ2pc;M~gdDoWgS{EqNnxQ|_zvg~BXd>Tv zhVNvRgC$m?*HdPxwH;o#@a@0T&jUnUdp2*<$(Im&S-E7DR!C^=SsjidUz^%?u65Vxo&(nHJqGYrtOSfUo`1R?YoP!&$<7s zdOCmhbH;rU{$;ZD9gWH1(cfbauQUCg+qId0WwhD5J-oMC?&k-!+t_KYZQ|k1oOP%) z)^Ps`4G*>UUF%#Yv7WuFb6S9f(Zsj;d8LK5_2I0ohl+NJbn>gKgZi+kk@r^g2eqDP zDJm*z(mCz&%VYoj;}te-&nr6?ae!7KuD>qa#x(2p>Z@F{mL1%dTe2H8(6}Z{yHIy; z9RF$1-Ypph1G)Z>PfiM7^n2Cqw_JIWj>f?St5!*8OEFALd$>za2XsH}i?ZG3zuHe- zx|I|;&Eu}pVouxUl`)_DbHXNH=c(Lxx^%*geQ)od=bNjZtESCxNFrT=P3Lq|?(IW1 z0n=2Q6dVFYlI|)y%Sl>k++3;So%kw1gmv9(r_j)hS#4+2nm6f8d~SJa(~-2zjq6@N zvfIO%dw=4$wdV29${DNFE}k#>_sk-rEYw})q$A0#%n|gG2 z?x9$rtEY}nD2Q6O`1ad-8n<&Eulp?DbZ1?flc)5jTgvn6H{awCEZF=e_xb*}f6XSA zZSKGQ%RTRSZf((Q#rLrbck0~_U*K1J?QPk`w`GAMteZe%gNG9g9Kh=lljeQ<4cb9= zq)_MC!p9b%lbQUM8}K-*lz^7ufhT@`?Bl=xePfKC;atCkpt1aB@Ltr8#}RA9Q`8ou zOn6w(@%eM{M4=@bTr$TGo;=C9YSp0B zIlpUKF4gg7h?j85xh?j0Z`}Hc&v#a|U9t@b6KUw`cw8ah!$tZkve?g=jsf3N*gWjk?|(D98PpH{q%QdtlX zd;4veijQkx$>A3F%%CX|!Yl{x{j9saWBU4yZ=c6LeP6w9TMFNU?)QNvW>5Al3pe_F z;fC_!ejBqFKNaNFulqjLU~H*VFP=On%k}B(?8?v8anVt}n|c05uD@>16E$Ud03YtQYR=lE|n{)-j%Hs$h%| zmdtTMrp#M^=N;L-?)9Sk@0C4;bi}wfHrIou0z_t?Wot`x2owR&Ehv^<);wYBIZm4jJZ zn=)r@$dv}ykP3atkggH;=7XEl&l||_fwrotcnY`*f+i$??CZan(Ned+-+)K(_(l)r zPd5CozedeD{n#?%^IAn6 zcimmLqwipX!nHE5>_sO1e#@D`XAAmV7I`LVBq-*p_^W?XL`bOU^R=&~90d~g#@#nK zDSN1P|N1wxn%n0rxAdRQ>0MHra%jlzVapSO?-DJ&QTO@&v})RZU1$#P1&qt z2|p{<>(%zje`JWyqpSyMLhiR?lsP}d?*n{Dz*mP85AeA3-KadmZd&_w4Wi(_BEnx<`* zWNT*h^Y?d+@{l=xBX9eLTZNAB~`6kc2=MVqFWzORIEH7!L z5$YBwa{L5#RCqsCc+sAFnV=QT8{*anhE6r$xcIYN^4N=*-M^gU{BO^*ydw9iUd#P)YhV0& z(3CHz5tCukv})Ck9Xk#@pI@(cCXwf}-9ap+;SBbq-K-I-k3y2~9{oF4GYUL@-Y)yR z&)dtfxc#rQ%cS?+j4c)}9OvG+iK$Ib)$Eb!d%Qr$+a-|Y^ri>D?LOHYPud7t%h7-Q z#3r8ZqfFCM6HTNzA6mTqlOHMe$;N$Js*}b%70z|**C*aK1C2PyDK2hLlvuHf%X1P( zqt;ueeK&JlX6{-S7%D2_DyWoPXwI6fZ(SPcwr}6F^i4Y=-f8dj^*#7u-#4@VsrK2kJZ{pI<|PcQ7-$?Y3_Z?;6ii;7j@|7!35%+H?8!}<04Ytuy&<_!{O#8eB1Pafi0$_P8krJ_98h`rSk{`Vmsr>FbAuFY5M16@?nlGstVzaKP;1R4tL=(qnTvF>#ji;&Uun3$LYg)(#I z&Eqn@xqN<|)-~Dt-zTQdG$;b~u*E>@oo23FrS(o%wdcYuW(Sovi8jSajwd3_=K2MS zu%6myCxe{iyWrAnhf{!j! zQZ;)F81k0XWXw{#r`^RAIju8&c1}c=vB4>|NzZ2KPQUwAC&T!^+4?{~_LpV5lj3e} z>wR0+{l4b8H7Nhpz208OohTu9lb=a!k8SIa));E>q>z{xmIfMMh-5k~5JN2Gk z|IO8UyXC zc=5IBMvhs>B96*=hdI5A>Z+GmmA-Ljl+J3t=bJmLztByq+t5zM_q$APR zsNy+c*~%Na``2YZspMl&l59G%RVC(Lj@gP;ui84MmPIa?y*b;BnZdlwI=}9k$nHzp zoReoiV+{@67`J|5rc_C+_@hkFxCsHEgvgDtMy*L&erH^x|q@O`E&7_Fl`n`1s~mc&pWqFyqcwYtFEj}EkcPs61En= zCo5$Ao&73%)IZvO$kJ7O+?*42p)_`hf@GWGFEig@7RQ2QUQ-_C!w&`4y*^~XGbOdt zqEGO+;UtyHvn*H3`fs0!+OAr^rMLT8d9&H#E1<;|^9^{8R)crMrVW{=8*(yEI4ociFc4(?vFT8~n1H zsdn${x7wL|bSGNRRDZS0O`^@fS9sp@P89|r=I~I}AV-ah${bD7nu>)o-LZ#4LtSSr zTg2yk`N+9nD&Owrn4Q?fbKvYpt=U!#9WA}fW->Q;FitH0n*VKf&6+#YeGPTzcE^>U zUATF(anJGO7rXcv0zyS^zZL6yeBiUqndikiV%^edv$pNx6D-|ctH-^xd}`)uXR~ON z-wQI2Wn9yIZ**TRD4%Q2$~>!Sr`{T^eY@&+Y(o(5ET-qT-`$^Ht9w@V@AcQFlT;WP z61S~d#kKh+&$QIely()*g33zH^lPn2NWbyp93 zS@{PWes_0w573Ot!>6aGAL4P!lr4$7|2;5N^pc6_O4%t&LDxZ>supBQ)qpN^pK<S{Gidp2vMadt(tMENZ=HOh4EN#g_rEK?yqM^*c0w=bmb59Un%BgIZmeF#6?@%v ze&9{eVZ#eOe%;91u5{4ldTFA@LX}>f(=Cck$Ij(GPQ6|nXXbK(ZED)w+~jqcN(&xm z$}Thw2@Somjra5>m))yZ3AORA>h6)B>&G4%x=`n|^h>q5e(Y_D9d;^{okK&FUN+rw z>eONoIR3G>^oj5M%KYMgnq5jlC029!*qR%6^nq4Mi89=g2>0FG`ls&l0*(91ufl)+ zbbs6#l=GyRF@DK}E2V#4*qB<8O?JTbi0Yn@q<^df;J(PpF6($+|IP0yVr^4 z)-v4@nfzXOiuvozI=%0!=QM28=3QL5{$6XP-u7UzbK7UeG_*&4zJ0DX{>g9f8fe$h zP|zBdz02;u@4g~+z0^>GCm>XG+G*8A8czG~AI~sxn)lp%k|U_}`+4$n3}{nVn?_fQ z!M`VEYj+@blq#|@4Cf5`*yhd3M=nj{`yyMdV2BN z3nsoZEKlAE2^B4gZO^^^NWv|8o}TlG-3bgkx!*Tw{E2;#drw|yhq@=z zVS@+YDW#&FEvbCRy@8v4I zzhbVJPK(@CZ0g|Hods0+~cNPIDduR?QMoqy&G=kxJVs#R*k)L^v}g@VsE_-vaJ72`1SJN z)|uY7Zd`3!Uv=(ua#xUo$B}<}oAeXgdZf1Hax=S6OV#LN>U+%4;PH3C6+W+v9gijE zJqK-jER;#!8N=m#{NhDHaFZ`7$GWfCZ+SEL);rKVn4jN#<6Z2U1c!4&RsH6l$9yTzL;cHFo`!)TN^AnTaXMeMt=ka$f z>ezOcBV zt&V2b85|;~DMh;N)924*sGR+pn7`teFUpmUI)7HR&PG%tJ8Mpv^lTO?~&_*KPS znz7`g>v<>Fz$2e0&AVF?e?r0~dDpt^lt{Hn8)kVb|31dPcbjDBi*hf?nLcWuOBH^8 zQhoOMXY)7H!!?q4SIw~5EV=Q|uJq(0|HzV>*$&n5uNeQ{QS14?>5TmDNer{@xU>9A z?XcaS^=^_tv3$n#k0!o>*G+vc9|5ni&^Qg+l2IBvk!#UwE1ts+vDZ5uM{optirjiz z*7|Yry6i-rm9L{XS~M*|Yb#|hr#fz0waWaAveBn^KQ?tPzWtW#;aZz#v!4k>Myy@6 zDuer~Z`u^leuQP2PJtpkY|J(Pf8Tcx4Fyfj*VwsFQUNWM5dg14JoxC-chJ=dlTF1Tc>+Bg0?~?ZIUc3I*wLj0E7tP{jSQDlV zSwgjI9cUiRJ7OB>R8kes3C}Hm{k4-hF6h>4;+rqwa>$@%-Rpwb@F|P!r#xX~NR)5_ zFF8B^*@cU3ruVVOkd=YZ*;$>i)l*lT-=wo7Q)`lA)m}NC!wxdXon-u9g7V(#t6cNz z|AA8I%a@vR_H{iLeG`|hd@=cJm99{oMry~q-MP09Jy@X8WuTi9sdh$S%dx;;tdeS{ zHo3@vdc~okiM#K1ZRPoKNaDht`@ek_cP-*r+?w-g!Rs4&+s%)?$Yl%r$$xd}s#m>V zJ^kh^xNqt!e0|mHT@mV<()xdz@5=(<)~>ujLa z9VqH5m?m)RWz0Rvxn#{*hJCt}^do<5(k(;?bE5_J7bM|x4Su0wJKDWZZ zold(yVon7NeeE&1g$uMtRo8);c0jNQf2EB*rLF}z|efqL8TdT zY|X)%M5rRE5l@tH>O6O*u*0)F8-+8Xj-6F`|DjVzE){;F*yo6Xt)2f(4cR^ z%jO=5DKi{S%5K`QZBp_Rm8C++?i=vj*v1Rq-1BOe z+q~x-O%F_ynN*ukJXigEe7C{&j@$E0+o#xmsrY&GvPnw7F89k*K*uQLE&S+~9Hgf_ zyZA}^q&YrL=OY-B_L%uPeUbprMLle{|D!n1zP|3U)sM zTqMi>Y~6gN*;=<)zQvdQmzgEvv{EEB^3Wz79yaDFshu|G3rkB`?|(Ox>Yec1@{xs` zh^x}W<+tDd`~PNdg(UsT#t<1 zU3KHKWYNC)&u{u?m9LEg9Xu2|ck})7y-FXO&nTQt6F!?J{If=GTQ0Zr@lT(ONBv@6@TH8ME55wszT8e_L=jkNdIv)~KWF zVt2dT){s16z~kfZ&)v)>x$eXQh1qW3-reOs|M^0W*~TqfRC?rgt#iI?QkWxie9`(R zM_9c413@Km_rK*gUN#}c@jyXp}SQxG5_GL6L%QWC|KJ#_Tv`4@98E8)sY`dpya=$%MV_o~Z zP`&BRk1bwLa%i)yzJ2mzRoijZmJ?4i_MBkzs9bZwx-+Q$1cTCb_hTBBe=gciy#F($ z%WGRdk6MY`O%<2ampi8%&sZ9Ca~@yvjK?h4TL0T7&i%)%4=vJirfr$}$NW&*8Kskt z+t)ssTXtuK=%LH6>;-$W4uAafzsWN=N>1ypb^GMw05*&X|( z%622ye(-U4C!Q8DGi7-3DJGhBPOsj3??Bhj#XNG0UA}Lrzft(<D%Y*I+dNn|=1LbA7iXAA zaexk4bPf%jIA`OI9U47SjshIct+}@~rg~i{m0kBbDKnF^Epb7J*24Sm7vId`y4<<$ zwZ>F0j>7`0SFa8bVKp{3))3(WT~$)_goEesfj4h-PCYf6HhucWEn8SZLj(1uZ!CWw zwiqtgT0CmlZNIOiMjz z;%oTrM1r#PzZG^y&rYPZKiRx1_WhIIGg~K16l|}4H|?_3lV4At@L8^G{&vwYlhb(0 zk*n{&vro!+QR|cDVWb-*xvH7RrlihGed7J6jshQc_gF4PKc@>+7oIT_I&S;q^G@Nr zJdh@R+sqD=g;sydBZ>~LxYBLH?EdLT;PdIPC%QJ?&fIpdBQYt4>4e*>o1PONzD)Y3 z@MPce(C3~uK282YlTIZiM9JPOl-c;pf^+3c{->d@o}PbFylk%ePTm9u86TfXQqH$k z`c#{{=InFS{yLds*VQauj*afN##=VozWrV+|NUO|dJoryA*@2zPS@&fH=J2lq}6wL z%aO*y>zhK2kFPLW@^JrmcovwZj>GvUSjbq`aF`!80gUEIEEm4;aN2OECy;D$t7 z<8;|%ikB*jV?%2z>x^ZcD_3eBDeQ4utk@&JEq8H* z&Z3JM38kf?yVfm^(BWFlAbHTl*Li1*n3|54=*(HOoc6{YU+CPPAi;L(snN3K%L7+m z-LPkm&KZT@-`~6MzU#I&%z5!e0XH6_*{z8hXEL4^NzQxz@WMjph=>S*HojTRDaF!P zo&SopE%Y#1_;J$Nv_uKEqMdULazM)>8x%BBPZ;n_EV%f#?5NEIAGSsRFUeTH`8!`` zdgf=v-r~wQPiwuOHW#*@cx*ZS^g#oj#6K^-|2}kQ+pb+&zk)8Ch;Xq^{Gq76G~oY9 zPf-*3^4+m6fh^}gANhLPt<7`(a?fWIJuequdbZ)QXHne3`=YLr21!poS0>I=WLEn+ z_l|r@%w%83lKn5+d0cnK@GZ;i+UUS`A@T8qW8AW*)dZe}v|(F3eB0yBYejyuMoruan`*YjOh#8J%*-bN-=%*&?$vS6>Z~0WNHaT*; zl;zqU`!gJ-d8}U()l@5^#oYR%{?^6ZKcT&Ba%Jp@L)JTrQ0;f-(Ht-d`nk5=2 z0$$q-y4PB3s=#r>TW`&3?zd;oS`ni4qHK48jQf(p8{2qqZxdu;oHl)WVx*YXR4%Wj zLQ!kQ`eZDXF1eq2Y9!U$W>7Tcbn2U%o7wvwcWjY0s$)2QChcz>D2+v}J@g%PaCPFN zg((U~i@sLbmRQLu=CCWgT2kftL(cVLL#E#3lLt(EGiIsv2$-zDl4Uw^ii=xEO4S6L z{TC}!E*%q}`Ek-q#ltaB@uvz&^#7PsO1zMo%b z%wEUDpjY?%w_icFU+%i!4|X#!e3!FnvETD;ned%iXC1E>eE7hmxBJ&G;X6{#LXv|D z*`W27jK7+pHjl7MUP|cevs{1GEsv{Yavh)CE8*Z*W_ejlp8qAP#S)I-%1+UF?7N zr$;Sno^xSh&Aun+pM1N-KQohoX9)|BaOUZ+C%>vaZx;T^lXJAe=%nrZFE)$6)0+a;h6%DT#$1mLKUW&NB}(^6k!9i~(BNmE zjN`(917E(FaJ4eM`f4R6Cbr!zAdGbh*c9BxRIcu}@nX>aSZI@iD> zr5EPB|Gm%P8^iG)t}E@Hmwoo%7q9hhWBd8nvF(s2k3w{9nVPAlT)xrF9*^Zgp`ksx zmK&Q-F$%cxRmv+$_fC4R!SG1pW{ZgHM1#5uI~G;XG?}Gxzn`aA>oD3JqGfC4$W=vCY^P@e&O{-kMz}h-msn*y>0W|0Mw;BY;fk};U#Pn3R5rj-R$59)bnn# zwYr{m^olx{m~h^lw=Xu=?eEv=ao5Wc^<|qPaIeKev(sB z{n5<1Df7I4*UWgBGv%QA*@n$G%ie{=^F}Au2bKMjyCiWsZ8Hbxm_a9SaqSY=lD4@s zMz7szA;V#V2bFTurcDdb5DCzm4mn-!(W6B_bh?yS92xF^2i;y0DJJ47$SJ)oH#skl z?`>JMguTvbp<~=eJTsPQo^w1lF-DL5ut9*1*uzS>cl-a>iFCW3Idi7tF`t}`29I)} z$idQB8OtJL*`sL2CLY*MN48Mg>1dK|b z6j>fA>#p!Cd82ayQS4hiFK=o5wc`B=iwP%FT=t&;Egk|be~fK;ckts6z5=7V?~K=c zWKGy&uZzwPT*S4s^k1Ia9KAv!|wTO$)*8bDRPj#!*XWA)UKX0&H2yM;S zjNlp5_dVEo!u#W`$%mZY%zfN+zebVa!B+kMXD?r4Ib>j@U;S`>SMI!O=!p5VBb#Sl zeU=$-WT>dgb3aQfPUiS)A?_z;^Vd8&e!0`+;*%X4jeR=o-_`M1`$w%}sL{QQ zk!MX)zC@b`Tc+7;(1u(!mGzl3c9e(g4Aj1Lxqr@+iD%Qm&A`T0tDFq9?UPk%mOlRc z^UndUFH@Aj>s`}7aL zOTP8~$y)R^$LOg~a=i7{?ABW|ucbn1 z>FF0=mVl0Zw&?TtzTkfB_14_mGiJ>adYfT3J0MiFEpb7B2FQ@BSqHb}o;iP>dvVue ziw!#5n>TOPn0`7UGVlPUab_R&_j3Ge)9OKXZ=t9%ri?@nICCXcVinb_z2SrIc68LwjSA|Is28-%rg#`+W**0$aK42 zx&m}aBsb__?|TmR&p%g+aIr>AYpt>Ck6NoXX+_)D<7uA84^PhLe_SCMe1c~wXuqdu zXLO)QXSv8-<--OOPCsS)6_=O)$=3ZsnTYG6`A@&s&iXiELD3W@wb{-uY`uR=J_~6^ zZ~E9g+4=Rc{GmH%L>L~-d>&iT6n)r$Uv^*FZC-|k_x~Tr?Rm;9@27kD_19}_pB#sk zM<11Udi`Bd^th$#qzm)RwOulk7k!*-R+F>c!06`r*@A8JyL_zDF4f&XGeah9{+?ad zoOP+rt$Tzj1z0k+Mme$g96BGPH+>d|Qg?5vui7PH|u7huvE~ z^;u?U^-epX6G2h!bC@QHTv5BNyWKQ0%uY>R*J5+z;kKR__f58$+JE|2rC<6i@c5bL zPTfqkZH2{wvodpIq%Ysv8m#i$va&ZtZ_@E^J6x9ap2_vRELdxn_2=Tgy8Ze=4mRhT zLH7#;%+Nh#aOBh}(29U%JVuohJ~q!QHR=e_5^YK3I9~X`qR#^~m6Eaj_KOm$4LaP$ z#>O9P_h?c5yN)WIdTP{lR7vLe!B3wy%~+o@*-xTP>1ead*F=e~pN-F0W3RV%_W0N) zN^m7JF(jI3PxVrot2p^&N726b-74)ddhC}?5+&L!wm+}T*nXS&nQ3Lu$=jKq1$ymg z#itaX+^{o5ZvEk7Qdcj({u;3Ux?r2)A`PKTuT`tMb{h937tU>&6Sh!;tHE?}b7%L> zT(YlMO70lva`o7Wb(`NzVfbCaxx2h+t(s8Ju5WAaY)(vT-12$i!b2v$iV4e97=2X+Dl@LuM@8(eGfSFv}eIR&K!75J4iIXt)N-h8%p*4bk-Pd)j2^7BciSB1|e1wQ}2 zD(4#mg93x6i(`oYwW&7WKf1)NNEW($d_!(!P2Vi*6?HdnOq7|O`LuCs=&##v%|89K z$+_K@C~;`TLJcmS!=U}CB~}Ho;!A@#cbB~tI$vcs-+gDyv3a)D7cxvPWNlrb!PRwi zk;S<}nU6YBZHg{`SFJjt)Q#rw6(P_nD9O=lH8WN_-@|fix~>D&nA_Xi7gG{ z)YjH6kYRTeaJXJNvEo7o=7wh>CLBeOJs= zq$MY8@jvCm95cmFSUlUcZie!vn>wF<+W1^<0nN$9PRZVW`-2Vt-8}I^8E)m4+}lc` zORm2@SbDcHL_kVA^Vz1r^PaOjC-vxk+Guh=$7RO-_un7>-Zx{vhHYz4p-K3uubN#< zzL#CP+$GvR*znKwOFz)yUOVUf^VWxcev3f8J{hI+$1~4=TVc3=?uFfIXI(a5EcX4i zx8WG;%&i)dF4s#Vrm=!9MrwTFeE<8y-*&(L?$ell`stCqi>fEgiJ!zKQ1v|U=aa2! zm$#gHy2*fbqGfBMUn%<0Up$-7ZeVOl1g*mO@W88Txp4Ms>3Ma}#3922&z__RHU8UR zbl9cg@R6IF9_aa6SgbTClDM77aFQ%Rf+-)?oCqmQit$UlxYLzgxiQ8k+ z&1Sd0-sN=1x7L02uhZ9kn<943TOu%HU7%R%=}y&5r~h+}w0dR-Pf}}6*}3Jhd*_AY zcQ0?T%)L=K`JCe7XD8>HEneE2{IgtWoqyJy%{tsWWBislO=z&POnZ|1EB1Qn$2)z( zaly4kQLbylniC}qe1&(d>%PLD6)tl;V{24_4Eway#JoJddCxgNgXUXJc=x?u9Jbmq zP~^p~zLhIACmLLOTeeVxi>sCCk%imhivnrFUdoYiabho3rhMDDVFN>GXrR_q@OiS$ zuXi2tNt&g`z)|eAGUU*oKYtund2Ebu*&5|4bNoe#l@eo1%NvvB6D(VvaUU;ix!Cya z^{&38jU6?1`a+@_SDRYi-^>Zy(tAlF<6X|yD5nknpPO?^Cd}{N^4$BMPVOJ|v!!2d zh6!msaZ&YJFyXfQGD+XdNA`Focf6}ro7}i+RnnZxrmT(%zh<6ORd0Gyw6pQc)WpY? z)*i;+R6UJ_PCc77SK;mMfaTzePS(A?P%7K%#CS8O?7)c|@4vf7aeP&rSaV$MzI%$8 z=Q+zSc9VM*zwCa!ODV8DQBDiXK=};W#kXy3!$Xr{TQ-Z0Hb`##yWxEM+8?^>pUo}% zXCnA%Md*{s^K(r(6Bheuy_1`6Fk#L6iivyTqciUtIG;Dz_($crbh^|;)*~r@0zd<_ z%CpZZ^(89?EW6)n(bxJQvdv|or|_{2ALse(pAarL{kN;1#e%6{N@K;FGKFG-Yro97 z@am&V2XB+Z8Uy}>yPsW_@r8yS{e12H_tqa4nI)2HKc=45KY8`f%Ue$#KmE7(*QE3R z{QBP~e%Dxg#^CT_17(j{57U+1CTuBFZT)!Q)~P>Jd=%7oESY-OtNzsIRW-Gr(!bnE zF_Hw;R*4cxnVFt%m>EuQy70E_;qQMAT7ELeSA?xT@w6x+HdfSAV#Hq=(8M?Ko8Cg7aDT0eRp}DpVg>JMeDK?Dkwz0}?3p=GWMSNT=j){*TB0+Sbyn@| zi(0GZqjEG!@bqa=!>w_V#*DdhT{lJ?dG$)GNulBWZv$W9ZMn)k&TH1K>v9qDVq1Cr zb;j1H4LaOYy;$FtRV(B+x%}Pte!Vy2A{PGG>kBowjAru0TzB1lS1gm8;fPGAhDbu> zv>Ej^_uV(&6e*o_u;&%ihI1b7-_3L9O*k&6XfGYoH?O_-oOZoA#c2Zv4FEPd{$F zxHHxGnTe6kDK|;4ZwiN(-MPMN9q5dLh{-kfm-w$5pHgs1?h-0Iku$BP|L4B`W_JFr zZKu*sC*H4@d=}Dx)^;nNRdkpAe(UD%@0l5FKJVdnpZ51wu6f7X#8mz2*U}$bj@wn; zeQsX+PXFUg{l8aFRQ-Rr`~Knfbw5S^{pnxV@asWV%y)UaChq$8cXxa?zTREmQh)B} zdRL2-rORG=N!AyAZD(ZI>L$F^O_=@Mo&77b74KCXJYD!s|IeQT>3{3w^M5}O{c*4U zPr?(^rB~}OyW2JF{al3aN*cl{xOSB~D+-_Laa|3O>le$n&y?ElB_d7eDqM|X4md7HdHhrcs2 z>??R~UT}7~y>-EwGs*H_3qJm=zwd0O>zx{uNq18o7l6BZD ze<}O6w~Ozq8wT`59sQq@pnT}t8=#)xm7RgbDM1#k^a;wUwvn zf=RAJ#cPXm2Uh*^O#EK9Su*+LhUW!$ZurbzZ&sYAH2bX6WfR4^Z?*Avgm<-@l&$=; zWc6o%tNdkG)&JjnTjuJ-GIOcVWtZJ|#g?rKTFG+Rr0~m&z=_)&uZOI@YG7{8etOe| zmn9e8mMzSb`u6@l|Mk*~Sz9NZe%fN#e1XWaUB1&#|D zCJ7R3T2s3!u6YFbom5CUr7``qQetvpp1kq9>sOrhWInOs;~bg&pNwal1YG>%^i$rYK+vG)^;cFL5*ia%dm&b7Dsk%im#+pe2$#+1u`Ip?{I`klLecS6Qa<8SZ8ZpZKV zEdBc1`Sa%Vno=KqlU{eL==Zt$i=RKtT&?GCYQS({b=;qt znuo_$AG@}BYTcbzH*T%V_SjUNmv(^RQ@qwW7KT==~1;m-31WVgr6 z-jy$uxA&8C#c^ppufNW77d`nnvHYK&-N%3BIlKP7b&0EeSJL#q;sm6hFh`?}^Oss= zrS03zo-Lm@8T8j(aw(P0yj`|#+1@}kL07+^XCeRoGYKW1(k|i`p5w2T;@^DaIQU}1 zM23&G@?WcBIhJ}>csD(HlJ$IX%cd>%YtMQH8qTylk>hATYZ+&tb*)jam$e*8=4Jl$-pF z@~Fv^Xp3N+-*UY~e)4tSM|Xo(w!D0qdFK52ySsCn|9c_775i^;QR&s=`bKC8wjXQR=> zyzX^ZRp!=uss1T?iqfYhy`8%Lyov8bpGUj&s`ko(_h1&piubxP|E!6#iT@(=waQka ztue=}d+Jot9qYQC7B&>^>@na8Tz~!HZ#%82T`Trq%~I@3&X~n^d)vg5DFQ5vGRFmv zt*zVN-`dLhV_*Num6{=|L%;m4m9Z>h>3f_|RV8)#^5qxbe@8?{I<5_K-WYM@%o(1N zSa*rGLpH%0A}&^^K7BGO+9{Kko*t+na^Y>6>m$Lt#WzLV*w&Wq?)6)){OU}Kk&^F{ zsI^@t!dC8!FADs1&QxEu3bZMW$GKu2`~C0iJWA72JC_LhUY>CNdF#cT8y3@g(+@v; z=IJTred$?=(Km@U#Y7d|z4Ptv{oiY^%+~$* zdw$JBZHxb|=b0I7o^tj}SJ`d~d|>_m*ZUvm_W#@clqH@?|-$F z;hK=E-rhf6cd9=yp79I)xN!S^PnF7;qJyVDhS&f8p8Q(s*lhhOR)zue){r z;Uw<3eJ{7o-CM68_i0ah_x=3ce@`Fk*_{7fujWzh^g|{*Guj$&uiGW_{O`Bu;MbK` z8aFfMtdrkvwGGrZnDT}x@86A$WqTjSPUp4pW(d%oUU0EeUub{*mtWBZ&tvZkz1{We z?|Xr!iL>oK)$MtuyWjre&d%(A5560k?=_qE`>)--zZ?A@$^U;E&&Y7T?$_lH*8F|< z-RIP*>DB&q-SOtt!?s0d73`g-{4>e#530fM@nB04I4a?kV-zIFE`zJ?xSwmuu zd+lxAxci=le>z*jB)02t|E!Vgbz{Dp7tZndvXF=wH|KOunYl9dCq?&8cKVT+>lr=M zPSb$BZ*AIq9dD(;$T!-{B~Sc)@Y}9xubhahq(Bz9>%`%E`N3~HF)^_tS)ZrOTJU<8 z!0g~d>|49vF?WV~?$K9gI8l4){r88J^8_j`pL(I9re55YlcOoZ1?~hohlVN|oPS!x zakyY^L)g80=hElC`c_-NKwdp|VeJ(QiPCe4k9F3bSyA=kM%w01x5XRtp8i@Am}mTK zrKgX)XG-C|J8g06+rw6?^2i^!wK-#!TFiCVy>a49pJVhuqCUbiecaYO^Dn*jx-{{` z1Yc)IfrP|FM~O*3mqj{75C592u-I8|y7R^e7ZKM28TNhexi8w!Jh~$9vdKdWKAZEx zCk3XZb{0)bT^O~t%Z2Iw_l22KT2r|eX*eyv-1xlGfQNZoZugW9zvZCu-%Cz5=MP_8 z>>j8!)xg-eS)(gp_0@tWCj=v=wXR&L*^<~1wYKf(QP;#J8q-g&xDHxSxP*D?=~U3U zQF%J258b&V18()Z?Z5ACH(&hw?eDdP_cc44dL&X@yq5(9I8Ct0^9a$Oz5B$UWg1;G zW;1X!*3LR;d^W_rluvs8NyD9iPad!Iw>dBTJXnNvX%OeEWee}WSMFNWctqk=aA;`j z!gaUbDs?G+bp9F~)K#;0$`O}TwYkgH8h;t~B~MgPR<}NRY*r#$+mo2RH_LKZUNOJ2 z|M^>?SGsEY(pYbaw%3y;G4RY_d|Ie2ZQ~{xwc?J-{b;#W_g~IvH_L$~I0;C*$&VKa$|H}J+ExwDc7gYKfUw>|M z+bjo$2dD4v;10k0W#*My+2gJUjTjkrEj!5HwD7BpO-;#c*{euRE;hYO>$`j_c#^_w`SNe_Zr` z7aji2Ie))P&i+ql-ye9`s`~NwUUq)oEw%6eteg1U=hF%1^oIv#{$^ZbJNfy(N2bib z_kZf${b6eU9o1L=%NMvi-Jb(~G+O`aP^6?43@tF!5}fE0c@bWXGjJk`c9YTwWzgbZud({QBKTtvPJ9YM9gV z*9*U?9NlD85l7~xgzXf&pZKMljk}E4M zuS#5g{k3JHCa)Fy%w3a`kCw*nSZDol)o+zc%YQBdEk_dK{Iys^=%wSl=L@f9aT<55 zTBW3@z~h`Ti!JuLAPb|-dFO=z4oiasm8y*<`S|-UzWnk)p-fAn#w3rB&{puSKu)PX z@YGI(PFJ#~<)Rq9A*9FvzbT&+0~h0YB$@Se0=;Y@z?r4e#^{G70cI_Pk6sDN5bpdeT`x{hQypX zDR%zV;ukF2rY6n^ZhZ4Y2{K^|Bj<3{yxk^!?BAZhrOnHlzt{eWSac*h{&V!}S94~r z>U#Uy?(@&m-zC1x8`Mrscl~8lRCVHi%_ZTW(=3S=R~VQW z2U5fD8*G{9x%0={_p%0hCt|+OOkUQL{^w8dwvs**skPruJl3l^xv`~FJoeABD@N{O z)6M4w6@B|xoAi5jd42f`!$+>-^2SzselGePe0s;c?JL18@^je}ettT8z2j|v{j0D$ zfA_v$KFzxLz1&7!X@``&|F6uCe0#TZ=Emo0c7OV|cf1wf_iNI^r}uu`>Klg{67H7vM{(9pd6*tEfAWEFGrtSzDGM~jx@XLuefZBGn`O(E z1?Y&iuCUzcRk1Nb*!H$@)8D%Ij%%5$HBqebmrZVL>)pB2a!%>B zNQ>8NHWwU|OkWVSwhMIGa9d(W*@cRePm5NBt)4M&o>=bE?91S@B+JUget&y=cwg=B z4e96QB-$DkI9d{HIG8RjTk^2!ohx`j%8YsQjx{o~e^}ve%hg}|Ci$bW{byr~=W~id zT0&NbPAqUbkyIEtLAyI=@`M$0&iSUzDLjAAU{X_3q=%3FCI-8oGw)pY{4CkIJ2X`E zvAfv*)5q1$`+ik_uRe9E>)Df!Pu_4^DKzDRkzd4I6Q7*4zKO0+uCP_gE!)EDwZl_t z>67dkE(vpW%->jDy2p6(qs;M*22~N$S`BzE=52R9#k^Ex=eq8sjU7%48P0zOP5m6- z=y8vM;dtSLUF!@ScdqM>THBUm);)8kqzD(QMPKvNr>QBMBSA9?(^41S&FgNNoVAtf z_BPN)p{$5$tw|d}we8WPt}9l7SEL55ToAYZ@rQ?pUwr?aRQJh-|NqbV|2q{p3~X(C zZ{Cc2^0^YWG_5IXYgdh3|JAFZiKiB_2vy4Q91fV_y+}idjoqk{@%R~;l#b5F5?zZH z1ZX7G)yaMS{CSbS?Rn?5VTVth;+l1KnMSq*o7d7wD}*h+-I;t-Z)TrK)|q9Ue=i>k z`n37U?^&-V@Kz*BEQ(wI_{2nI&^Y4z-zT0HX-xH+F>hWQXp29qqd>P&GYvBGRFebt@1M5sO5XPCk|}1V-F!Gd{Vu<8en+v-uKbw4Cf9qKeB?h> zNTxlQuwP!~^@N2#eauw-tJY3_lRjgztRHIiE5XL_;mdM6$?5UGS2mun`+jx3$nE%F zzwYzB`TaJ0p8B@?AKSx|BtRYVinpihnHfIZiLa8{SNXmC`qZ7@A1s`h`@8*poqvw~ z)Aawhcl`x5H<#>^lZd>o(vx-G{_p*I;oHW+Q)MlWYdox=yQ3N`RIs=;=LWBE7Tp=C0{B3^5oT%lbg2q zIu%47sMzD9d-#@3*V;ezoJ$i~92@HYf3H9O@9*!A9qu+vpn=<{C@Fzo-+yO&ikvhw z?CdCwnEg~ft2>8b;S>fV&l62449wqGTz~BtC?eAB>Jq5ZvNuseiGyk5CF{;3nuZEI z&J&k79t!o6J(0FKAXIc)E~p5ITH7W1d*#|I>{rBuw*B6x-@~HvuJ3UK$4q{CJD%&M z4=v7FCFXvzT=ef^Y3z(BozqS0UNfh03K?Clf4b58x_{EGEusHkMqLW)^ym69x#{f_ zn~C54sE6-bp6xp;z)f=dq(x5xKl=oA%q!FV^iAX8FOAK?QisEq&j0emQ?l&;lP_XM zOcQ6+DZllrGdsD*E-U`lpW8WRtvefiw5J?f_}WV5xZ~O|VNR<=i9_FOe}K+$HZV0+ z6{?gu?x;3da2Z$CIp51izI@r@@vR^>e8#4j>!NM~Ue7@jD49yL&mJ{+|S|U6||Vex}*P{!)xfvXfcWiDyfD_xyfZJ#&uolPevCkA3XyEZIvz zOD#wrTPXs7t5W?|*ZQzrGG7Ux^HwGH#t zp4{saOqp^pAtHM6^XZC#_M8stFPno!g^sRT)fKdo<^1OlkLCYMO!Z<-pHs-DHI?h# z&gb(=7ya@)e%E57d@ZR2bF~@AIoyzY8?@Se`|U$2Nwd_vmI^J> zICOEbd!hs=LugIq3JVY4xNDb|kn6X1ce~vdD+)PitUUDD22>kK@vd0ab@OIq#;mrg zy?uVmC(qiauzYvG{Z*^1Cb(UB{k7#|^Q0Dyhi;(jC-jcB&8cHtV{WhN8?^Xc?W~E8 z|8z1{ru5JMQq6RBdCA_tb@397i!_AZE*DYwS=}+m!|@oS?`0P!fw#*A-_0|Gtp)hb z*XwV|+i~jxs0pod(rurzitx-!uO|I|SaC*Ddai!s$4>pj5~X^Te7>{&Q;kn-_+v1swI#kY{y%zd=RKwJ|J3WbyZ!|?zVwRB`Tym@L*W~f z=02_HUmGZ6QT+eF`~JEg70Q?Yw)Z{w8y?qw|Nq=>#x*m|?|nUXz2oowJ->G+3wvFv z_;EA6>#h9XC;K)&eZTkr1cOG2U3Ny6De5ney{u=jmF=jueF9(T@$AP&!Gm8_c#M5c z{GR;WkL#LehF2z+qX3VJvc-<1xtTv`YL6flPK>!`Fe5a2ix<} z>bHE2-z`}xdE$HbHcih4mpxMi6t>5j`A*QVxOsicshXnFA7QIo-4-|AycwyewycDg z;SkFsi#`GI%cU3iI~y`htAy6hUZ&Y&IBQvF3qzLq)@GJhH*>_626^7;U%FKFN|q^T zLQnl~oqX3Kj?3Nee;+#Hl__NK6U42D6dlWbXSQr;+G_6{-L5Dj~ zBr!GBRl?xJm8ZY$z#D~LlT^9y4WX^gtXNru8scEYL&&DlVR4%nXd;a|4F1@U+Qc-Kga&EhAjcR@W zTZ!|?CY=y1(Tm#-xASvf?o5qLvh(@2JW=9NEVsiM<|%cKpZQe7111Tb^<4M5t0*&V zW#IWYI}9hxF@9NIrFKGRLYmRsFEihMtxB@q%JcPoH`bZXI=T)p4u1N)l)KbNRK$lh+t$j&c+ly(32b)Dy94SYAg{rUL){+wSLx2|;> zH_kccsc<}4;2314!5}(yj)1}1IWcj8B2PY7wj_3FbWJ#!(!y}rfJdWCiDi1xqC-oP z95DI@A+iid)7ydIre(% z&eYUY*1d85GxRc2E3ND}niz{YVud9QHI6bj2sD^W@q#Aur=_m-KJ3{w>1o~hr$rld zxR+%viqKgUpy6CEZ@$U-fTyNo- z{#N=vMSY&HWxwfpe%txj;zZi!LqA+HZGYCp?J2JT-5_ni!@M-eQ-bNln^3*!4|lEe z;Gg(fDVbB!<&nj)Q>VCi4m)g&Xvw|3;`(dQ?Ap4x_3de!JD)yHow1Db_O`@XYTz}y z&Jt~l*1Z3{;%Zhvs3>SL(^N0$B!b#x$DJ`^pR;z~6=M_h5>i?$YiqpeCbPx2KhKIR zCqB9Ow#;>>kDBtNjurKfE#wSR`lPlm-Y4B7ZT_X_d6DHswwX&fbMO4{Xnw|3b^pXm znZN%wE)luOuwvCJgF_c=-u&J-BRI8~Bepr`+vMklM(qKUF01@CdRKMn)s2-qo$HqO z&b~j{?LZ-q@!Gyw@#;JCZZ0u@V|`@9NA3Ok{o(S)XZ#MKwSy81p89Tol)HX!!h_BK zKQ6fVsNG&}z6GdlbZ26j>d*G~b^QL7haNM?c$-}?8gG^UEG{&9CK$tlR94|CV&;=h^(jg?l$1|M&5E{&D&Ge`O5WE0xw) zedPYoa@acYTtlf zqQkR!Z%%t<(wq;LniteAE=iQQV8R|!$|gav^ACPcrqr=dYQPp*C=H9o$r6^qwCm+u}qT;as@~gL7y!PpM=}kW!5GuMg%6Cbh zMip3)63_a`$^S@G{)Z6X&=2!0_$;eg4?%6HlhJOt9c_R=l@t ziQr`u*LvwT#UrOqW=}f0W{WRViX~%1k79Rsx6_6>CsPt;sa5TrS0U!9aqsol2fNl~ z$S>{Ud42t?!Ml4Gzxtlq@Nr^To^sRkC54$mm#>FCpZYc>BHAqb#m%grf#22N7EAq4 zd3ECXXC=ntrLl2)3HGvIk>!6zmzo){_SwN%LGa?4{2(E7ZE0S+reoE8Q+?7l13rtPJ&@VUY4vx{Ql zysPuJgENWQY>nxs4Sa)VY_Xclr*rzyzrVjPzW@HvqR)d#QJHDxibWby2Kp~{={;MS zw_W?*$xREpc~mpg+?ulb#q$W-~+_4(sd{&%&$?S0b`NWY+(?yZy+%@9~v)3v*9*J}d06ywZ1N_l7-9vBsCJgT61x zDb2}!ZhB?5Zp@c!-x(PGJrKVBST=tL2SdSc-tgQT3qC!bFLz|=^m-YFg5$c^yX+g@ z-8b%UZtwRivH5sK-7ap1ciYDw$N!vZyR|*|f~hfd(60E?#F)}rWhN`hsHfKR&o93H z_K=CM2p6m3Cgmq3974N-Z!uhT*1oDPEVQktck-LrE>~ux_1#=EqiV5A>yO*1-#k~l z|I_JGy7IbIq}vs=spV=G=fTfs&hRuT9AM_R0i|%`^ESe*PK@pR@?xIClexktKi1a_ z^I!MFcFnydKc>I1xgq- zDL6>9bv%yfn3=gpE!^sSiV??QfoZ7+OJfV?BuYH8+@Rw$}vvb7}^FSlV=KYekIF;C4qViN@k5-nakfvK#+em;d=bF?E00ZQdWZa?KxH>#xs}@{{)}UY1O}9!@IBMv+0fp=J6I^_Pqb|AvEc?r2YRX6LWo%@4t&pKK-QV z@qd;8-Kl0ZdC-BKM8CXAhqk3mauTZiucCBp3CFBSf+DVh`zODc5O!r+{S&j)&5<{@ z^@4V6olaHUr5gAw&2{SJnDSeOldqU(N*(aq6!`hnlCMiTjXfiLwXfaY);n{iWW~Jp z!|m6Fw7|-H<|S8c zSH0Qsd#;S|r}vZRrN>yOnic)EHq`gY>XH2ZbII@RvptXA-Ezuaa+=j#zMA{uZM_zK z4=wnr_R8hlZcB|kbV7us5wwaMe9A{-(#8%SwPv@)jQ77MO0ebJc9S{2;%e55vfUa} zy+9r0IcL*^SFKtUp`+BLbS2C5NMTRbR<6^V9#qPSiHi%iDK1;KtmWa87Z(?IEb`cM z`^C-0CJTdBwrF$}{P>V~<#p+l)2TlG{>sx&FT9xX;Kjwo0V1rwzrS~17$ERc^-ImA zYV*tjC1K{jC*DW>lsoa+Xz%`~Ey_0q96!&_Xg8*-(WWhzZSt;oS-GTS$C*~_n07fNN1CJDAWF|Jyr)TOlLc5dR0&c_lzYvh(? zawR9Mzb@=)n4-eir+PKu)Cs={-{S7Q`1tsn>hl{a(mUldkN5quT`N2Jit6_CE4%AO zOw1;`dAC_keSm&qEW?An^84L#{y#cz%gOMe{Qq-n=hOACHrFd|oBw~!^8PiyRnJ$O z#r>u$)UPWZ7k-M%>ZYyCIx zdev>3vTD8R_W$;Gy)M4+%?^hhzvdTr`2C*W&5!t}{r-OD@y_!<;+cQff0_Jy zffiSY>%qblE(cbxTQSTlmgRq&vBa=#UAFeIDRYx{-}{*t*F@ieO3>D zp$urRRp={C*&~~DKwEi@jg6D0{%~8|*xJfkVl|g>b9;<_Z+2*CYvQvr#^;Z`d81?E z>%27R;FT*PT}PF`%Yl+&PBK*pE!%cG_fGl!+8-DD>ssXheQ5u2(!Z{WU9Q4m$@&Q| zYSg=&*UoFHkj`l*waJdVK_@l@h_Eip zRN`Qocq?#iSfGZ;0}H;eu&@ayQ$XtslQwpQt!_Pf)b&f1t&gv7r{$Krd5245Ge8TO z1YHHi#Kj-}wp+Gr*^xP$w`^&dI#o1cT5Ig?vV}2vhYffP(^Y&$znn?i964i|rjUO| z+~Vhov(GwRHVNcknlfQwkB_`bzbF^0NVn@0FVz{#G=t10eHJ?_{AuTDmo_0-q?+1FKa<-^jfCq0*V=7MqFC<6mKzkKZX zo2lXP_Mc{~|998$;h*byyBUpxua>6X`@HP>!$0D-{QC6|*FXCDe1FR6w|gG?|F5~5 z4jO-Qm)pEykJ7gJpIVOR?&MXU1e$|L`u+2Kl~vu_J73fK_3K`}(*0}rV*S5w?-|$p z4OG=te7w@X#^&DlXV)PMd1l*PH`r#it?ZN3yyAb^N54s*v(GV}%lRyx_h@-uqp zvR)~kC$A@M_w>+TKj~k9>f2k7EW}odt5mGJ{(8mLEKsL@-n_QQ78W%>3^v`=`S#`} zGsBOA{B;der;5%gJSKT#d;Z)1fiL&vsf8-d{IVg^!(h#-RRYDk*J-<4oxI)Xv8ejshJb0zyUZfh`IgpxX=E zOLpIF{I_`913eO5A(!YUu2t^@}I{z=R~nr z)c(Gt2(Lp+j$hi@{x|yQNt6A7(HcA5K|6CG6Oa?nrUmLvU${!kYA)Zcw`L-)j!T0Y zSFHjcUZF7gX{jhfz{-#WaA*G2S1Zu2>lKSc6t9;CYKSDv zQk!*FEi5c7L4vL9{XJga%b*x)ZDoD2tMBK}%D{IoE^e(apFel5>(U_5D%{mqn;u&n zN_ki**C%7y6t=o`=1fV@tmfZ3dG~%f(Pzd#CH-ejV`#+frbUQ2~aV#Q0pRoNQWpI+9#Wy-R|?kosOkMa^ZAl6%e#N~zJFYD+*a&BO1;gW8@$^e6!zDNJWE@~z_2~G z)RN%RG*aeSNBA_g&xP7vc*aFaOwW|6L_xRoBj$nugnU74Fgd_)vBI|GU0( zlVzf1qpd4>?^+ytdcDqThWfsO$Du!-PLEUhw*SM`e39qXuY~3Gw=G`5?JBuPy*y9J z^{K0PJa`2UL$=$3z)a2acJ+HXSsCtq*?0QmN&Y>;kZDx^`d5>$Po0_KYWM4LzS?BL z>y;&$lIwRo2?_*_bF(q5nC4w^>9Jh*?)~5YPAs*%5+VHJ!>kxcgZs?MR-H$3uCoqU z%w%y$N)mb+DAl+~Lqmk?f(b9f5v|86ep7>4IaYOFa(Ggfw|qsATIBl;|HWs8RQw2V zdRKn_vp}0-*HNXkv^3C(N*gvbByH^2xzln>l&+4h?m-h@@D|_Jt5-v}+|GS-cei+d z<(cFU2blR6T+Qmd(s_1Es&=xY*z`R-VauBM$k zEvKALU9)Z-7h{>-{PskN4LaP@QaLBL=qiV%tu4irhu%;fBKV=k0g9JDf_tSoFx zFUyv@dEtNR&HrAoP&q8J_KE)TmrFV)PIih~r9J($V`%8cLwn~Oa%h{Bc>biD569vg z>#CmYI<|4D3X_%pEWwl+2V%_}F8(w(TCVc??uo*ZxXPN7k3;0b)rG(GusSjvFIcFd50EH}Il8dpi2rIvHsZToFeHkZpLfqK&gT?J*1 zJKD_`=d|1RzB{=Tbgb2juT?9qW`V{%au?mrOU}&nRH+r=VlA9oF`$`s;-m?IcD8? z+qHR$rkE*RpIY-=c(R@U$(=cii>qdRbe(rNWit27CnvUKNwgW5Oz1pXC{x&*A~0or z|Fhtqb4vJM)CE);9i8Wsw#rlD>a!)80dnb+B|f@cotyU0V|BXmeQ~$H^TPh6%>FHr z7W891A0!dMNRE5eM@^G{`|qzf?s9z3o8J7xZ{uZsj4sH>g!cS6W&ZBa>AL5+w=a9} zEK~e*R5o5d`d_>KK7G@dPePua+r7`$=@N_gAxFtG!6<_k-p9Z|a{_iZ6P+gL%FxufqHv zk8gjt_&WdQhn=(E@|~;wdGtebLdHzD)wY+Oe3}3KZa-*TDlw=p!0oJegFOKt+UzeqkF&K>sEH}OSrx+7PRzcfd&`Dn%)01wR`i;H?5f7 zvj1;gyvpT@dE4`1f`6O%9-e1gU2x9w`Gbf2^%ip9Hncx{v-$k7eYL*>)`lfY96ONp z!Q@!=-gyS;0afgr2bw{9ydt8a4lQ(U2kpv!$8k7-V@B#m!`Sx678xc|875N9Ur%-_ zWj5WdvC|I{)tbuHbyO)NRCJ}jwzhUeY^>|*t3qvSw^S>0A9{IHe%qqoJF1oJ!xvv- zG7DNCQ-AB!r%yj7-?o2awW4PZk4w^r8aw?S=TH7dt{unZCCl1omQ1>?Ioo8?_fnCQ z$(eGKdn-=vvyXi7{kPIdx6sfRyYwy<8qMV4YGo2}73`GSwQg~MhQj2N9H7h8Ht2BQ z%n{r7e(~j(4wp@4EaN=?*=3Q(%8;f-8ZSz$Kx+rnHfxA=pGdhTRBbhv@6%74Q%{Xd ze1$s&!FR`lI&^XC7hlW(t(eKnVm~2s(l4L7_{$Z_lO?XkYKR1^ z4Kp+~Wxc&^;@LD;qrkm!?XTDUovpUCY0Bx;#Gr*cjWyrhKXGH?^C@ek99~E@D}V+f zGvxzC6sMnF7@)BrMC+i5?~@`+!~a%&%?}RNM~8~A{;Y|U@X+w=46ZehPXR=?u zHDS)@r{7Hv&&ir&lb`#n;?w5akvHxCUjBdn-tMC(Ha&eA8~;=_uX630HK*^@`knuB z!KCCglX2D(#+*u>(@eY(PR|%Qdn=^QG7B+%WY{#p!A4R};FE_38w*piO0DSq2=X3eedwg2o_hD@EQ9kwQ7 zv7N5|2efjWZ(b4 z@9X3LTL%YDIsW0`zx`dG-`D=%dj03Z&;E74qkk-}e=z^}i;{+;T1W2x+5P{!^v$pT z)9de-f1LlXv!4IJ;Y&92V&*))|0Dc=>XvBTKl}f`IR4|{`u`ucZhxEmxxMb)?;p?W zzI|V;;r-`Ye;xb&Z~On7G91|d+xx#--9!HWjtuMPReW;)ci{X(kf9H^$kzP(BUS$_ zy#B+fw{;rpt+w5JYWnAp{J-WO=j^}fmN3hgPnN9v@Y?>!*SB}GSO1UypZs5F-`~sk zkECrrn*aYtxm*szubuP%F8`=s^MAhM=9>rJ+wML#|M$W8ssibMTjPH${&CO#U+x(( z?mrK%*Z-LG@|F0%5AsLsf4JKpOOLmyFSskuyzlwG*J>JFi}r-y`TyW%P+qy{r;+D*03Dr4h=tpzBPVefl9|Rvy@=p6CgHO-4t6Uz51H@K6T;zC)J;7O8;*3pA!51r`@V^S6`O&X?-`F z`26{v$9oqD?AP&rQrVZbne%$-#T+xi;~OKV$6P;}w%KvkvKu*OX*%n#XRCN7y?XZN zS+$AflghkH4NVFLrG;x>eXUxy&gOh!QBl%0UNvun(v;0NXMDX_D8tk4oU=VTc|+Fr z+sk4msd!u#IS{^#<@SWMe$P1W>#~`@5+#?l8E`hY*`2FBSHEl?q`@03e|dMxs}7$Q zixT^{*L~J)6E@5Fw)T6d8}~QX-|KGX%=)*vxBiWAX5NH0rk}NK&#a}KBKU6~{Cv^m zlR)vTTHXG?=Qh3neOd8at@@PGYisxN8!oxJb>{w`e>ZBK?7H!cccxEp={&1fJ|2f3 zepvBXzUkk7uBX12tYTas84gB1wW#~;zW;a7r$e(J*#FpG$H}lE&OWF8@9W#vf1dyU zTK}Id>dU(ytM`8_{}5jPIMw#z`~UasKi)d`G5p`L{0Hm*^xm(?{c775E*t&+lT_W? z_Ila<-wyBpckI>w&-EYm_h0(B|Ksd>eh~3~>Z>1DHlbE#^XoqgtM}f`oA`XE;LIQ&ufl@G7Y&l`f34!Z|NZQ{50@THQRx&E{(NJR z#)M@nJ=HueUpdp+-Ob%|JUJyYjpenvx_W`k@hi*>sgX%$vn3~*-p-1juX|zY<0&ge zO!k~$;ac|b%1pZ@7PC4Qd(8xRkZE$FM7Hf&#~b-*%H!4%XP2pHwtS^<5tPV_*KMqlGy^ zsx|lBmtS_AmO8^ntsqwX@y8oWChV#B$mA%n;Qsr?I^HUtO}~Fv?^p*q6g6+V@9$Ha zYEDK(P7OP-Q+MKLSG5=)waL?aW}9p&)Sdjy;N0J`-Mwj>Gbioo6Z~`C);c#iG`99P z5AUTfj?ELaFD<^geUsid*5BUiX2&#F&V7@gsWvG)YWLlHJNaD$XZ$YKY4^zwz29E( zHk7R^`PbUM+U)#T>3-8^GTv9CqD$j4J?^EyvM!PPmpj{2uL3A_K+*_^tSOko z_lu$7|HJy9@%Ib8@A1~Zc>XWaW_M+y{NE?vvrgOW-BZ!68w9RSK&ks)`l_~`X`ywm4;9XlecXO$<-Fa$w%^Xp0o~T#bu_8bqHp8f zyuzxguDJE>i!?sGxoNy6Z1wb@Vn07Wf#ZgLettex4RhrG_$C^$9xb!Y*7 z!KX96F3l?c)BbK-{fhakZtZ@*ch}?9_o{mY{?s;qHso=(=u18$8aZud<*Q1$u0;om zcD6jPl;CSuvwi;LNy_mbg2y)+dVKv|yCk#A#5Yi+)o@zQ_UM+x3?ciP`{u9bJ+^r9 z{r8E_GKmsOzQGmq+An6b=$!8P$<46quAWpc8~8dT2_80y{^K2sI1(k4JcTBUJ*t#D zWN;*DqrvCvpKYF0=1p>AkXY;?z{0REW_J2!$!)jS8g}346w^`f<@2$c)aej2{l}bT zjXlo{W<5@+&XN1H@6Wz~)IXIcBp4HT9E7&be!N2G^z>_Nv+OeJv`=4>C|I(xk5e;d z`SsVPU5jpb{;uTUw>-9Q{_%CTrC()!|8rhx^h>7LZ|AXVl7>&DbdH}jY+JOe>_qyk zMKvc@aH1BBQ~107|MdSa{_MT|_vZay_@Y1M{dnoWukrtf`~OlI4$S|{T`vf35(LfM z|0VsO_UG^Q-=F_K6rDXAlvW`H+rPlndmA>MRR}%g7Hw18b0UE2SD)Z*+Yp{ApSkOU zpL{PhY&a3SjZp!7gKn~k)Wc7ogu0J1c}|*9$+3aV33T31Z8lOL#!t!p-{AHS(bXLE4T>JX;zPWcR z`B%B@Z@=Uy=QOqR@eHf)lKc2LXZL%)USW0I@b%+`UmB8MS(e=St<IV@|o|T zgKUmV2z4!Lcx=JZ#NZm3U^Q2XgNcWY`AKEo8PK^Zx8KgHj1pn3x$nOFuG!Z$*Rzw& zG`kMXFq*+MX_@A-%bGIB4<;BGJnOuDJGx|d?BsU`O%$$|KKyORpa8yd{l~uky8ZoM zt9mW^3}^aW$lG4NPV@Zd>CaX@wy?0bKmPQo>aDkC4fW1L6Q`s`W=^U+A+vq`>a4$;Uawj7YEJ0)*ApTiD}Fuw zIb`l(z5MH&^*f#G)K~tRr}_Hf=MArFHtFq_%|G0*N+X}iv=N+i5NYV%XZydW>f8Jt zDF68X{~-^2|Ks?7iAg4|5=SlUrQc53JJ)Cb zG&f1t%KJCI_dkLbqo2$w&aAuK-d8zU>0$C~yRb8BZFn>%EV-GmH!j&|=7QUAAAR~H zwE8O7<(DPyE_F`Z8UShfKS7H{5=^rfTo|Unw`gR`u$fez0qu zrTEdqsgZ}i*RnV^sCZt;Fgerr^YvG$(@!sTY+B7Dq;kIa%=6-4^ZJT8b8Q?Ow}_~2 zzn!~d-R@$$uANI6<~&N_nldwI)7`v@Dx9Y_u{6w${U5pidF8URB6gc=uGZhSD|`OW zim`I;#77r)#!c5;l;!i*`uOTMFaFQiX8UE%?~3S?*8QzaeGM^587EYR!5JlF5|6z@qatFN9qv-)jWwoqdR+eA0fS)2?rN~abt z(ec)q?p?AwHo0Ku&YcHSj2!1Z*OzRmh))%Ao1~H!%balQ=+-7S^Gu%P*%9~CHXE`T z&-1>wewSsC`n`JDH2s}nH{6;gPo6w?>x2tm4x0XW^5jU5{54nMp4}=Rq=g|E&&#KSvE4^8_EkyRa)&KcRbJ-r6%0>NtTXs8l&EdMRHP^F?*Y_Lld{OT5 z)Y%=qp562P#*^r~f~THSrG=>Hb>P9Jac0#{y{j-Q)bNb8dXQ$2(t+x2swn<^P%!Z=O-{ z;`{FpweqK*3V|+~ICt*chbJe6&pa=72}}u+HJi=*?*03Rm2!Um{(;j}(>6=m{eELS zXYSmGll|=u=9nG+`qi{*uiUwF=O!%E%*)H$5TOG~q3>(oS6BS|WBKg!PQg{TU&!N%89#H^8n3th+ng!*-q`0*$D$J|*#;*U-OW?xV9Ej2 z{#ik_8c&{A?|YwYAfezJ>=M`#wwe{ZlEd?Bp$z-H=QAs{Cc7_@Tyi&W@%7gWHMoux z@-T2TF)Uxc{KRLOK#`eGWM{rR`1#kq{2qJj(uHxG2_7ZzjH-+r1mb-Fghl@j$7t-jP$CYK9$l%b#~Hkihe&kXZX5z zu1C`B2PyM&%%msR94b1ScKM6yZ_Cq0!EM>v^&Iaf$4I~Z(!DD?!7?*v&8~B`X%^MI zt6qigp114#_pMu3_1t|{JNw>=^A>F1XZC!r?VtSp*NpeeFWm_)m;HTirG~sv789r~ z25*#!Jl*^J`@Go4mzRfE6xtu0|11B$&cAp6Kl9%!oqW&o|GD}<>WmEkuaxg^u7BG9 z$42j%@*V&5ANK#A-9L8!$L;+;`=Xa?bfxUQxqua3QofgOZ>j&5cP(E^^vT}poIrKg zqnmH?%=Ke`{88fcQz3J6b4V-XL#;fhXnP=a-0+i)dD_I=x1(d?OG z+*Oqzi!?8P{-R?y!O8P`s>cKmPM=$%h($A;%n85@4r1J zu@uV82A#;*Y2w>^(OK>DlghjxpP1{evz8reIbeBu=b5jIb-cIS&b@5DHth5o(U{#9 z>A92ndlP*uCn?olJ9++%sms4@|J6#1Bd;AcvwiaW_&%dQXRFWIEoN-Le$X^*R!qi= z2`har$sDgv{NDa1x$$1c;C7owulvsOp{fAjs#`?B9Y>Y=5#pRYGwDf27m zzG>LT^Cd+cwa=C&&*Sg2 zl3k159K8236sq!`S$j))SyrR&o7KimZ-klbrW}`9-L&_*e<+jl^2>}LmL62_4eoIR zE#CE69<1Wobop|yP30$+(@%vGC1%B5z5d!XFF*g`Z#%ceg4bS~igmNjv#;-aSkU2b z_mk!FOOg4t-z2N{%7N0)k;0zz^Yb2l`z9719{%H8`M&1eyRGlszb}39lj6awyM8Y> zy-C|__>5DtYpV6M)3PT#=RIHM$F+=6Vxj@-iPGn3bA5hJ=u{FZQuo|6`3ob%+OX4q zKFG{IdrU=)!NB_GW*gRvHT~9i-2=Z&`f$Ba=Ca!D6Tw%Hht|fL_T{Ydktq#%`)Pl_ zbJ`@W;M#W3Nki zHt0Xs_Em|Tmbf!UYH{f5t5qkb9Lk=g$r{rw#DMR@qJ7|Juj(caL6<^VQ--@8WKrsQkEZO>NgFfh#P~ zItsPD1s0UoYyLVgjv^&Sd#wPBJ zdGzib-`_g<#TPl|Jx?^6DREGXL3z!)@4rC}%^JJockjyXy1UMBijSJ`k;0yf87-?< zYbWzrT3a8!yxiY6$RkkXSWV#>zQ<-kTf8Rjuw8evj4NlU#f<0EcOU-j-W8dv%vnBt z`OT*1CpPgE%DjK$#$S_Zu&^R>+r*~W=rwmUOdjl7ck|%9x4Nf=Tm#>5EKaTdad=nC zE04LJ2jt{`+f`3BeeAoA`*%;_Hjb+MH>}d0|J{|$_x9U=t?Ts~nh!#G)Iy(IPHUex z`B|sV>7IqnC#4Ey4wuIM*q7fURXOkQ_u7)(u_=*hJre6)A1aNVlA0-G-=yFWIZdth zaA|DG?pP7m#4{{DFBTXo^d*<id0V40w%_JxV(4`{-18LF)cbdGQ_k{rtNyJwvOBTSxp|q-^oeR3nKdh; ze&<|nuUU2_cJtnIwkbRzk~ifx)rGBnS~he0N7?Yedn)L)7gFgnrGG|kQ+l0V{OR-k zceln}3l9BP+SxaCyZ`2!N0K%+yx#Sq#Hv7s{qs+mLYc+)-yi;Lb0*EWB{9QC`twgv zO>T8+(~%lG_gTv%`j4x5K6&;N^n)|Pf8w_N65`#Q8& z<+p`dZ$iBNo7+qGz4}~heSNoQ@QwV-s}?DS-LXE4L=|GZ1bhcHu=wqO+1bQGj@HlF>m9Tr4+VW6jb+i zmhH~vQTX(Jk;WOT3whhm+N4EwJg@9{d_yAUM%paVCwmt#rtXcCp3KRsV^aCCJ@;wV zv1$ch#TermI)}b4xta5Bjb)7cl9fyc&iyLVS)VNTUV5`hP{ExGXO4ZH!706mFHW9U zaL@j2iO1sjmmZvW<9zd~^C`De>o2c4^82vik!>GuWn6o_Ibr_CgJyp|-nn$gIl0F~ zdF$=mE35L?aIu+RrB6fN(_<^o@SreclTxg&AU6--LX6P zY~kI-_9pkl1ApyS=u2jCY{=W*t#f)qgwBPRB?dBlfg-HWK3h&wIe7D?WRt>yyLV+T znH+ujQWMmIIP)CT16DTBJq>ERez4)6K7G0bU;B=oI~^t3B>In6e0tL9$yzAGe)yrl z^5x4x9q=5p!$*&@?)!cB{iCDZ;-EpuMY)-q7!q90eXBkY{y6&GEWOj$I-{08xKb#i zEb`pYNBG3&n&o`&T<+&>@3oL*0N?xScHwMt#)Aiz4f?EiO$u)`C3iJP+Mo6=EWc_R z`nE!U{q}YDSM{xbRJw#!X4T^h?>_&2wO%;q`r4U6Gh(NU1eELD+nl`qwZyl#+v3}6 z=Z3OP-R?ToW8Ql6*}aB_hOy0Q+G;g9X3{_Q@t^-ZL4|XXhSTPoE$@FbBup}kxo)b~ zV{?AuvXwLA83bG>dcH`IVrST~F8dYVVS(Fkr>~Uhd#u30GPIxGt+vRa2Ma25+7M7Nd`|q1;nwtomOmEu5Zc=6Nb7j`u z2Os~;uFY8g{hQ^tug~{YZ+*Y}`M&hvyOpozC5L9m&b{a!Xy<~h;qj^MW{z2g+3IqZ zP*73g8aQRU@7xH#x_`TTW%>onwcoR!O%wK<3TkbK5 zrTHMkyyuB_^B;fvCib^Z{`vFg9ESzAZ{Oarh+}@;FHO(|^q_|9>8C~RJGkE5kF2|Y zW4)DISD~iSvW2aOa=9ur^_DWsSk`|wt@&(Pvx)E7bzg#dycVwa`E?`5%=+tQ8`onw z{I}0cVd>ho+U5T59--eo44c;0)Oy7Hjd)U<5PxN9&Xu{_-`(QB%AAnSbMpSD8|_~X zCtts;HSyEFtzRMUvXD;KB7pVX` zG&G57P0YA86?EU7*-4MgSxQ|>OES9@I1FU?CZxnO_ z>$V=>a9%~@{`A)qbleZ~PY$-=oB85UdedIH)8B5^9^AjPZ?oP#VX4J2*G<#T81VE; zKDki7Bl%wP?xiPNPZ};cb*1b?jN;dF{37yLaydTm?ZRGr{&>gJ<|HpK&%V!$iu>r>44^`~LUB zy1Kr+?cKkBSKHM8lR5lQ;Q90C9+ySR%gfa?mt21hN;3PuM(=O^{JFU1b@cs1HFn4S z>plsCq9saKnaM7NX`)lI zaN4MU?&s34GON~~>j-Sk{cuCwWc&H-?;mHU#Ty;kH}}ixQ{j8J$E}YyYP`a^{{E7P zS;Y?L_|W)!aW`wbyOdGBwxcld^##3$JD=axgI%EUGwO2ezb(=0rly&^`KAJobF#t0lTG#8qjW3gu^%rK0Bs3!+kgM~(W9)B zR1PL>G{}|hKfa9T_sq}T#j*FqXED$C<+ymJNiD;TNa-iD)ZS~apP$Bjt~YISr{D6= zm!g#SYljrR*qqGrZ&Lf2m#a3Fc8ZriebuA$$-g23YC4Z zwE&kvb>t61F<@;EKD?|qmB!cK+`YzoqP);Mt_BS*<3%4=d++vL#x1EWh0N{`ZMZImc5JuJiByf3r?=&hxFeo(WhUUple# zy4vq~&zCT|T~oi_+%C0uRZnui;Lp>)I`-rXRm)B|skQCn`mA-=B@bGtWlp)7x4q-B zglpgoyJ@AT?i;Q3lG1u(_R;pX#KGTM$2o*EXPs4JYi9gp<335n`fpPFX~oGiY_8>{ zi++=^RJ-de7yWgOWyv|`PUX0cQ(CguZO5KHM{>--vlVmZ&3p9n^70qoe}j@Ds7u0E zX)E%`sJA(duWR4V#rsVn3&d-s)SvXda1DIZvAuEqB*z(>6mL5STCqN3@TrbkD;9Iz zbXnKes@zGAPiiN!^*g&U#-*>mYP5gn=K5)=)?ei}Tko&!({euR{AxnT+R##_x3#&q zzW*|m33dI^~lw&J}bHX{7r_OB;D(f>`d84>>rG-gRKmh-NGu>&MGmotS z_afEiwm-g88aw&egG#w31%qWgQc4*I9{v0ob#w(FL@iPDJ?CuAyF72t>8~qKWn{@$>y+Miese$cdggcaUcO6n4sBF; zov_M#@kNJ8DjkbB3T2diFV78;RI|AGdXZ1{rt49=^H)73cu?TcW>HYVIOJiFSJ7&+8{_?vvCN3^%W5k1BzohQwU0>4Vqb984 z*#zF4X)xEXSM$-6CoGlo9zT1=HrJ1R@kNfxdC40iW|T}+_n()rG2+3ycYKZl559c4 zGQ+3t&tv(=j~+4I|8;Hqh6o*lnLa%kGfzrw6R`2UEPK%M!_>kir3B5Uv|kOn7HPZM zecmPfT%=L3PdTaK{#{8LfX4r!rK9gA1hH=k(F1gt$P^3VHeQnrjl@A4d z^XJS_@DwVRJOBC2jpsI7&+5o*zErd6X3m-SU#s>O@3ZJ*WN;KXP#U`=GwY1}yyr8& z@7QM|#rvhocCw1o;u+5?HM$mks=MhaQzp4{-o`m5WuC_J!SSn(shrh)BOU3d7QJEq zlNl4=pR`)dQ}J!aZF4vIqzzB@KCaT`Z7@0Q@n(wXzg+3Y9etbRYwou{woqeL^9|k- zrON_ZZ+%88I(^!zS^VE-Y0l^0)GOm$^Y4SDqVQas^TzW}rcAKti{G_v)xToUnlXuD z&q*pClTx0~Oz3C5{bBRnyt8|z9+R(Jf75*SS+=uj!u#IOwoJIL`ul)cgN(IXpXm|J zQ|)bdd-cowc0{Y*+j4pjSE$pg*;y;jhG-Lau=f4@Z^q#;$cS8kHZ z!Mk^5fBm&{TRhRQs>Di`r`=h_vkAQBqp+%q>v}0jDQGr-p<$`d@?eH|)&7>m4xQ5m zQoRLrb$w5ZI(P53F4-N+!^Zrj%J$CPyAOYUer{oFdvvn8zd)PfJlkrv^PdX}3mfz6 zKF^L=8>S|iu=(Z;mY!8Ae9LN2#D1A6knlcD@2uFSn#gI-VuB8MCF-Bm5c&M6J$K{L ztu^bj#7n0w8IzW@J0W5S1D&UyI1mb-{S+Nv6F8dX5pK)?vsuA^E-LlK?~)k zXLB5_14$BJSMSJ&Qs=Ks+gC~Bby`4s~adH+01@cVb1GyuNPg- zn)&VXu3SGqzXz3an{Pd1>?#mpH`JA~Z!T#gsvfa7IG=KNLl$Y^`%tT9= zFJWAgW&7Op!`40iHOoHOovdc8NmZEQX^=TRG>rx^~Mai4eFEc@igEqC(- zk8iB(3td}XR>k$Z@p`;S>&)YO>efl;%zs`98LQ!FVwioF?fUiWpb?vCscKta87||$ z-I20AG|)~A-f%~$Iw94lyk=;UXLWe0rcq7Li`{+~GN)UH{rS7_L#d!}&NshE&6=DJeFTR2pM^1Yi0y347r)p23osmA@k_ZpF17<7i%24c~f%NUA?^g z{Il==&OXcL8u;L7w>U===(J%K(uMO(pJ)n|%?>`kc{+=D@ESL3UqSM!(HGMy8_(1DC_DRlO_gYHOruDXrv(E{Qu0tF<4jY&} z`mjjD=aTQd=NTqa&&)U8KFu<_Yt0KJ_LMn(EMx1<9LVacvTOUVW~KgWPn&QxtF>%*u8&IPyxFGbzSkzRO?-W@ zY`5$B>xW;y)b#W7Gnnf)QKhreFWh$h)2hQ?8#*$=YCBWdi?#S`CH-z(0nn5fqOwk&(z+i#mMnaSSF zEr=DL>&Lz~j(^?jMH*ap?%z+gn?Ji~t{=Ojz=7|zpKYH1Dl9K=w>i(q0P5I3`)oPw z^i#jz@>vWUCS0MuV%(PUj7H1lts4j)OLrO;VZR2WnqgSX&>?+IpzO%60kWgB3PzGRNI6 z*vR!i+@<&K{rke=;^xbjgJWW26}yyt)F#i}cBHUJ#j~KQs_XOT;x%E~;AH_V4-3F2 zY9=-Q{$2g0%687&xr$v%Er}T|n?();6?k9#RJHe>=fMR6Gwh9CHa~qUdnxxa`)l@n zLK{EJwEvp*eB%6z2OI^hSdaNwEbNGxwp?It?m~_@wW$mS*EM`~LwBza=R7KZD*5^T zz4L6Rwa-%OTbR{b?IV9Px7s5*H#k1@_Nz0-CN?26znIPDouuL@b9@=!?HZTjV`-ZW zKl}F8_E~CrrN{d4-ef;+AZ%xI-gx~?F^6J~v#KWRZnRA-+r2kgWWqBBsn8qZK8%I2 z;*J6{cDf~ZzW=Rp8Z^0RcO!4VkL<$4zBU1_*O@Gt+i!bZ7AcgOZI@y+Vb8mR2?^Ku z)|nT{-BL4H=U+MR{glbqPi+;2gR;iLV@2x8J z`gbAVMWtNLefL?*(tI}b#PH8PtG4UzI>Ubq4wF=l83?g3PExt)x&NW%n-GziEsF1D zKTNH3k>aZSpVQo0b8f@gOIws4&YAqoP3gJb?@g!n1aA*J!6K>l_DhxR=h_C%I3G31 z{^Jb$Or~s{zx%G9p1%G=3%+;n-t`2weAeY)VsUKHIbC+l^!Xb@wxjKJ`qk0PY+Nga zu{GeH>TZb3zmR2mztkAgznrq3F_h_4?faY7UEzfuGU2K<|7P&W$ETm#bR=n`g8<8m zuT>tGMLz$O+4uhOmoFlolM=Q@%@h&1|9xZBS^-zVV~-7Y-36tqk4MGhAG~?PGr#5& zr`lxBeLo&?^RO|4ChWFGB^u3~ksP7Mb69rb>k_Nh*SjQo-9FUHcOPZakK1E#=+e`o z&Yv}XDxMc!e>ITnpQzG#bLZSeX_>PoEK1@!SLxR^Uvt&8rbxA%00C`Zkvk{<3Y4m8 zO4(_|EEm|Jcg&Ur^x^`##BoBr+9oJW{JHGC?nZ2rK)6=3#1I9-)wy;b0 zd7lH#o2htS0NvE0$DnZ9s3kF@N8V&kz>;?s=lVX(FHYTjQ^7YFyq0&u^PPrk0xq1} zRbh9$a6+o&CLL#RTW_u(d*n39$?nT98#?{aIo%VmPlF4*yz^|e$tD9ymvyDxN0|ae z7T(N}I?Q-oveG`KsO3%e%m<3Sd7ti`YGKa|o8T$_$G4d0=#SFxdG{qI?EfyiIseWn zd8M=BG2&09&Kde0W;@HZ=l&)=sdk(5#@{D>-Lz+JTat9(th38B^>1ta?wx;mL;CfD z_f0ZSei7ek_Aa`=;_e^D4WD(^7}bV+wS8SEbG(NC#rNOGeux}5%*)T;7`4{tR)5a? z8o9rqwYJaa*Y_>=pRd%VM%aHegR1SP>9H|3bPxI^D-ebgq)UM!mT95kdaz#_rJ#?i#keU$0^Jln$w z1_z!#RTb-IP1}6)T;I1lM`P5Q84Nt-O`-xS@@Ct;ap8NgI%R?ubF0YZYi~E{*-w8d zn-e|n`LQpGzN#WiFP}O1TI=+sJK~y5X}e{?voWca{%`L-U(Lh0?c_t>?zGjvUdC>G z|BvzON{_Poy?)N#vDU9w2;W+N{q@|EnY*e|Ume)@+ICvXSH>K(s_5+B7@gbuhU-jz22pEx0y{SQz!9L$772VpYKQn zfjX;eO?)5zwzHbcXEvL6k%p05bKdssQ-!^cYR-MW^Tm1f*QHmc7f*lP8#6n{*ga6> zS^i9`i&3$ta?498*)rMK9IKiPPx@4bfY%& zd+(gZWxG7)&OE!1ZQ9e~W%u7NzW-jCgK5s3IWvyT)j7Q(Zhc{SdHN-rl-Wyvwi$%J zDX;%t-utohd&~3vJ9iqcRGjN~Tw+hvUb(nE6^WBvR~kmBg6IQ!7Ja?CUZ_ZtqK~U{qi#S%=6-wM2-imWnUgP zaG910nk(9|roqd)}uQ72ew#uEt)&` z%~QRPI_b_6KepRF&t*Qn?{`@Fn%H$-bMor*>dQQO{s#1UhHp51df$fDTcxEp|CXJQ z`Mj!4QSSLJy=$O#*$$D@(qg8kW(rv}DHu5YKby9B@-xTac9WhHTLilPS;||_?GxN- zF2$R?!|U>uIrl%?Brou~T(Vr|d8z=51Yf(yHi2*2!W|uR9~}Jm*wiceVA^KGWy05vTRr_V{TSm+vEny>Zj}3{E^?23)V?PC zn*Q(B>u0||jabUr=&5h=M$|R&SKssLwI?5Eo?7YkU_$n?yJa&EI9`^$9C7XS*K@N@ zfATpMvHrUL+S_~9hvq&o?z*wePU-z>lkYduj=L@1IQg4mugT<-M|z~cRc^j%QmZ|G z;wJf>$5GWyu%WTU&7?idb&wc*n=hGRhr0l=lSgEyML*5AQ zY6FJo3Dq7fH9lM&OIF=+E@SzBqorKF`VgnZvs$ zsc=?whRDM`=RV(w*)8(8XnM`OW;LO%3H+RU@0W3Ti1Pc+n@}omWP9Vf{`KSWOCP1oLA;;nY5#Tgrm)5&zS3X4GT=AcqcoE z90%{euoAkier|u<`t(cHPi!ZiPs@BW>ASm{jX`Zwt;X4GhO$dt8W+-~Z(I)w(SJQT zjhEqAL~%#*HGxdKo9P=8BG>KT_2--!Hx` zyO?7(QH68aWzA=wEgxCjGqm%vD9c?eFh6$BF$E5vO~(@q4qUw|`tIGk4}X3ZgJxwe zzZ6MNPnY0fyOFp3*qWp7rMDeinzwgVb#DL3{&KC5=^wdo=aqunj)o=sP?TJyGdA53Tfudw&=@{ni)FPmL-`6UCx zA`Pc$sTS7O&H^km&ZdEu<+dGG)YI1ojpY^>H`nd&|NOaF*=Z?gkxTN{sKl*NZ#kwu zws4!Z?Ae{wSGhLd%uzQyAhzrC^1FHO_e^W!$=tFbSUw_r>WV3c!qqA~CK^xXNU3VS zV>-_%p6k)h)4P1$C!A_GS+ilEMpw_l*4iUQZ}__wX*NxNdt-V6SnxtCiU8gpgyq;@PcO%(pmd1`Y87cG9?9M;BmpzuubU0_aQ}6PZ z&3E%2?$WEdZ_cS(R-HO~^%*sFb#*n-mSsXxT6|}7tNlKhU(dG-k6JrTQ-AUti)R)5 z75=M!h1$74`I|a_1Ak;#obiXLJH6H|_F4I|#Oj01d6~)2EhnikGEDw5b=k{vU&Cjf zpRq+bctysfBq82jeUl1n{W=@8+Abz0VPiys)!akh|IST*WO3}~O-Vg{ zeZ%?ZKR!CjU1B9W+01D6*#ME&o&2xAN_8JS^k&2R-}^jSC#vyxEnGcG;ECV!Z9B^2 zyBbZVSo9^A)yJ>Dp7y+a=VqJM9X{_LI`44Y`d2(+rR#H_n96BItCrc7oY{B2 z-!eXSrt`9?$re|pn+28B`TW${>~Z&gXzt@Zxn{F1?CslM@2dFrMsnHZm4YqLEAx&# zH7QAnY%AN%d%ZMJ9K{!q$3j2OBURXYku=v_qyTD?V< zs@_h!E0W4@en+QXo5ZH57WTpB(igR}*$h5e6CYbxFPoxuc%IF2o#RjV`xK?jRJJYj z+16kGx$eS=gI}lTPRLfio;i~(Rl4*|sl*ShiCMev?n|kd_~GZFbft%%lMN&i3?w8T zyH8R9P2bI0c4E_+FS|`1y_tR3WLL><&`QBAw{w%veX5n;_x`=j?Ps4Y7il=nT6T;> z`8falT%R+RDGsZ5Uq8O??eTTF*p~T%R@-bpQpR25Ymx*hqfS{L5bLyCQX?uq>)^xK zjvsbq${eg~L_DhJr5`yRIZcs+Y0kWPN?l5K?%xN^dn6zK``5N=uiUZ6hL0?cWo>nu z_xwYxyrY0Zmy(KSQjh%Ur$UoYvdr~k7Z(>-i#+n#MmdW2uz-Ht9*6z+k7t-TfhIam zboix4*WP#Ef8X5tQStYZe{2CeUt6ueE%xNL^@-pO+Puhd{OpiJDzesf;fCGw~PERlj7a6F1zJK&UzjFqX##g&1vt|{kP42^Xa$7r}uDe(yKiC z`_xUFun)f{{QPURZuhB_l>Ps$etny8@krgY8*Htstd{&-;H7cSWnOLWqgfm7=6!r~ zbMxFvjn;2I_6s7L+g2>n@ZkbAc`~Kfy`ELt@aVta@@AdW6Q1uBeCyrZm@750Q)%{D zw#s?T4ThC#u4f-9+>^ZTk>yRjWj!s48K-V=Dtz1f;C@-X_vZ$aG>^mV{fYIVYxOtT zS?+(bcZyp>?b}<^_a&^KZ+59f;kt<0L66C-w>RI-o49PHr{l`#?XQnn|L#uqQd@N6 z@!dG>O1YbQ)0QV5E|i%wXU-c5#??Yz9K4Pu6BrD#_r@Hq-0O2~!{xaR`n|@E0t;@x zopnUyT<_Pa-rv8glW#oPGbP#cTeDC9#K%3)0%i#>bu{ctzH|5P%zw#FeCrqI@toYL zcRcp)tq4=Se#4VDum6Zhp1WvIHnt(uPt$&UlFyKC=hlKI8tqN~J--9uN{>J3kBs#3MXXbYTomXMI7^Qs7862sxGuKp@_x$0%e{zWuNj7qi zU%ld*e3Iq!Pnor0+>60`m96F~oi-}Id*`6Nr;xJRRHclY_J5-PO{-O~&o-N_wzoNT z$7Z|N+mCMUd;F$jlP1sd2Q#csc?Yh&^LOr}vSaEG~tu*{>yA`v; z;)@3=Y}h`8c1?KyyJHbYe9cGK+}RfQQvc3z|MTX_6PCWmGb&ja<~=|7y*8QQam}I! zdo{Xbo!zIUW|&BQusJVre1?J3WUdc+W0j;m{AszE;N}WS#@I);jqE=s(0I_cjR#$3)cx|O#*V{4QIU%N!Fn*m_;o9c7#cE^AEk$laodd|t` z4Yp>YPn}({HJb7fW2gDEts3t-yX5x^p4fZ-S;unkm(6Tl(&v zywSw~6Z`q+A6oQzMm&hHPFXW?K6CuiuLX1R%%qoOW=&$Zkhe6CT070q&-1hJZAVaA zQrqdQ);c9M^Gvi)iO1y<^+Xpbd(dhq0V$h^aEZ188Foj38Q)Vrar8>O{`yNb@%O%c z(;v?`#&0d^vh44PuV>@h8}1h7&-Ph$D?xhcsxz7`rJLt|vpkWu+3>Z(b*JCEBE^6E z&uhH7Pj=*Q&p15&32r`(L|(#tFI> zX~bJEG5DOzG3j;7%~QJ{hQ4Pmx7P1sn(N2je2^g!bYA$6ef@Fk+f_Ub=AXa#w#-nf zSD;OC*=0?5y;fuAK1s#G-rik+Wyk*g$7}4|mtQ_uU}56ce=wn8HKezFa#K+;Cgn3c?NiT>jSGVGUMUU{>@|Jz%QbJnAfO(5V#-t_I|tG5d?E_pE9DSTRL zb?tp~r(cUS1lk_ChiJYKmRD1Ezfb@Kd^OJ2#8$;%pf>{`X^af)Y=SETb^fcjrve~U#0TG zgF}UW%6FjQZr^StM3wk;6%PuaclrBSTQ*K zb>8#My)~QmUw>`-$ii&>?6b=}pK~-Z{H>F3KFDx3O&GdNC23>D%KtamO&T`T>Ky)V zp=Nn)>B@=A`oYcNv)`FBcdU^%Z@+eYS5c^1->Q#+Tld|1JmYV`_IcVk=C1DvX*C6d z8{dKVR7!WR+JEZZ7k*nm*AjVo6E_nnUgaXbCWdvdl{|%%3(92JGiNECHY(X2`(t1K z)vVUpv!!|3ok4pJP=+KQSsW|c=`!y*N7I2NO)h~gaqHV5TQ(j&d&agmjz2s+ykiju zcx%JL+iyWLjc=;n{kDTFE}VAyY2O0z8=|u=nK&xy9Ni$&7JMOld0K#qw(GUXX>Z>g zJHP2|S#`R5U1VHW-Ob}hl`U^mg&K9srgbXVZ1>@x=#-PG_E7J)$opf3dnWT8`d2wO zq;scyl?{WkP`$>sg1-@yPb)q?W_UeCJ$g@n2bM(E_hH+3eYMpRiMYPpt`E7&Z9WMP{UfJY ze=U4F(StcM^j5pczMF0QJIlhh?tiuK_M?AV#thfBW+te({w=$2(U*Kn^RiWiOvBu| z$@_Dk{K`}JIPuxAvhBLS@r|B2i*C9|xjxx5@v+aWKadeToAbuWt&3tIV=jZS5dx&>_b4}jKbg|2JDVsWSyQZkkNnUAm>E<&2+b5Ll zCx=K*{ZTh};`&z=u0JQh2fi0U%N|Gr2~5_ogm6B}`S@`o)8$py+gmR43-Z_V?BQSZ z?z*ntdZD{P24}8xSo8_DDek%py6t+AhEY@2{qGZ(fi~u|H8UQ2Z20W6rP^f9s=ab< ziv`10i;8uF7C~0nw7uR1DweXgHoe}Z7MWr;duEE@@j`>yXD6s|u3NY6!7e?u$)K@v ztGOWmY>ZkfaNO{d4QNnQPhY<`(xodQ^W1`tDNWH*mP;mtNLg0=Dcf!8DHF8i?5^C& z9IOw5M08$npX{FUisQEP$91oFS%3GMHt{9HCfQAYE9WVDPP$cg`g^~j=N{fCyFP2N z30w>P`rYt(y-xmS{@3p!=SKW8EPZ=etRQ^u{|PJI6J7M`ruJDG6RrZg;(Ot$N;f(sjd+jfIe)Y}eMuo{ zdHRj>6_)0?#w{kZZypoOT(*Jr-=zbA=JS5|tn#j$a6L_Zp-eW%hTmTQracq8$9=m% zdA_bt=BkvgGbc}SZqjiUaXlt-1+*zl4}AXs->$oQ3<^BX;LT@yCht4=bw6nN#EE}X zG!;ya8BFayKh=Q8clV5%!!0XJe9soI?A!I8|I=ox#S3fK$UOd|+rROw!lfxHuWLe? z7cJWJ9@`Y2D`aI~pq*3PbV~=;lK1-C48E002QOimy!-C=D%+IEHUrQ#ix*#i^;zU1 z;(AQS>0!qH`{pYZK%J}g*FpOhrkz&J%g?{~vc%`maqv{J>F#;O>|YNiG<0`!wwjA7|8T;dRUe-PEIPh$*ZoraP{}fjWtz|K=a{MOY-r={x|R88 zLfQls&z?Z$A4R+ms{0<#_~{$Wc{V`g@n)W0d85`Ar^;DJK_fnu1|Px4>?HB1n9M&? zm@~;!=J?G>=2ySkI0Y^RsIh+dW_4tLq~AKtOBWQbo7WwyOP{&w{-u^g?ti&~cGuT_ zt%{xbLE-)W7-Q8K^VQcJZ}QE2rSjXMPkXl2Vb4&@$a&Y5FS{+7dBN}agW8ne(@rm4 zSq<)tgEoGbT{u!wU!Ol|^Q#9Ek7g`6IpOub_rEhtq+XQmE|57M!+iWo(nf=q0Y&F* z({eZT%KzE@uI|LY>1mU98T~o4E_?pR$F+v$TBlw+VQch)OA3vyPo@uix$lQWd{5l` z{$HTStYw;uG@O=SHf(zSw5T&~efzGfonQLsa~H$?Xk!I{@uHB@!h=Stx<}eLOg8DbLP%XG@C8?@Ku3@%On+!!vd~> z5{4G7n}aTRC9V;%V>a+)`V-C7t0|Hm*|j3lk86o0+xFAOt_@F@cH9=rxZRZgVD;T6 zsX?BLFFHg{b9>^)xJ9HSSVzBn<@5f#?^YRpT*#FXf0X0XwqC)|XT9xm*_+qvSs!%Z zx^Z8058o`E8~Z>DF)f}m_{N@1D^_Q1Nvb~o*~g3htisx`?BhI6fp+Ir&njfjk~++B z^i$-tnLm#_zGPyWyFjq#Sby2>UKP&?DxHQaK3J$J6wZBMrFvcC_r4Qfm^D|eH*yP^ zc`Kz$&^O&=i)RMUhWFeJb4$DDdooMaKl!COxqFq5T>Fab?l;_#+fHQ!Y!|yC8T_U= zTvq#fq4m#}zo)-jwB3lG3tscFH|~6o@3QkEu8GG4d3__Ny!pQ7 zMNH>E8%Xe!t($zFTWx|%U<+syj85oEspEHyZ%e5B-m2%hWnqo^C$9WiU&b5{nN)TNAu+QzrA}}YQ0)M_`Kb<*QT@1s{Q)A&oHlIUVGg7 z@Sj$mLQg9D{FXB_M63;CXt7aGEpPqoa)XzR! zZqjkyf4?2PUQ<7A&w-aOH9-g8Joxud?)&%eA8h#3)6+dJi>$uN1>RSgY$G?jL?}+4 z^?uL}A4dJ7Prm7W5i$F0TJC;+)0&_H-(b$87exMgUEC^?zWsLYWxk!Cch%-ET`*@+ z64#^5hQ!FOYqH00-YlKx$(h3+%&5VjfBMskj~^71x+lsXUj1)-&D}pw^6y=DUdj6D zhgRXQg|Q!AUsC?|cENwM4ZOTYmWwsGjN?)De*WL=k`5T@C|-a`S1V6 z@9zvZ<^GJlzkSuW-K)w%OH1b$KRf7?X4A>8lz8;e1ocfW5)I;J9-cLW6@L^73 z|NjXak9@W%wJ(i*{OOa>yyuJ!M&=iHEPnm6_JFV@-^{X-V7{;Z*Q3&`-2boXuim>p zQ)kAphLuLI|>9U;#6)PReb!Z)|Yul z_N}rhbu+hcs=uFgH?Mt@&c>TL4=U%~x>>jVwju|UMPIW;-^QCc1~PmPcj--1ah#+A z9^zQAE;}YZUYW-^CMHIqOKIu{!?}KjGJG3j^gjOhnC!DWI3^}0VQ-vrmlAkNE-+Md z+G*8KHpfe>TES_0`t<1>;BBCpvsM*rY+SNROZCXo--?@A#m$0?*f}e9essQX8!sMH ze9@Hi!q?dMr4Mbd`YL6vsy3+jwO`Wn%Q;`|lqUVF&p7Bs8pq|Ym9oF2GPSN>ySDB3ORM`K{PO%? zc=}8mUZnOJ?tGC{Bvd(>v1^h-+}C5GDbo~~Syk&MbT<2lmGr!0KT!OvXV<##KC+|MJrPY zo)G)M*gx@?O)Km#q(7Q)VSldggAd;iXnwx6isjBWXl;b?~x(7#6dMhS&ghh#?Nr9tDVNb+6r!&{o zt_Ux@^P5}ft5sj~u5}ZaX}T>IRGZ9s$>eC!PSCD|!|nVVqt;Hjm~1sy>3p$EAj|1Z z0xXO%*Ih+iPkffyd=qrSTzGi+3DChUJpFREhl+L{+5LWB_s5E!&!3A$TpM4%&YqIm z`LLklWJ;4p*N3J0wVabrvVc@(Z9Vk#=~AO974zCH`Zh-BOi>6E-#6*QWFIk=Mb9#2 zRIHw+aT`TV=$O~?Kt#H^+R5?-EX&c zzVGD(6DiHj3H$H6hlZZ`EaN#z!y~A6(dI#>VQS>6%1Nn` zpKR*SeJJKpTikncgY)_QtNnNT6z*h@l&wp7GH$)uN6-l-PqQ9F{5RZPGN0r@56$Q?rv@s&qa3rpmQHV=br6a zXE@X6!-Ip&Yp!Q6$?RH|X&~1hI8AkuiesRNSHT<=PC5I!H9i_D4W^uneHW$ImY3|i zZN*UP7km`QPTQI;qBwD<-l1pD1cY)Y|Cr;W!P0qO)3xzd{PnFuET8Qb zng|$e4cP6Q?D*eLJpcZYISZ~A_ed^To10tu$td^w!cWU$UsOi#y0v)zYU$=LvY-16 zugxr5zn?SqxvW=1rR0QzoE2Ir>sNWrG&Gyt>!rQ$e9Ef@8_!KP$+;cYDIL=G%)(!I zVU_PPp}a?{UQ5kB%hr6*VWz2uX3M(xP|-~~&5tdz)-Kt?K5KJ|)XLXV+j5gFWL6pN zn%FvfU&SuwwZh9b9zDx&W%->DCL80;A3uLtq8ydIqUYt^^UuZn>p|C(ye-RL`_(4@ z{k`r*0humSt}I!vz3d3v&9ruVZSi&IV+)C1H;yKUyRWPE930HfZ5rIm{29o&=KJToeLA|fk{ zZ@w+dYX7CcVIbE(5!A>&lwt&0iRUgKs!(5`U?vS7oG|aZGBkK z5x2fwqbop!Rc$h-+hW0W>(+fZXZ`-cqeo2gKMt^ij%q8vUn{=(CeQQdpc6*Ak20l3 zD)E5!(^~XF2cCb{^qKf>j9Qy;+w9qAOYo-kKiVnuxBT%{j#o}X`il|4H;Ho$uIszXT|Zy2}y*th;tY{tFmsVlGPOR-l4 z3CYX1`|#uzU!G!e(d^%kjoY?P=$H1|@rctq(-|ST;iSiEu-e5 zMY)Xo-gE|y#{sjJW$k&HDQ|9Qx#g?>?2nIceD?iNc?;Ts**bf@ zZvLextv&k%g*!lX52OY{BljrY*}CDan)Rps@|J1gAFoeM4i>XHe;B-ZeS?m7ZQT0n z1v2dE>FFmxn?i-=Jx?@|I{4YainpHcW#8N+e@ee`|Jdn$kI!uG7Ye(?7i z?}B@3Qs#G0FMKWUrCvEP`<F!ngedpx8D!#RM{_@fZoz1hYGWaG*ww#elxv^jh ztJmiT&jc7w{ct>c>a;!EmTXMEzdHB1T=tTz-+l8KZS(Jczgo5HX3mvar!UXQxbrE6|CN4~`-iPI z984{V9S0K@+;UV?+Qn{E9TK{9oARkt7LPpU)}%OYl`)ka|Sbgd{STR zT_+u}>sp@Uj(%))3akjZm%#US-rb|MCZ>D5@-AOrZ@gvl-uJ%?WY|HYUqUR74G#-C zY|d|t&=F`;OxrAZ?X~HtO-E9U4*vXUIqkISy7lV?+aAsnT(T~k#gXCkrU|K%vzCF* zzb&x1<1JSCz`bXY-6^&(I7;jyz-F=0ZV_j0muEaLyWIDos_DQ& z+5cbP`*5 zR!Fq-|FhzC)%lbpqn-<2cm74zvn07C^VcZz-ciHoTj99~&b`?K^ueBy$3;*{o$Gh_4eZlQNt-a*WxBDpM zKf0fD=r_AzBU=6kwMkRTtR4PIFNTy61=mYDZ~Hvj?(DQbTsL6f`#qj*0zx9{o=oRI z3$Qfa`Zy8xi+}k>MYn%?++TX(;66XJLfr{Wf zoSJVE;}W%ZIMPumdMQPA2%+n zPtMw3w?4P_&em_T(c#h3U$S46&dsv1WXs#}ChPL-Pv)~e{B!kDfHoH)aSJB(XD+v9 z_{J|T0%!Ek;Spe>i!0E{XpkBe68wz{W`nHP5Dfk@sr9vi@rdSRxhc@ z_16nx#S!wv3vi9sI>)^m7Mp#8_x7Gkm?1M2geO<&L2)Oa-5dB zW8c0u@b)(^kJay8&h^UgxnH5h@t)o5=YvHh^JEsxw(|%$cbr8vuRzgktFyn*!;=aj z=Ke+xJC$v88>g#YX7B7@DVy?SVKKvsDS}$X;WEKW+wE*Jr;e5TZdwX+JOD~p( zTkrU=Z?#_V{}NSone08USG`{M;uZ6}umWK}Q>n6r`_G@4aL`veH1r^-HPXE-GeD$u zR=&ykhV;*^&)8K9F8oTq*5cmieuxFg0?~_16arWxiC| zhJ?1-oDZ$)%)Py0mDkntm#Z~cJKjaMKYL@CEfs&hPclAtS{8Kc#VqEzGkL<7 zOL6(-{?>dx!$-Yx9y7xyoA6>6bIBJI3=KJ&_I`YB!3WB9bpc*ne@%Roea>bW7Y6M1 z%@#5@xwL=T^UK@JN^BQ9pLdSGy!%@AH;Q`|!ji6NN2U3>7{0*wE&@^Q>hjKG*mMoDDWU(Q%Mt{eN^7RPKo$?6wB^0o(O+ppbi^R;vR zLC;AV#-5>}S|6Rw&(Hbw?%6WYS;uqR-0pt4^i8KE`I6yzU-Kz4QNg$Wg3atH$*<#s&9sPTDagx>UuKR*l) z863$mbCx+Cu{KPj%SqCH+G*7=NG)^ze4t3HQ4&LdQ&HZ(2TZ|2A200;SO$QPZSCb&IW6(mbTyVviVl*^{>TgtX{t#Fr_?*?Bd|O^HL^DUsZ6z z%2t>6C2Nz*pYPB1DV^;jAKUbBo7Jv$m8%$^xE2HlbNWX;_*!z+_3`XelLNiX6Xx7% zOKyD=`?&i)yFY^@4_j8>M2EYZbV5SE&arGhqcG)^<1rSy?-h$UV!Q2vnK-XHx3SH- z-+a(P(jsHs#2@v$?=I5dO4X9&VbgkgaNAqk%c3(QniK+_P0&+TH?RF*xLVy^CfVl7 zd}Dv#hfn(?xz&;x;DoS;=Ur8M)lchhCV9#ld$g5LW+2V|~$(?dgxoJm)Z*OzRrdVrU13Uv_vE+bYEN80@0+7jP7}*36@}%yJTv^9 zVs~wuXW^83+ebddVPWwK*)r)Fjue;;Njd{h3|9JVxR7stfDuZ-1L{w`rlNq0_5^kH7?Vjtk@*x|q(A{9Ij=Uoap0L&Nsg_^Z z^JE#HQOAWj3qoX#JYS}2*tQ0_pWt!ol)wE}ta9GrZMmuQRKE_?|KI2vu$K;z#6=rg`c+7s;&e(VTcJYd} z%hKI*4OA~~x!b+6cG>H#R}Y?7Hja*t%$xG?`L?;r9P5qI%YcWy52D+z&-h~YBmT7E zzreTqUp-@}xVG&7TA4@TuO6<>>jO6#KxyJb+h?oJvitcnTsGzIuHIgFitn91x1QSC zRa|@H`1ieE3~HXRo&O9PWB?tG)%Mt8#@VzFweo=?3t_#2=a#Q_xk0|^Us8)Na`4O9ILI9Ln8fn8PTo-fG=$feEaKW|!1J(D?%HcpJ$-$_HpOS3cX}y3 zOno6CzN6?d%l>eqq5#VWGdbq;NFCU`g+I8`DE&gIM~;_Lk&r{Npq0G6&D@p;o$M*k zF7T?_9BqE}luhKpN{yNGnEknw8f`fD-}YfSzQlWv-WEwaKg<8Fhk4CwY+kW7B)?|l z>t0)F#Jp7Gg9xWk-u)*(x6Lhdl)c8@79rP+e;-5GZJ#!;w=~(lTS#ixgV#!u z`%8o+_dhc%efd)IPt81?rNx&`m%fcXec8t6X=!tF-$|8A-{zg$#N!&c;)=MD?nl#j z`~ML>&vm;}fs-Rs4&-DXchjKNm6?7xju59u#@?Gb0n?TWDFsIgt-j3Pu(xEASxI5}b-$m-lZ4#Mua>Ua`D$5i<;3E^ z`=#@`f4r=`_$(+8*uy zfAOJsnf=}Wwd$@!O*^$W=U=HhE5o0|uS}SaT(1!Pcjm>(;^XzZLmwD#-u^LKTKfLB zKQHEP2}F!vw>;muwj!va_(77N7o+E8k#(;@CI2d|HDTI6_Vu4kX|g##l@T=8aoXre zVb8904}aU~oOTj%1&>>MNZOv-bfm)OSTj5Sh6o+dFr`%QherMyhSN`j-fr=GHbKQR zV47;%VMUws&LXZ6Yr{U+@Lzr@QaNvRh`{;J0imJ|wGXW~u_ z2b%B5yyH9XUE{l0`(^U^+V@*Mr`(<KK@4JBCUw3+XN}7DnP_Os;`+!s4tP<(Q2++@YZh zS81g-E!yebRBcojU~6)G$HK#DpTk-<_6;#)+#o&p0D;ha>rw zz1=a#`M$mRH1rXYX9twC-SVL&@cf3r*+EzW&4X#}C^SwoK!u3o?1q>fg1Mf?PeJ=4{yM1tV-YL2Nkv~)!4lG}1SNO#;KJob} zhEJ!TO5B&W54m4^N$*4R9d5mIVBg1< z>%MG)LK}j2F3bFOMlxhtkIWT4FS7?L)wUE{ab8$y(^X~z{ zJjcE)=cQ6&Y(ou)ZRUXx@%>@bIUU85%C|0lYx8$kuG6>VUin{@+n-7l+SK>$;f?)U zF5LJ>Gr8rA#2ucCCcHYQZ~gXRitF)5iN41PTcZ~0fEpY&RbM#5!^1)S4N$klrlJ9Sns_Le zheVslWs%Bx$wo6l6CAIt~5G%Ar(75vb`zpF0x zy4K!yAJyG=^Va7XSzM?(^!l1Fzm4eO6alMa5{Xj3WB*paxp8&B`Ao)Lw^sc>cU`Zl zu14?v*Bh6fU(i%rB7RZqZ{%GyUXS(b&#p-|@|C%KE&0~L{g;ooos>wgI=4&EMc;qF zyitR|oe1a86E4;G{9UsDHkPTV3g;KhKh9lLtuxrUV@sU4Ma}*`F_tiH+41 zc9%I0Ix?`r=Gf1lJH1#7W!#rG9VuM%ild1kG&FH*)WOnNo_6P{VNNeqr+hf*dZQ$N zOS66ZY`Y(uRT{Pa78GWMhMxZ_J=22WP3M8x%PQCD-uZAa*!{$TL%~cQJpPZ0vbp#AIrU~Y}$LFo7*~Tecxv9ma{Kgbt1Zc+VM-*!gG)N zJpZ(9%hr$UGOOpA9E)q;+HuRn`v2uQ3c~Db-KSh}{M^%W?@oo|OIe%RCcEHS>~q~$ zDwz1M(>HS!LWp>RgUXOf1mWOF4_==&G+G@8mvg`YPU;D0dK*jlJg^k;^ zRFBIcwdX)L@+5+ryvcjx9{>6krCJ5*J72$k9klQH#|On}r&TxUI7d#C=s$krZCS+n z>mO?6H{aw*jZE4ZqvRWGQ}F?G0Q26s#~&Xb2VEEeY94`4vYE9k5VR;gbnfJnESa;E zKhFXddv&~3i5qyS(R8ugkB!ccyK7{o?VIXVT`CFOs{DasKswZ|HUYR*qTqdsm~B znP>99zkP4$_yB#H>>fki)^8un9zReHYu#`BpSR}i*Xgo$oCmh^uAjpA$ojhcvGrHw zbl!XjPM?2x&HjV^=kFae*SBY4_`!XV{o~Eg+aG+}_G60l!_7~Fi;u)}?&n}QQC|D! zO0}ARk=X>v#}SJUx3l|~|N6zw?xQf@^Z5^+XUE>}tF35Fxqf`Ro_*KTvWE2=ifisa z;eNsR!~a+SlKEBQMdoiUF@C8@K8+}Hqpo8SaEevR^X@Kt-o)rS6QHvsJaw1uD>kv!EaF1WNmE% z-_Ew;wN#+U!c|&l(u}8Go0uvI8IYAZ-tibzp<2i+T9<88_eTQWasTm1e1C@l59pK% z9newr3AfGM7K4`Vinv0WXht&^=y*pVe-n|KgU(`Ik0!?mz!t+_mXu&W9f#AKOlrxO)AX z`mY&}N_u7Q9w|Lzu{-mZdwAt5^X zm-&2qdHf#=wfye7$)y49p+n1#y^sCZ&6{QV<{saDnHc%fbIbpVHY`tTiC=BY;Lt3$ zFY%)x!-4iKOM3Go>qHnn*gjTgVA#L?==&lgh6D1~E;;5MUT=P`_q=X-?VpRU`;&Lp z{*u4+zwqtj^=kYK4DoM|Rj2NL_h0YUtNoUUd`N_NQK6>?v>-JkQ zadGhvwepqow3XQznsnA|5ak$tlMtug17ZM#9r@sEV1sj z5|6Wq?_wc$291jqvDdYxGB&vrJLdHq2sUq6{!%bynL@MJhn(Z}vo@Q2YfR^~OZm6pC$EE~ z*p7?MX9B0Za6G1K6#g=eHTFtg)x9ljFEs^zNj&wmTXuxM_Rl95j=L<2wzn3aiLfcV z^Px)Tbkk#tRp))KUz~5qa3;<8%=6+M>uy*5&;9(;_1x;@=ltf3pUggPycD)QuVg`? z$NbEiPrv#jSC`zn=5Tq(UT;3ty)Qf!Yu*%HW?RdArS5p40ccC$!YciI=)%XPJ_&d3 z9DN@y@XmM=Z1o~2#+wv4@&*38e&P6E`9tqt#fBsO>Ccw%Jd$o!Wk}d4D{+=%|3!-* zJ3=4!S7iT*F=S-evw7pk|5xn(E&YDU)Gl)>!vZ0PcU?8*pZ{jpUAi!Be|*c2cNZt` zO>Tepf4{HXgX}#V@!#&*G98${|NHNHk=hqKKmA|vjd8)%YadPHTJpKX80O8&y!L)( z2(+8vD8TZt^r@QlC+@d1ST?9RzUvlIyQh-a$ZgoYD4^-|s#Oz~Y04ZATq&P9E6G6O zz-OB`W!5^=y({LmfBszjq_Xez>ueUshMPHU;NyO~79FUt0S#FvZFHEVvg+I-jSrA@ zxuBjypvc2tzoh0pPqdo5NP`Q!DAPcyH)PWZaMzOKaDb%7i?|&prn&4?`)K0mDIb&J z?Gz;R1u4+xWko-w1t71c@Nry0K2wICvy)Uyat-V*4 zl^q&dt@Q0}*=m;SDJd6OpXdwMKL74qB5Am*Y})nL2A$9P7v`4#4Sw|^>vQa!>sQ@^ zE$zbn9%+I)?a^O;*KS?+ z@_V2NYuaW>wr0j_ueTa~fARf_>A73CD&E)_#P**vU#l7W{KM;67xq7XrhM0@$jACe z^@AB(C#pMc{d#(3HskyBy9Eo+8~(NWb!YKsjn3t(w5C3~{Qi6Btr@wuLHlFB|JFDy zlp3kEIW&6y$GS=TOIv?;VRR-R)vtHkaVKJjgvpPeKl4kL75|BQo~d>0xp|+FdcmW+ z!IKY#Tg^0TWH>NCx}IacZ9R8<;&X-uq1weCADLO~mHj0C=l^c`UH@l)Sh?C?qQ8Bw z?!M9=CUc+KN7PEZ&v|3LbDjdn_xX4ECiFgsB&(L|thMPy5AzH-HR416&(kWq(z;w_ zgUaIr2?h>ap{{qIv1imm1zDvgEg_ustP_)MDdnlNph>E11g zD}?MdBoBYD&DkEUBgUQjXTh)6yN(rD9I3H8UbXjF(#8W7HesnNVh=wQnD>042AAr$ zWz~AW8Z`E0bXUorB1*c4JUz_gS zR9VLxt5Vw|_(a0-kM9Lv<~ti)izhsj6+boEvc=_5%7X26V~x#`mrYK5j#y_IkX0{$an-_cC{!5+hRh~ubx3>E@{MzbMyz}gz!;`gM z6kore8p|g8_wU(<*DX@SF5b?c_5FC<^z*4&*+$RbmRXzj=iY96Y;ogl*(sKw>tF9# z?^>nx_1~*mY@4SvuzL?eB)Z z)c&yJCqHa0z?&FJE1#CV&&yMPeS7Nu!8|RWnPK0*Rd+Lrg6*tUd{`a*|J>`RGS&af z4=%s&Ez8)jU!;z6eq7C));NEGmfwdj&sEExSEm9k8OzW5mM^NGTOs@Yph}lb>h=%e ztm5_W%B&-%wJLA~go;j5X?(p)Yol^s@{fJ};N_8_i`w7+Uh!J$`t|D^hXo+FVN9Ps z9W>B!Hcg|8Y4ugm9RWPfEZ_+-i@t}I_u{lpq!=AMdX)9rYtw0`Rof0PT&3KX{G_t) zV+GIg!T=Fgv2NCw>!G{*gJ&^xChWX;NadL7M2%kUxOtcCJPiEYgzeZWwb*CcotSbk z*!;zi&We5Hkx zW&im+Tv;{u&&(npHRZZ}d0v^- z@-k7=Z}n*Xv3prwHT`16!p}b~?&O$hbTKhpsVI|S2hH)=X71Z2>0|Nh`*EpumWQRT zXv=9nuzk9(!v8_OZ{7oc-t|$w3a0b^$=|l0H1F|y(ZuZ7*>^wxXaB+Pdp~gh{~K?% zf6zVMe{a)K|HxeS8Q;u*WSJjaf9g!;3dAD)(VR#+c6zva$-#lF4&cR%|5sQt(0 z$H!-UG5^u`P_)j%w*KLD5tfHv-C+(m^!nIrg_i2O?-%B7|1jNkxqYK7w%*=rB)-{^JF);)ODcb-a7rl;_Ny zs|Y?y&_@k)mG0CR7eOn@o!4J?7IFPx!=EUzXq6Utxu*aN z(D|^?r9$o});KHW#cj)!N{L)n_TqU{zLqnm+VY;s;k}+W{wS?0y#6`FoGswDzhT3S zvZv;M{ZhYf^lB5mt*kt~>B=piGiJaOrPB1OIObCIeYv|rueSP zrt`|d(LQYYlN+7w{rAt`R=O^CpX@8?%ir%jVX~Rc|0U063)`z@Znbw_|9|z~?$_Me zij_jX(^5};cv3mf$TsNzjCqZDOANO@Ed9SbP~esT+Vb2zjepL&cGz3)ak_E)QTn;M z%Ms6tdz*`wAADbC^yjT`kH~$Yn8R;#C%*mlp*p&zBH;1rHzNCk`19|+i`Q|gN#1be zdR6wHgrbX4@6Pw=8NST_@I62A-j0`l@3+i9yZpz}qMrI&6+brK%zxPbL;FvS;3ID7 z=dE$!0xj3)pDpA5Twf**tpvl**9tb=FOO^e@nM#v{K#Ix@8q0crsX3{!h+*2P+T&5}3&Dx}JAjQZrPz183YsT3$ zjnhKiN1ar=E9Nafqn;@7=wLH@#QN(II%42zRl@gj!rr*W>#}=}Cqq_}?OJzr?}Up^ z_Z#P`vwpb3BeduhQ=E`N@nv?-mzmG2R!x`o`r-F{*Tk0Z=8};Wk^7YG{EZfT+VZ;o zvdJli!>*U7usNJmn6l=;@8=U58~PV-E9SenHM{1vsqa(&na<0scDr1R&3(J8F1r5X z++Ut^e2!QCm#@~}^SAw0n$WS?edfN*#|!iJ_`P`ae%-gNbI&gn5s+G)@<&0LU2?k4 z>88|3FN1Tukui7tR?6qD%hXjLp|}?^^f$+A6)nj<-KQNt3!~zb$uhrqt9JBMF`dyViLbK5}EpVxJkaIC3H|eB`N%FOSsEwa# zbjYA3_jbo3j@4H|hbV2n$x|o;+8}uOrHHt=c*J_pwiwVXt#SnyhidnlFzp^U-r9Q0p?3BAJ?CF9EfaCwcwJ8Kfhp%@-^V9ZVwTnW3vPP7U*6d7YqtC% z?>#j>wz-c|gROmzmppDf$#S7I_VV62MSS+(B@BP~T0E=co4bCt#*T>jL7EwHpIZ2T z%?on)QDbQ`kALfO-oKXeQj=q1@`bL*XDN$sU=H}}P&%ozY5Uw)kJ4D8=4bp}^!dae zr|eUj$Hex^{5>5!eaDY^>*wD&bL?#K9go24U++~NzkT5K<@sCpt-JVLE&1@u?y?Q#0Rv{OrTlZ^q2={_?gG<$r53WG?(s-7HrB{$<;V zyLsEwuRY3)&3z`h_ia5}oL!&stFq>j z-n`%c#GmiyW7zI@(W2!4{4LynzNgPW?7#W_zI4zCMS1VM1MlDdZ|BzfULWrGy!3xm zRpZy{WfT4{R9)(dn1g=T6zsZZm&DhI!cVcv&w9lV$J+QCRr9bhvp6=qE$g=EONH69-;_+b+I?b9cr-FNx;G=u19QxTZ&{`5?pL zhXR*hiX=)LDvixClYUa!_qD25qicc+=c-js;BC?z;IpI_U*z~(Cm$NB2)g;ZMd$Q} zn>iuXFZWe=G5oho>tQsQSNvwj)HrmnnDE`+%9ZFI+p9d}}@T>6eugA{*z)o{cneWei}`uyQwN zozr#C{LUJOV_LiXW_xzno9ErSaF#3ftqc#_hTQ12&imfKU+W%IaK66cmEhg>+}l~b zkM_^Lb<^zGt)74{)?bC!$NR@GFk+a}*=KKT_rGj+dZzjoz1hF!*=yh9n{|GdVqd-g z`6;t=`WnC6N{aYosxI3$vxoCf<<{8KSKja8tF4=TMzTt_{hCzXnhV!GFMs{|Y1voT z`Nn@DKkvKJJ8hX|`I#A4{_m>|t$)pRC|1E!0Wuy3B|orzzWkG?UMb?h>zV)g->l#L z%V?^Ylcw05ax=4k`;Rd*)D#!+ez$#m`1>*b(3$!1bu6GBsl42kA6n{%*Bb~QiSF(8 zk5H|v`DVuOApd#rACIbgH=pgFdG>?#8kzmKPl9I3dr~*W%HQAf$0ObLc)^Q*jp@hu z8GfYqcK_eZ^`UwWkG=i>-sh*5?Y8?@^W|Xk^}k;pCI5KyGuq;H{)gPd+J9a&+96hY zw%oq3?eq`Br|(xYy7Z|0zH_x$MKFI_s+W$prabs=%qyk67JUzQ>7{L!{A6=HX=B6l zN(sL94Y|^h(-ixXOLaVjQX<<|wLrVIJFET|6f^wqyJlR~R%844naJH6S6_df z7w!BtyGSFm>A|w@+dZO}zwW-aW!=})Ci8DSTd>mpYn}O5)0y!N>1;~#wm7B!{26;p zEH3VU^`!mbKmR;^9|~SExAAV?#APq%eRMaUa>4kCy^U+zc7OTnO&`?Yvz5@Ywc_wk z=j-v;vI-a){9|jG>dXE}?7!c8b)#&<{%J7}#Jf7Jz8!B?Wq4qHUA}HzpS+*m2ie8m zf1ZBm{&D51`jwCGBmSEGDNoi$=XpgT;`|1-Zh{yFW}wcns_jgKM2hsif3>$I$`f9<-z?+?en zV{dY6ZpC*Z?OEL+%*VOZ_xKKn0CAhovMXN}UoU;v6x>>QoFgN?yiYLf{|Tb@`>p^XJby9!s2lDeW~TEa3(ycthDp##wy%bX=L~UM#dMX#d4?k9TFv?C$?*V|Z3{-)o!q?p|yUAB7v$MoeS9y)E<= z6{LFYp}F;f@4d3y!gFY#~%9fDCRzYr6xIfM~r^)3f^5O;_RPK*_eN; zcVDi0-Q3&f9&RgrqxQ9Is{K-Xj}-s&Ek0uAJO3H7O$tG#j*j`# z7GJVoU)bt-!~gh?84C;#oaLD!ljv3Z;CrT2^d4WUzm_mZ@Kr%O|gov@9_$&lQk>*b@L*Y6mlf!pIx;|%k|>t+-t}7V&97RxG(qPn?5W;ZzaK)YPNBKY2>fC*N#j0-I zj0ewWB({8huV+`aqmj*Sf8ht-?ta}TJPq~#v-nbDxMo|<~#sZ zn#aI5DOS7nZ_;`Ad!JF6&h*oJLnfH`CPspGJ0=)7%vz>#T4>&LMIPrTm3@mez8y1^ zR4;KXoBfix;+~0XYUSRTKRH5=ii+8`HlLcjVt1yLisz>7yY0oVU*h|xa^~#k8vVD; z?>dic3TgM$S>3(-WXUDfvVAWtj5r%Bt@++wxTm^r-|Md@x5#a~m{w!ZIm!1a-%ORh zhwIMBvxxiO-y(O{;9}~fjOz0rzE9Cy>1b{#V>IQ(_hh5e58vn6J^#5g2VG`Q_lzzgEk>|JVH7C~f$q_-pCp?aMP~*?yjwr?Bvo z&EHnL;QANOL~GAJeC%bOID^M<+4=T&@&E5$sgKQexjkor-POx^6-uI0FV9~ecRz1? zuv+i7=g#%|pRVu*&tAFr%bpVpUhL8{o84>Fb!qdd&o%F5J#);YQzDnW>r_t)Eb_Q) zqH%iD)ftQKYybbfV{QD?_nr^!l(6hfZV5k;wz)Nxmk++}h`EH5pHYKxzMhjgr%Gwz zo7WnB)v>*rR%(ThYFk}qxCSn`{`%ne+8#IMC7G*wWWd9tUw+r}v^%Fh*^n!J_@ThI zTxCz8DXEXO7un$S7;oUeJ(!iIwZL)QGiVr*fP; zl{05)9rm2}++&i<(xxk=y}Q<3?R#M&zGKIX{>sUnPX6Z?Y}%H)I`$NMbE8pB!AGO1 zPuT>$*cWc9ocF$SZ}na|nd5-{ZmcXWvh>Zk?98^7o?H2PY>K zo?s};$h~lV=DJU6g`YHKl6PI`W&V|Z+0xuJX;07AlPVI=@1*U$nPawgS!=STO2zg4 z*}@0PB~y3Yh~M9~(%vVHzqaSo{jcAbc{}&vdpSkz_qbrq{w(Z*{ImstYk*~h3>Q{Sa-9^h^5zmh|re|6&`}T5~l$8GM zw_$%}9o`$>|2|c)bKd5YEiPYgY+HNmUEX(-r&{NWr=;!-@4Mh@$YLHfYo4n4S&l=s z&afdWNT!C6>nEHo&QE=$T&N5dEvvO7u3q?V|h)FUozokYi{)VdSVmLyyuBF za*IK8c8s^TJ*ekl<*K4PMLmwETC^`&>4`v-MP<^p_%)M`beU{wm&Y zpXR<0ijuFMV{uhvA$M24*YpQ}W)zt}o$}9O*`JMHKkUj2R=1yC_UZkq&)fc9FRi=% zcS~)aamAL{?*X?f>$gbS`@DVd{NvU`DJB=}i!bigoAA7i#VE(rck}i<%f7`&{>R*i z6JcGo%IKT$*5+#(^JX0IRl3tteB#H|w11W<6+2E!mAtV2w>Q(La4}!Lu=&0VQg=$v z&OXzce0`@`vw(l&MPBVMd-H-W`I`T!m|fU*?xm5<#X_U}H=u#&rT5%JLlfYr8-_s+RB$j`xtBdCTrc z%j%=c-d_5<>!O-kt?2iJTfDR7?cF~7U3B}85|4UlXyWFZ2R_?W%!3}1^V<$`Gwi(Q zS>o?)&Ig8yHYqfuMtWQp*_I1B(~FH6yf4&Hu0Qd%*&_>3qcS#JwMu8Y_f#gK&dB#&NnC|qL(^vda`#$4bAN49LPV){E-{ws^`Kb}R*52&o zZtT}Qz5aCn+)I3aV=kBWnNF9ve9if(PwBmDE{pmz|5`1J{aRXRX3jFhp!3hqpH;he zw>;f-aOLZ&-17}A_kYcKm-T(&wrvY%2b^#@&?~ZM?;W3G!sZR>o_u#WoHE^1*2wd) zfzJ?M@iQ893{C5-!wgqu9qwf=(f=~@8kd#ZYw6g@w-$WwwyWzid|M(ZoVPpg&Jw;X z;jeq|nK8Vwu992!)ycjrBUkCio^0vYHE(A5@b8iNKV3R<#eCm3exvjcosMI64pVEygTP|e5evd`62_sQ|HHSgW&bU$+1(r0X{vo6$L;`dkM zY&uX;-}GS@wo)7t=PZsD^2PBy3J1DxPyDA=aBz`lz+W||wAQy}-6p;dD?yis1&Vk~ zVsR8mFq^H|rSzl{bn{-NT-TxlSzDbX+Ft#BTGR=-LEKev-TL*0a{Zv2EkOr1hCiFM zEOQEI)&G=K&`v<`=@T-?12q*(dTq{6gck5@3|kjlh@UTVX5mcnoZ`*K^&nEoJ@)!} z&WuuJ_J+M*_>86p)T*3$+LUi}xu9|VJTs@SAMReRj67cW?UG{#dznyUaiY%p+3)&U zo_+bb>`v>?7u(z>Ilr|i+gG&kqwhI;(Ym$HO}}PeS$n;-C-Im{%=PPg%mS_Tm(Od3^Kd|}h6_fp6uZaEn zdt*Pl&*K@=e|Nm>ntwQ0|3!6`_{-u6=Z)v_9QL)^Q@2a~?w^Iy#XfBMd)Mt+ceT2= zXW_p0%6*UbT7CVUw|f6+0q4il?^S;JXJpI$Yaz?rWtrdZEnW7S`%tX|wz3&gLN_UJ zY(Ju+P&4(|1aZYRs(~Bd|Mu$0i4<#6aEJvB>z2kQgG=R<$hKvmr9#_o>prq*du+jR zSRgc1u`fCGl0ve3xEJbOTUr%+{jPEC1jlCX z{GWYq_MBh2XJ7QL+}l~pKiBPF@3LWv$N|>}(^6M{y25tr>3x+Q^|CED%Ud($?xn@u zE4^PJxaFiq;q~j8!eOtUzW8n?+)?Laf9`$rdCtiP?xmc`$X@+&-;S4uP3lUEr)RE{ z+cj;apRCsvgRP$CrHsElRZ{|(8#d`&z4dgLUd;8-;u&>aiyY=X-?3*;NK^G>%l7r5 ze}4UuEc|H0`S|3Gi)joOUwSRGxUzqJ(bw$X_OMkzQn*U-) zp3KYdzgNB8RoQvn-~P+F+SoJhO$E{D8+zbT*rdSmKDh60?BCL7p;EfLT)Nj6g})U4 zs*{=iQN;LoOS{)xONl(EuaS9 zM6MaAFTUvW+;8TydxfSHJ!a<&+qq+Q%eoj3zpo$ee%+a{L!;|?%Nm>979Q1j>*cP>dG95oJyyJ_ycc(iU9xn?gXsEwu};6HAB}x~rfzoC51D*pyOO!pXKp3j z+W1fJ_rD1{qVm`8TNX8K>-3<*?@y=5U3%a8AbH~X_0G>4oag(VKbo>e@niY^`{A6< zDJ_@I+n4%YXZ`sr-L|rQpYmk!*#2vvn`ka(ED`EIwW;NK<%Znq^|j3h8GJ775`_wh|1qF;eTj?QGkq*?#0hf)NF-gvsdNa zc=^iu@~j(aArEsOb_Ug~`S@{VKV$I!35^@BS5MpFcueG;+=H1no1cmIIvZ(!vRrw6 z@pj*OGm~RJoY8xDLzb<}4hh{_t{W#me|1xVJbK3qG{<~MJ8e7jll_*^JrmoP`g*L8 z&llb!tL;&9w<3^f-|emk{BP&|TXgHM()?)f_Wc)Mt2DZpw&foFY-8fvtm65gQtlAw zuCIvo*EyOPF25AXoTYUBv+c*PNgEFoSRA=|Q*x8e;jFDq&nrPwHC;@vze??UzxsTk zjB=M!kDGERXyHPI&9NLa&~6(Yu~)My=PCOJUn%W9nbKsyGnKLRMvhtaG5*O94{g#> z)ll8IUhl`#Hh!V9;L3U54!(Yxl)NfjoZ~YKztGN4Tln{NTXF7PsdF`Y+ESr^+c>BG zG~K<=dQ0-(*uu-%7k-sa-uCJk`{ab(*}eudg?-qzZp$v=d~ti-^5tAxuGZ%4&2=iy zdt>qJ&$hy4+{bRSJl`eRD!=%r>;G4|SAWlb|LeT#tJKItrLj{bLPU<jL%P!}7Pc1Pw9xLmerMy47fv}~&jC6o`E6PECY``(Pm8ZV zYcpv&BfsbUj+-sr?^f#W;yju1&p!|eY{l`TeolDw-5gwm%jQuceYxIa@W5RVm_hokLNrS`3ttIFFsL(roDdX9N`NtP-oe}RY z@D9dJjHJbTG z(pu(t<710cK94HpmR;8DS`=XYyx&dv#n`xMgzo-ntKJm)XBA*4yzclktml?t&D7ICJxr1&K!f>K9oLw7-x#zWhpYu+P`> zvn$tqyAyKZwCjmwziwX(kM*fNVdC^$=2qi=Z;$oU_pW~Ke12D^6c1aoZE<6r?PPPF33Fof2r`Ft^NM9DTn$~BbW7LItpkMPfd-iE}d~E@lV{!`V$>Th1++$ zn8)(_&yL*NpmqH}1FD$(Gafvx%woE$pD(`FQ!SZ6{Qu{cezVK$g_AcP{q6JruFA3Z zM(%swd|!3)%%R`C-}T?udu1|i*dF#;ZPB{dvwC8ttVxWT{pI7$G_FkR>Hodoe*IVf z?VOFzq(x``-(PiV^QKk5W;i;q27XNV+qr0shFnFH(u=M|N{f^pF)oUcYhdTl=;&Ic zz_g3&(Z&~DyI(Qwezj}2+?!pmyOg@bcf=W-D+vz`dm0(K-+q?)v$ZeItXaG}eOdeW z&o+Nc!ctR?%$_JXk@@f6W3Mef*!cGfUN#9_8)hh>lRCF+QN{@#r{YTnJX6=U-CN%4 z#vCYe@Oy3Qt|zZOr_J=*ul`TEq3V60n9QkX!CTl~7I$nve}8+^hI{DK(j1^IUuACa zHiW?}or|Bpsd=y1VJz+Fks{Tm$aA{m=Iq&p zmtQWp{BlL?;p)BfPB9r78#CYkzH!3_hV!38zVV&z`}9SfHPtvs-4jpAp{RB6S)ym=L6TYY4*Gb>JYZ9H*i;rZ=r(x;W?#RQfG&Urjf z`udTLLR~ChE;}W68$IlivW|Q_S&}d`6AW){NO!4jw$7})f zx(O2dPjoEVJn859e&*V}myRF%RyX|>n@p3BWD48G`X9e!j(?1Jt+#)g(T)o<9xmG# zSi4wy#*e)sca<4-tm_V1+2Xgn*=uRj&YhNTHXfIoF?TL2L+Un;CeS?qXVZl5=7rA` zd1?CwG|&}x{lad|*L7bbHl6w)pYXbRdVlTR8!N9LetkY#UsbqcgB;dcrEJ;t_lIR- zeFPu{$+bDM2O}mP-`10RYumQ%8KrAAr+OLq3QzT7^_--@0(2`%+3r&s zmtKFJ^6_wK?2T=__rD9WGzz&+j@T8q{%~pRkA3|bT@NbdWR6Q3wNIGYa;rdwJ#*Hf z@3j(bjORa3VVHeJaa%6`OjQPrMBUDPFRk@9T|2tma}tlF@e6a#13Q1rYFWAG|Bjh0 z-L)sr95hzE@a|JcAIm|J=De_nhN*A0_DiL_owR>e%GLSm$Ml6PU$@O(WAy9$>x*stm{&oLI!zW+c^R6wp|Le!o^KIvy6Ham@&001~ zc#n+!>gz|}H$SuHypwx7EPI;Wz8BV~#GKgp_W2ztTyt$+-1>GC-}XmJ#p0>n4{Dv& zcJJwtvAN61nzvu4c`cInz9eC&n))QpHi6+ zviFzq{IVReUR9&)4>xw*)jRcclhHKSz$MRA&WhUI@4B`8{Rx4vl_AqOpYL2S-{o=5 zUXMvEZ_BDrgdBVL@krsGGbYD=&t9i4EFl?JlFZoo#(SyIB@@}G<`sUmu~M$rc08yx zSS44RdqP_Lv6SAY9&K&e|B*dLT`xa=T%!;=;@up1&+4{`TNQ48;>q60I|8-!lRc(o1_)fkdaMgHAGge%k$Gg|ceUVV1G~R< z@=uE-6D5>9g)I7*4;u)uFkUig&Aq)ML@Q(a?F~BISF=Jn7wevGdS2P_SfabTyFiBh zYn3dx(f{RlZRy_kzqOj%GiPONzumFOV`~1^s8cUC7Cv^{5~T}1^DSWYRe|G%HTT2k zPgZeUep&L=Cdd7r30|LDc*JG$gdV1FdY$}okoA!Y$FesJF>6+*vo5SUY#?*%Xsq~- zbuM3Q&X!g()$a9~#!wTr>0M#W<(qhgxkWs}gh2A$9B=4BsznD2xbOYnrGP2BT?y}9v}6N5vlx2gX3ch9?+BGlC*x%kxQ^RCbO3tv4?n`xtbBI^I_ z)G39X=O?Z)iY#_C|NP?VWs}%%JfF@e@4DG^ef@X;K>15E7FN0@PcVA-rOKAY(ZIw{ zdn(r>3%A{O50wWU(t?ZSxj=bL!=mSrk+DX};*94`cgH49^tLVzUbGQ8!N8=qGi z_zKVUW1s8CzBP(>Tkhh!d5f>VKKR)t=f(!c=xsTU%P%)Rw$M6#;?W}|sa`g-ygMCf zn>&vlJ-Sdw@sIJ<`6`@QTcvmoJ8ZulT6*T}S;fA`3uAx%%zGL$XYFh|4~J8(EBE+& z==itst+MubpBF)f@ZTr*v&;}xGtyFUU>cNd6?FcbGJI{R7;;r@`YtxI+5-D z{=KI!_n%p7V*jhJ%y*AaKXzAket%^h|1Z9OGO>T`&KaLQ^~*u6)5Q1U%aVYVAr~@C z7#Q}wU;SwcYln}#jauH46VmZE+RRf|hiG|BO3^sXB-?-L*MZ-y*O-1SEOj|Q&mq$G zOOE`mo6Ro2BX4R{?4InfY+2#6`#YBP+kCXopKSL!GI*1Z@a@TKO7+gW95(hSROXnN z+IH!8v%NkL=V_8CDpHhNBCSsKLI_jpB* z=(5a1pKVk;n+$j+F4NRGeJH`8;r;Ioxzb;&WE}+-+|4^&C}SeUTe3UWWVY{)b=^OI zR<h&al;qX=!d-9cOx6GI8B} zvn6wu#`M!!(~E1_i}ZG}Z8#&d=)Im_B#Xrq*OqmQjjot+#=Wc&V95$E?o#%a@jb46 z_u_o+f}Ilc&aJ(6Cw}b@_qY4ztFq`D6{Ngvm>>S!;?WyVUz5pQ&$o-ZzAZ8=yHXU$qB)LZN< zY2KI;cxC@oFV<z7P8r?>l$u-@()3Yn%7*)%spNE^eEi zx8=e4{@IgG>~VS@FZI1Gk!R-26}(0n7Jbae3#WW6F^D*|!qu>#IA~=^&@!EW`($~h zZTj}%jjGB0iXQ8xkA4Db=qr1{r`}jIR6b$@_n}xEBYewRWH&EY_2$_r_n+5R>)X^n z+YfH5*!HwYvQS33FS%k~d)C&jyzSj4zJcqn2d)fx@Y`;YMo`je1&%8}RXi``ZJ(&Z zx$5ewQ$j+=4PSk=;yLWF`l{3R+pVdQ8*-&RCoQ;{vnXtJVqTtKD(lLtSu^I&bzObc z34AY%7MoGT2OpI}8SRZ)o$fmg<{VkE>&N`}*Vc1SJ^5qd^rtr+SG-g4Y&-RO(a*r9 zin)Q$m}6snHx@GfTv2vhH9I#lbMNFBd*9oYhjOi!pFbK{Jng&VMH{)TeBv|Z!!|wZ zH407n%9wiogjVpC=ao-4{c8W!Je#+RN3~_&Yy0yaLM)70Q@c(n9XJ~qDOvvGtLtAU zHUqow-H)DrKV1KMrmM#ezrP30YOBn7{;W|+(Z2J|PRpeydM3JGtNmzqQu^?(&w8`i ze@PwlWr$36&7VKJzD(rHMqk5MlFK^+U;ofh=GdEk;)zFT+S&7a4Eb_Q?OvVN&i8vI zxo*=jRddfm>5WIqN-bUU$^JPx+xS)yv~@ zNb2oN?_2jTe{6BChOKGCVkK--kg^SN>-i6_=+T31v$MQ2yXWZZzjob^;?GuJF8>h6 z8(6n9rtS5v7hkJ5ni!U4E{a>P%;WrHAOB^Oiy0;pR5*9t)#Ewb@Osy&6N!;xY3b>L zZ3|D`Ff=x9*67->V+Y6WZHD&t{R$ix-j+>`OfitqSbY4<8J}jsgNSR!)~Hufw+_zlUg??O`<*@K?$bFgt4s8>tvNUgR@%IO9=CpZ%kn+{rrJHW zaon)ad-pxD&eJdBz8FpJ>HnIeAw69u*yY-~AAfBA&vn1}Qz!9Hmf^`AkCQDoc?18*q^fo-%FuA;?>w?I@l2r%i{pgMf|JGv zCMdQ(Q#^ar#5c5!BVo0sOMLdHU&^cHU;g_N@#PJlYw3r&xheZz*G@`RcyP>Qugt;g zaayaTzr3(ndp7dfJkN;ko$kjJ|J~UsXmHwPS@4(l)^}MZn}&V)_4$}j*lwG1N}mJ8 z?ku?Y{`*xK10LqgS*v=io)$@7%@XZ+Tn{~z0 zI*U2r&?y6+i|@Y&t_`~gxe@#I*MPNQpvF`rfZTnl&?3 zE!X(`6~j!O%GA%lD(|deSe+_&YPJ3A-Er&LFPpeuTigHLX5$XMf9JJUr;AD~zrTW~ z^PpyN|3BOP(`Iiz_0-7ca?4{2(Cvb?@kbq&@#wXv8%wWEzq4jxddP+A+;wMq6-xF; zrnT98b_<&y;MSq^aR0t@slAS;b~qUJWEY)kn*Hq4yTSa@d3vPrv9aKKN`UWLaqiZ|VJj4bZ{HRJkR({#1g_`}BcF6>v% zI5*LfCF0aE!M24)IiJcU`g?g|MAXmM96m0c%Ce{;qwZov%=-V+L|CxSJy^3u?v{iO zWgb#_zmZJ8i=;Tz#iMs(Y<&OcTAr&8Cv=x$Is1*g~#q`p2CM zq!;;Ic3BxBWpw3(#U+!_XMX>j)kNy}tzYlAZk;P_h~*$*&7)%R+1CJzx3BX0?X^%Zswz&XJB{Vq#Mwk9@B+neBV! zb*YII?^M?%QEL}Ptv$3Yck6Boaf#2dKPuyk9uLdzJ09!t$^2YwP6QBW(Gq+FBP`b@M1Z-V%T1c;xeAqSnukMowAi@c)eK zzZ99vuN4D#-1EC9qrIzt%|{2On!33C`m_8~To!z)GUMvf^bJWc*E{FX@%7ehuHq@FRbsqZ@Kq9l1*kWf2Dl!i#W}1i{40wn4dQYTp2Ru zW#f0=-r9TH=CvyE+bwfDJA2R11Fxf2*YjVDSW<1y<2+MX!#ix&vQsKkM6a(f&A#%t zKX~4EWqIpJwyiqNv;XZ|`18W+uL+UYCVX5Rv{Io<$tAEw#WO@rH{piI((SIv=M8u& z<}E)}WGp&$>9!2M%R3f-Te<9y~d*Lxf@si-`lt- z-KMw0{`Ky<{r!H+nNM$eV8J&@rSbjm6=ADaTz~zcR=&Ht`-2UCubXo!Xnub4=FJ(~ zZ-1zjpO&f_%rM(1T5*tqw3*T&uV@t(M1`o7D(8jsU{KX7`bBe+lR z+VkgXd);GQtk3m*i@cx8*;Og+I{&zBc!*j)`(GuunX#WvJw1Ci^VZyNb)R3!ZqMI5 zukzZA(?T0QfAo3QP?$91*o7&f^JcHi$h~~@c?!$oH;joAi|)TaTzXeg&{Fnu4)d?Q z1;H#cZ9#qi>0V2Pcn(V#t$*^>@nZR|3Gwfl|K6*VPg%>l$Nt0#qf<+qb6?p1it_q< z)VTFU>ZfDOU)7JE>t(SP+Oz)GU%N*ZZZgN6+XRfv)jSuS=~~<)HmC6a-s$GcepKGA zFnU*WxmWaQk>s+>L#441)0Q496JY6h95K^=#oxg12ky65ehm1NvgzV+bMppJk+h$r*yNn_$=Cy;nUJoqz($dpI z+4z6md07&2jsJLITaPMun0Vpkmj|}xo;hqm z`87j(`spm+M~0$j-!7^?Ep<7v*0XlP*SiS@0Uw{w++8x+L2OIjMT-ZuhhCqr;(L6~ zecoNg_43D3*Z!BCVj6c+VA3*8t*Kl(r=6AtHRj&VdUJt)t*)z^>D>q6BJF4L6;O$rVYZCb{D*R0MR*Y0(; z*d_ILotVnKt+~?ko@*Af&$Mq+Xn6m7#r4-4bhzJ^fqD^f>kk*o=;-Mwbt#=Wb7n!* z+N8up#=Cjq+j2oC$?+^)qtM;m4eCoTX21G;*Sb?55^tO7oOW7&{qUnlN-@`uo;ky_ z>+U+ErYl*dJJzi}vOK28=NbPl_kF@v`^)bwU;WW$r$X%d$=pjn_ei*Y{8;@k_rn>6 zT{~U&oAv8F{Ieo^nWFcH`QpykcIq^Kv0!?U`7U{iX6jnkm)SeFJ?Z?q*~p~eGrM@B zbX%iE-_%Mc@frO_vp#(EzMtM3?>FzK%InC<0WtsM=6km#9@v)qrE2fOuX&G;^{%*@ zBz_3 z#~!S(I(f!L(l-aR(KyRy^3P_U88z=do3Bpc6~m#Hf*-aI-Vwm z%vq~+6cQy?-QE8C?>?irE3Zpk0$YwAb*-4!{_|($kA3~R(c2cptzW%HAyHz{_1Bup z?wfD6yxuiq?p#@;q7T1fuDh-cb6y(cD05uvvd7jaR}oiGEDN7}^hinPwA0EECz<06 zpPnDw@#wM6Czj2XN#TC8mhCJRpK15$(PO5lUGrErS8nuAZacAS{naxL#+@r>9yeSm zF{^u(dT#Np*I`NbB6_orSGuX}diH{;M5r-bOH`tb@v_O)Uk=|hXFc20BjEaxm#ul> zuN^BJySIOSby~VPWLnF!lG<6zP8+2cEVMG0iI~=!wUvwEMcM8jkLCY!oZd9WvG>Ar z6LY%)MH|jrE9aLsAK6jtDIdJ6via8(`}(_Qk|mB^usUcQaAE7>f4qjLwoLsRr?u<2 z=QFQ~oI2WVQ_mdMQ4Wc#emrmS8wJlv8p*CJw@m3gX5zafbJa1$dcH4p&u;3KB%fdL zM&V9|YpKu`wfFk7zAwu>R49{r&f{{3r2Qln#to%Fl&npz*t9}+-ct5th@&3z4 z-|pXO^j`mu$t?HYq{x4f{&oVp-)>4=we8xko%U}Ws~={v+wo1W|MvdazGsI2^W|l} z{&6n+f4AKEYU#$xM8^NW{{BC7HU3|FX!q-{$M>-G-+v!?!@#`zXc+hZ>esnD-n`OR z;yAqVwZ*%o`bUK2K5M+$lqh#s;lTQLKVkHRYzAApAl?d{kU-6U7x*e z<}#myY(72Ycij8zp?V@2ii_~n%Jsvf~&%?sk>45^rgI#*BzFO7XcNcNh z(q@;me)ZML=d#Q0yKXYaGfbp99!tC}i|$;Od)saGRVM+K4Y|_WaZP-Oo>3 za6Mjc`a_F8qc<*rEgD^FW-~>O9zXi%@|CIK|Fm70^qiBzbaDO4 z5Uo>79FteY=xIL=+<)I)qAly)#1B<-wym7!wUp_4Y2eC`wwCuT4{j^M)&i)o`Ck_C zoYb>*^8UQAOV7DeIWL`6-X+=8@-D@v5OkrzqRTHItlRz0X=O;$^U4epDX%r_(xn&h zu-folHfi_K+r{YeKlaM>n%afg75}GtsV>P}HBb91^VH@4R5N%LH=nXNUohvZihi)$ zwenp%wcr0!H#{S9)J(5t@7335jjujUwO{!D#czu~!Q&qT$^@>LhMI93y}t0{k)-~P zhv`9wnfvumKM7wM62hi$)#GUk}!r zIzi>+1*?gv8z$8YbH4_4sbMVyP$Tb<--(y&t;1yhzdv8sIRDR|Z*L`fKkRU~7ka+; zsju^W%Wb{ApNlOD{{Izd5u8_lM|yf}`3Xn=Bl~{al&mtleu|~&o2L4M1Ao6WGyHjE zUfxrBw)xu~=IQ(2$DZD||Npz)51+cr^i7v9wAlA`@9e^ZOT&F-uP=SRmzlrv0dw2F z+og}$WQs0KE;!-nf5>Tb>-0GVQHiqQF%@RtcK!d`wy#)LTKZX9;eoo}Nd^)RIXSnAtx9hJei{JC6dB*Hap4#&Ncgqj2?)xLX=hcb*2TSAk3x?Od z^Ik1>pPRpST35b-#DfXb_m{oN{#na-;Gny_ec^BMxusTnUR{$Fsjoc#zAQ`FWBvX1 zoqL<1^Cx9eYIkQwMMQV8EYDVyd7gCPYSWQrD!-n&bP{xz;pGdiSNb@8yege zH_n_X`D0&yYisL59R*N7^lH|tVgVMdZih)K8D_IT*!a)Q-x~G7hTquO_(h3ThS}^D zVXL(syDz`&xc`25BuA5igNW;ju+!rQ7Nqk9d*zU@WuQrNKl{CL6 z%W8WLw8`PxCZo2*1EsMywyo`v-y6rDD6wjz=<$t4@-JqZyKOzsE7|vW#ru;T7hZpz zQmE|Du7~KVclLMO`gR45DTR|a<)zpz_ME?c-pMW>8I$KL`75?bRUHqU|KaDE zOSSm@-fu@zpYJbz zv3vfXKV>D&0>9sVHrUa}%TV#Fkv-w@ojW0aYwkW3PhJ)mJiq?`a{I^U?Ei3nziF_( zN3qzL_fElC^$%~7t+g00h9JnOkv9IW< zs>K)4_3l>3-Zecgy5@P)FtzZo>3oSQzWsmR&b_fEm9hWd>h^`N^dwdLYThZ{D1FQ} zr~IUPnCiak``&nz#%N7Vn5p)tY3`k_8M8AJ7T%ooLMo48r@2CX33PMyHKw2C&-%`L zZIbC(B_8pYha*LyAXa?db43oOBZWNIOGBsiE$ezW=>JhkI+3ucZHvz87=-*aJmYnpw>S-6XC9npV{M%+WcgwDFbK z@8-TzXEyN{Vw_ht&#S+;`SJC%nch1V%-&=&L1Nmb%`YAm@148m-^^v}yIRivvh6o^ zTP}Irwa`CHOEUEM3d607*B`A+o3@6Boh9}6gQRSsgxA-5X1BV(Uk;vH@wpsQ>!UV# z&5sp)cTOMVdg??7qt;vRV8QrxpdSzG@)BBj73+wRT#R{^oc6 z+mB!G+Vj(JU1ev#du{Bc`rzF$CH^+GGrwC?dSp1X4bzwm5+r+!)^NGtbjj^o=R2C>vvVX_*1A~yU?gX zXWOlckJ5gzVaL_=ETsAGBx`z~c&`8Vz$(er>#F`&AJhB2&0J>rzaLvuH+D{+SMlq@ z&);v$7KhMr!^R(e_V#vBE(al}|*f)OP_x8z3-#}1_9QXO!)5ye67LSj}UY1Y= zRZ>j~9ItzA93N(NJZSy+aM5WS#@AcE_F3(ZQWF;9oGdYWQ(b{^+hdCr*I$Dt&JUXS zTJ$xmcnTah%-SktmUE*aZF8rJXTa*K2Il7NWxIRJcK258U3acMk>mEZt9*ZLUb9bK zuA{i`{bKM$T&kF2q1IK$NT+3zzbl*4_QrQ_l6ms>)4Wi5dHpYoyDzTfoA);e*Vs+P z_Su_!-+V^0Dqhr<-Ini_v+ZOq`QLZeOqnX_VQ&5EEytmAho0Qt23=*+1TB1>H=k~+ zWH`W|e^YB){oRZD_u?MjSzUQ-vfTQ<{a^3So-XOY@Syj-O}uPy+Jwv0R{g5^^}27a zhTA>2X^bok_X?hcEk0U2@7t5q=kY~9HeW3SiN<~Zw)yJEEXmb!A200P`224fJHwxU z{^h+o=Z{a$V_HN&ObB79Lw%pETab!6E`GE!B zuDk0_DP77ixd5KJn7B;S=6o>QG|#fj&yUB{oN7Jzi|=RUc?a>_=bS4%ea^AoJrFk8 zb7@dxYUGNr)vxxkH8X+-2_P47+<&kAxbO9@6=AErcAPWT%+W8*iIY!x+q7RQS9GH4 zpL4f1+H0HbmG5r(`1r_ zsWU6S?)tLhOR~`U+uM3$%kPTre!tJU>}IO?ne*o#+kM~3Uv|H?ykg$;Y^g=(_r~!D zimcq~wV!<#|KG@>kN*-30@PN6cV_+ST*Q$mv8u;y4{wzEk1EGD-BTYH+%KQ^(LvsS zi`yi|RwI`Qjt5M9x6Uir%oU&g!lvJ|-&}iI;Q5j{^QRtq{b**!r)MI2PrtY+E_u0Y z9y7z${t)%p^So6d?C0&A+T^S3er!*Z(^Ij~buduL_yEH=H{j#{W-Vl-+OhMxeCjWxCz`=y$i) z*Z9i*-`{SV@=1a5&fZGzhd&GdohW|&cE6U*|I6`ziWbdqEBv_oJ{vbLs4{r6qI*8E$2Kj8TKnv0*0?@HV6 z{$_FC{vZA3K3C>JGOGfI_nK`7f+8#rgEjFrG;FZpyGKU z!z3Y6Y>|f3_S>QV_v>U&FOa?aVdB?4Zj$z&PE?)S^|ASVhToyM>!lAXeSAH@!2=_9+a$W>M?mCLr{tSefx`cvq{D;fEhD_QdrWNj$ODw$01x zPP+cPcb?)`&GQ0|8$WNllDGbPuwlPZy~x?tHUHwWzgYaZH8b_j=~=~l^!^s#lTli% zwDzLSVfNT;(3-p;HYK}f;8_6YGc^6vCo-ICkNJj0 z&a~h3NT6jdZ*ny|EFnOO??bOX7Ns$DPG*_^>rwcJS&QR15;UtFH@_8+tG~Q8oQYxI z_xu05H`|wFrp>f{zukIW)&HQhR#3v$+x?4s=2O0^Kk<*(Ope?A=J)>n5914dn#Lco zkNwLTqUHVj%8Q$-Va9#tdw)H(cq7TK`@8ORlCb)mQoU_DW>?Fn&;9TBX7BZRr%%1x zecn0LXZyW>+H;D|wa(0a`KIvx-D6tcpVt3MxB1)2&cHD5`N_2JFC5G-?Yt};{}%mMt-|{^0;iX^Zb7zcYe0pKl-tKU-gSSJ7#)X-DNP% zue9l}cyaI5kNx$ZHXpM3_u=_&E?+J4n9rP3PN&ZKvhMpM@%{gD6JzBoj$d1&s&Dzw zB<91nV6M}}hcu*C&j~L*zRtMY-L5A4Sbw+P|L8j(f7`D(pI>{pu;O1~{+V4mlh1N@ zzxwe)T*hq5MwR~Z`JdQIYYy-K_dDR&w7GK&kFrBTx=G=V_04<#&w?fcXG}dZecfv% z-(VI;hTGc$*Iy5H<1#9`karins%XLW*9-6F9sX={=Iq&n-)kW=(`U|~KMbB0+p(^D z=T1u&#|8xs@FA#<`|r2E|GjFjM%RUxB?+K?@4>r29xq(8DZVAK!^C$gL+E?&+T#^@ zzfQd7u6w&9DY*7|sgrp06sqBonk8H_Ok!y?;||zD?{uVN-r&^Zd@{ z`85lS8rG+vG%rC~84_*F`kG-!cKbx%iX!`!W!Ls&W9IJh6{(^@4 z7!J%g|C_qiDN6L1X+}ZaukNQeE%<7G1v4=4@3>#Pu`o}pKC!K-@T5@#gZHv|g^z1) zG|SJZes|}xe^C9LT~Fp17o0dfU3x*s?{~YnzuiqgnP9l`Av?pJ>VFyYT1(H%?_+$h zE&gBHqg|HottwY@HXEG*RZ*b&<520F&R44{Lu+2|HrL*KSx@@e#!Q!Q(^l~dBm#0R)`kNrZcFCmm{cmTr!=9Ujd!x>m zZl07kfoa<;=NEHX9cG@Ycs8++$FQj&AARY@hRFs0qVF&1s|@RDP2(;$=Cyg!$bUnv z(5CSJ-!>kF`~U9MKU#F!zIDs>!^v_#!!4d)F@MJODSR?0b$?}VvHt(TeNM%-%8vIx z7e82ee8157x>u7K7?$t-7W(7c_kY5LlOD8eJ}0}Xc~kwJqT6pR{_g2s)|WcT-X>?x z{JAUMU6=nXRJv!akKO9Co$GD9Wb1!S4i}#`_ZY*cC&z8WWb2=^|2O^k^+??J{qhVt zzm*jj?tEK)|3SmwZ>$V|9-c23zxMeh|6cI}LEGkm`o$Y>t2480Ncr>g-~T@qku&{k z3tmfD{9hd26I(83{8ftK!MFQ&7Vfit{^<0F-qrf-40Ha>3V(1oT-09wP;qQb!OhT9 zEJY6`mp{6?e82McKauKt{bc9Y-E;k+J#FLDdk*XGw==>QN?6-}Pg{6zNz%8#9B*TO z^QJFVwyDp+iy0hdomE?PRZFUu&1x>+t+!?}#}BsgN`tx$pw)L=Ik&^C`@>g{C8*UZ~=;*`~4!>V^iKJ3Srz-1zdYJ#b1Dsul0t{&nu#&qp># zexGJOZPO;^H7%aKe2dHG=o{Vl$$E0ai1TUZozF*}J>Ir>vUv7H%|$EjdY%7G}(qC+6+P#pOY5HaBoK4Txu*Ahnv}sKB%JP|@x%zIN z{^_WoDS_&*=eZyCEPa*D+-qzUchP#*Z2MzpTa-Ayo1w3}w&v{rwYr_T!N^KLJg!Vs z&*E_i!vRHh+rqP(?VU`2MeV3ybARJQ!ll5kmGh8-Wy1Q(vN6kivqv$x59+KU}!b<^5) z`YOH|GwS@kxbAJa+O9J9hd-XtNQUccJ{Qn_CH=c{@9dm&kV{?elg!)_g8kl zT6{3UV5{Myx%u~Ii9Wtke1HF&KhM|wx60f5_xcS3>*oC0_s{NBovV3#jYrX4=Kr&k zNk0y_Pc?iw=kmP{{o2QBF@UqUU9R2ZHfC~1q)5h`?K*4OimO>2 zk0s{%vG0xZmoz=G=Ai{2TQj58Tt1!Cht8boImMK8+YGX{(x~am>(Z9Q6`Oi2`WA1h zTaw9jy)-d$+N$|>?tx2;*e6uXdSB-M-P7mteU+l8yPr>95n)~wU@3HYvck0Ej%k4_aBNzS6{P#QN{DTc~ z7k@Wxdj8`1B@@@}w?iXYD{d+s<~sO$?sb2rO1pQPU7pv}d|1P}YsS2OMy=EJ8NQ3x zsO^b6m2~B0$&}2d>5D7VCEAP{d$OOL)QV2wS@d=Kef8MMrqfsI<(+x>jDMHkc{`?@ zSn109>z^C?78J|f?cXOR7Pv+1B^&#y*=NM3db#!*-`if9{Uht^_B@U!Hyu~h&J%Sv zuYFnC!+kc(#l=pkTg&d!4mM>}4P|#O>+Is4YTHP75Ggmy$ueZ1UeAxcq=lxp3CzP*c zPHQ|o|7S>P&9&e9H|rYLG^~%=Y5EQ{EmOBsdY@%jZRO)vpjpIClkZtY7JUD(f!$uf zzwS;l14I3uY~i|ptM8{x`~C5JU0g(ecVHfb9?bv$_xEX@=*I;gE*^ipdj21c znBxb#`D`Wht-d@+P2E>@dHb}r%#(|rB(|?ew*7r-`o6-+S>@k}pU@ptODN7rY z7T&$^b<-}7c`kRWYE-0_@9I9)?|pCGuhq6{n|)*|XL5WoZMN(GZFAhTCrAI2(Zrn7 zW-qPpZg49$&@X16`m`zE_BQ+ZEazi9LPv`)Gnq%cl$71^z(#v>W1iH)8I{pC){JXQ z86H@i3z+-MM!x*d2UF$zdntSWf7$18Ipi+;(Sv81|H$-D^--va`%pUJxPcb);i|%a2dMwoZ*_2aAR-dZHP^y|KtVMzV=@bk3z>09&qHlO>v(`}ji zuX(ct8rP~#RPhvOQ+#A0_gZ$%>|JHc47E5Wqn})NgVW;ik?SiS*Z=yqU*Ed^_WHW! z+HZ9NJjuELr#}chU%$@E?)#+E*SD-y5}T!4TJvG@{0XzyK6tRW|9+U_T26J@>Md6P zF0S1!I^~XG<^P$>53b(D&`|&5dH(uLwaM}Kf7S=briW<#cu{>WWPW_`E!K!`^2rAFo-X79LYQ*QjyM|7+$CuP)zT zoHBRb?k{t8Ha=VNTz*z2Q|0xO(VN%BeBUa~$gp)4d^tekS`DFdYnRPTnX~JQ?89<1 zW{$sd+x5HlX$#f$tuoKPUiEU1 zfi}gcwPHE9-S)<{XU@_x?nsSfXb4-qbW^%0BhqKDw$M}1fk@T9j0Q2{|GM@*DMJ{@jd2LA{>y60N zZA)iVhD1O9wl-11>ww>*Z#tV<&vNfNW^(q-zXvllPd(i<%lMAS(f5t7u0J=~x>(xf z%Np)K<@@i;&q_}D@xV>V&i_m0lJ(qIo>|mdy|h?td6rkfChnfTjj{K%jn4Y^eqvo; zf7LxZ-!HBEy?lEto1t9ySVKcTkpm-zcSu1N2Gny+~vO4*EX-N?|;h7 z#vgkxT6WDp_i^WWUWHvRn?bAd4;Q?+Ytehrmq+2yUP*Wp3sMsu@^knq*I0V5@6Y>x z4~~B*m;W!o@L!O3Jjhujv-smAHMQ&`TE^;)^0|!$M=3|t@xrW$H%ZE`*K>% zo6GZ~r&jsfzgJ>#xchm-dprKapXYrw3DHWG*>Hc~j+eKz)y@9ZJbtw{ZCSEk-R~=f zvi~=UAKdZ0Kj!$nvTIkqe(+H@|NlZPrtGUYcqCiWzsknX?w#lcUE%e0C%HddQGe5a zeg4OJD{oo+*Ub+*E*?`Anl@9TFELu|-TvQs$yZPMYRCV7R{r5mx(o}$jne77AZM*z z!<$gSyU^4RI+NY<)p^>@1QF}odFOT=Cjfo1d zoZ>jNx#-N9GY1M~OlJGK1h(wlX$jfb3*NVq16{~b5GxKoJameeDrkA2r%;KNtV>{v z+hWGkn;!hOyJRA}>)!X;kkz3Uea!|u7hjen+%}Ur4qBd+-I*Hcy!)ka=Bz^oJQ8gS zH!&0hT8jr<&KKG}>BStDTZJw#SbGm{=XsybEWRLUG6 zDR$z8)1ljYV&5!p>~2$!Wp}%}JM7WtH9vM#R8A@@z4+ZLDMCB!mY6NKkzau@Q|DpL z-EDeW%T1ek;%j^+7xF|%y)Tqe_7pM||2gAouXo72XEReHwc2!=+04BPg(bH7er5cb zZE`kWukHEY)#r7s&KdW-h*bEo=WNsW-TUMM=YN>L#_Xr6129rF)Q zuP&9=`LgS4xmTDpL)$&c$!8u0wh8{5ciGn|vQ04|bI!*cr7!=K7qicF`myy-t^2Yg zHiw@^ZQlHMcJPk!Nq^IzvBUzIT}ZrpV6)?#-xJ@wk?vl*&C2e@$NIf#8{c?1y;bh3 z|9qiVzUYGR$KKWY$9=EIb-vcyF9E86wNN_n$u-^ZE# zs~>aQ|2vtQ*6L~TX=ghFL*1|L_=o-Fsk67bef;X5-}`*V=yd z^jvN`wfFPc_2I`;UN9~&I(BFFg#C`todBvkMo^U-RR0-KKN?MSuGg?BeZ^zDAlc=yHh(!PFO+snKGb5?f0TJZ1MeEYTRA!@7V+~bo!yz8P;w%zl! zmXY5VPJdeX@#o?D^(OarZ0zds5Q(3)jN`Dt-8}I`38lWrsgYZ@sahYB(&5l{HA3Aq zaLDTUhjhD8+4!=5*2j0Hz2E!o$oh9b?n=3CdHms#`JAqwHzi{Vj%nU_{qKA5{qt9{ zy>jZV{kCuV|LddwbrZhkzZY{w93}d6HlJ>*41Hc+|6}pW$G7Bc-W=pV5`F(e*4Lkw z>nrZg+Ftp$_x>U8`Q;kV($kNbX~mZRJo<`%|NPzmUjKMj|0m(sx0xTGT=^bj5h}a; z-6qCmJ4Md(|9gIXXWNwRbN)L{)qV0~aa_ymePxeb-hu|1S3C|{X)>i!rT@BYt;)ZD z^Z)JK;Iq_dkNVYTt*$vUW*@CBznl7^+9>_&@7g1to4)>$2U@^;Sp>2?`)1CeLK)DE;kMk;c|A&R%cR%6UUV^I!R@z;u4XNaTD$0C zh5`qZ$!y=N+Y%)pTk)MEJs(+wHC>5Yzx>sm)akJscI;Tua_@?NiO=`bM|Y~!^)JfE zm|o7{wP$tuM~`)4z<_j&bPMwj*LSJc(o^%_~FoOQpK7ns&i_$YGy2Ost-H?Cjvr04yR@w^<8 z`u*YO#-5bOnR;K|NQdZ~XGKn1dd9~jzG| zt)FdMwRfIT+RI4cFLhe44zGE`S90ce!+OR&@)lLo1pn3Uzb|jp_cHfY?%L3A{a+{L zHXfTUr@fc?#FGiv?|+G|SE~w}u2Yr41=h`%L??1ohb;UB7UvpAR z9@+nymnrk<=kfcYlmEUd;8|A&lB5ao2Ku7P%w4ogFoB%NiLsTEm-&I^X=`yEr&hwes8j`jLC>TX^0NahdOz#F-f86&?8ZWBcs-8PVUmxX&N+*~`Z8 z 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 z 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%0D_>_|S&7oIn*G$)5=^XAQ; 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

    wvKbDuNGvxyG12=(%i!a zKBqXF6oNyZKA)^=T4Xs}CDpj8NTN;i=A?6*12j|ui*~knetj@8bmjS#GN+nTZbz-1 zHpTOJD(8)uTgr*&KkpHHnH|Hx-nPr@#rf$EZrD_nTCdEp5?r}l{NOIxbhf04WX=p1m2w$%$@OU=6?*rAS#pGW&VEeo znpP;I%+YkkiDkE~6Hh&>=*Y?V3Vaemne->*09H!Wv-Roc?Op0$K0Jt5=PB2xps zmh|os2qh%m-n7(Ld(vkUrX^R@w4e)`Q)Tw z|Lk*Lm7BH}7${EKI-!@1;p&eA!I1$QZteSj-5_rkmuJ*IBcDz4FTT_ggH}riGUryD zc8L*akvt}Bv3^?h0!W2r5SkLF%Wki{HkFPE0NG;<{|EXGWAwu4IhxM7qJO4>AJa|~e z7o99!x>n%j7fbz3%q8YeA58n@2}cbChS}Xp5BcvoEGlH@ZkGay_~L? zIgh3m^h6)b(LOY9#n)^-yQG>8>DN&0`_+vDBE)gLDPkz)oER}U~N>?wgl7t8*VKt6BK#J|M|pf33m%dCXG9SA_7b|1a`{KTMQ1( z-%>Nfxtk0gS323R&zq`r+jYm1zi(T#_3{ceXL?@{$(?cO^QK##Zp${fSAMEF`}ty& zy3;((89_T^1eQLoSd!+I-}PkKpHrvv)onhnn5VL`Xl37}8{6jYd3MobYS0H8{gu|P zTbKS-ahxRMn>+Wae+YjT^Q~~Lsgr(v+NQ`jg}W|MVwut@tG>w{yKM6BwZ&{$TJ_25 zlg5=87SrEnO7Dhz$*c2`X`OLD-mP9SdwQ0Uhz|D) z-6IxNg_5hyDkbzxRU+&*(+Q8LU1&$kb z9Zh;Q>)Ca7&;KQFXI{67jlL3ZlV!D(yNO}l>t)CI`oq>uaSGqqv9OVGg+-f`tZ!6p z&|+831*^HcP99yh#d_up&&(HAsnU%WY)uRjvaE*$R$M>+|Eg5Rz3)1!vir&+PoNK>1iv{~TpQL^Md(h>*zg6O*ZMW~IOx?QvmBQz&#ATpt z+UfQ0d|gPgt+CzDt5N3nw!HkP{L@qt2I?zz&YR2TZmj%k-^L_g9 z;e}1hh6Lqf+kanQc)zc(E&SNwsWQ`Un$CGQeF5X1{1m%uri*><3yOR=`tPg7S^Y#u zRhQ|a4^7s$a2%L^yzRr{D0zklx2H1dY-3*2TNB|{Z*}2E#e26iTVMb1o^Uwat9fSN z4ofo=J)NBPCb#{vk0tXs%^FNg`S1HFIh!lB%0CVhWZqFx5h&#P``(6z^Iz8)gv^2O`(J2^kBzH0YG&|JC1Jvc8|sqK*ORL77lt;%!eO7!a1>@(qB zyld_>T~I^(kZ>cYRWakG%!>Do+lBLXoH){NxL9L$sWPLEwovl!+B93AlRXa>8C`Ae zPE2#jI5l1AMbS)t5AM3i=Vy;P*46E?^^{w#aem9*xb@4I7@-*F~-`te*(T z>?_ffi`>pP)k}420Mplrk1bZNxPN84N=@)yj|WSW&;FjKIaA2ylfhO?*FF9xpYZG| z|G1~Zc2mmjvY^7<+rHPzw>l+y2_F7FOT%fyx4?>1O?Pi^zb?3zF`=M9VBh=X=jZ00 ztX((P#plCO8;!j`YnJXax?HlUpdr#d*y`LX<&+?N|CJNg6dM*AT z>htP%9}V2}D)ZEvx0llP=4W0ni+sO$)4Z3$SF;!83eWZ4y~#>ae6k`e1A1n;sw|bZ z7b=K?G?Hd4w3(>AnX^fuqzRN-K!PpJoZvG2a>c6itDPf$RIXkAbGDnDq1n-1{Y7P~ zCG1STWk@f~velzQ&+yLfiN!`0v7T~50&_8*r!l-Bc%LrkvQ z=F9C+of0Mu2KC*kPo^B3cjFM(@~)@neuzh$-q;$aeJIKLK$3dH>IT_~z4O(c-|u*~ zXPahP@ignuJ?pcz`--wEOul?rxzSQ%YcHp5-`a-hqTf{ZAD8-3w^aOp=u3Z>EQX40 z_FUeK)=J#z6-%!O@N7NQuqydL*9Psf1*Qc(!ADtJWq&va969_oCU^t58}@Kz1IVv4 zGHot?e&zQ>DOl^##n7EErV1Unx$#fCd*L~uLl$W+zH%pTu2C1~x;^!5Yle`-+0Rex zWrPm+M9%4MRZ%SpoalWmqvEm!^N=ZwQPLPl2`m86Rc zdzWNv=JgO+QnIJs=i}@rS@-s(&7OG2JFsWxf%D3;pKEq%ys>5!`_`}c-0xfY#ITJw zkJLm@__Ho&$(F3O3k97w{+Uu(bE*1e!S%_HZX8%x?EECAcWd;TDFGhqH>YIieg3)c z{+fE{4)w@;rLiu7Q(TzY8?v^}`VxKZw^Enfxu?ezI3}EbF1+(rp-fBSjGpSQIXp{R z1MS!}gA5Jy-d-w`YrMTlhlh_RVZrL`m<{JF{+|pueE32kk3r!KmtwnRJ1?9%u01#1 z>(||#!aIJyTX~(eA!@%|;nuE4g6r#<8Lnqj2w zf7{PuY3`Kyk_+c3T}$_z{-^HX=S=mCw7Z{QS{V1o=uO{pSlCZSIpVv<9arxMJUs8F zX84wrmL4pWd2?r{ab(GXH{!wPo+_1I+uX3+^tk4Izn}gpHkaSKSf8}kJ{z*+b=e^^ z+ryhaWo+NTvR{6t(dL~WxUQOO*PqH>lpA^6XIrk3mFQY)&E0cF?5GEyomt(= z-0N}8$!ulyLbe6gGlW3pW0L~MA>nSHRjiIPHi9Y^a0lIjV?yOt1rB4enc>MBV-IiM zV<_`}+QocV4UJzx;g8d!-#nQ8lyT3x4bsP}LS^2DZ8YBYadwn=o)-V2u5Pk)x21O%r?FqU?wfv7kzs-N(H#r2-MxRU3hP*4a5}4IXK6@u=N4PR<-Zp!e;=*-HxVIJ#x8dP4HAFgX7vTRMEs`n+$3s^Mq(;0Ptp zuI>wO`<~zaxzQ%p`e%3kbEjhK$XO~ba;~$y&n>ga;c9*R%D?hcZA?$!A`MZ_S>16V z&$G62T`zrD8K*RR*SgzEE|bojP!0+HlBw5TxjzvjAIK5x?Rykp|F(*9-nJ^{wq=~Mc?1oZe|C+~^8Rn{G}WpdhK0~fvN-m=c?&&scwExFcwwNLPpvt8?I9ays$#kueJ zXLul};1}Ds&WyLe?bz7aH`f0C_M|dp+uENp%d%BpOU{@&&wF>|%QH0&xlxN zc06$Tq`YYda{J_sW!HP}{`>5s&86QVGkunw6FRZ^)n&c)E3c`(w)yte^wP>Vb4%wa zoMCa<1TO0w1y~*~PDx`qHdq#2Sjr^xK5WAQt__CY zjDq^=x0Y-59P8CDTi0t7W3@*hGCp~&^FxX4JPZZ1nGU2ptyzAjoBfcD-JQ*>=|5HP zNcB7lcl^HOc&5gk`16nJo&@L|-?3qb@c9p?EUw@0mA~?9(&KXT*R}OC4!65KORt-5 znRA5qP^vQbN1p91&!4*$?1?@oSk~~pJpbU+YB7Zi)&Et!z#dEEGg>dk;y7c@$tPKQ zJhLZC{LJPP@7}DU8hpa+wd2#2lNY||bIvN^;p`GwI<0%RN{63{deO(zA{STi9y0KG zb)fZf)!unR-kH{}FP8o-v6jx*YnQ3$=>45^#_f~o-*bysecJWuS5Tx%b}{3`bM5`sYfTRsw7l0m z^E#8`TBiP*&E`u2Q(Z+KF(ThyvoYJu5QIyja4S{+$Lg&4O-s+ zE|6hgym+yvJj2aRGVh}kYGSTsZM||sWktVd*YoRwvZvR3cD>1V^XPvpvDemi#@*}e z+1J;F9kiOyzUu0=508U$)5TP0{WD$auV=MfLiXH|{{HsX)A~|zhDkKoPW>FFP{80 zQN3yF%x!mTPS^AwJg>jHXH9bDFP+5OGSlZK#4$%E{c?G37&&k5n|yQsxjuF0q|7H@ zP0W9O)M&j}n$joFK4@QpgI!YVXS4rl7VAi<5Vd>IfdB=LrU|{ECV)Vik)=yTZJ~G! z188im{C#A@`RQp7uWy~#bA{`*GJm`-|HHGp`466*DyP9JbA8Ix%bM!Dwrk&sdF#rv z;Cx?UVxe_g2*PpRMJ9o4R&J@i z*M3Z|eadYO@@ByXrO#Q80xXl)tXRv^=@s+JSlM>+3C|>*{|jw2WT)G0X3?IMYiToA z)3w-h#t|(q=S!O4;6zBkUlC0uA-quZ4r zp+%Zm2IA3~()|z4{%+`gwrq>nbHBd_7fY}^HdyotXHGkvJ@5I!&o)=Gwubz-?3=uW zQ-AvPwQ=hghpk?E&M|xL6z7TiEE6Tvp2urV6<~3^G{5FeBv-_ZaHo65tgkyCJYKFD znXPcGcjx|XzZdT6YtzzeFJfPyvpvysd+3tT^5id+s$8gL+G4$XqI^Zlo0l$& z!#C)(DvL+YxH?_;aGK|IM*$VVHJLh}Hac9F5}(_w&=926x#HZzz{^{&buKu2G+Aiv zPgAeQr(#$d^kWWAytiG5gxNxf`ynbDjP?F{8jBvV_6Ied+V>dcO)|w?Cbi zHg9&N&$K;fmu4Ev*ZCXF7hg6bd*AVMlk9)iwq3fht+s*XHRq|-*9F(qid=jb``bk= z)Jt*x`Niwk>zCT5Y?U;;$i(r?@Y&}nw~Vy8taMK~ygd6c*Y5M#x@E6hE`8dw zY=26pt;wF2s;4mFs^8ox#`0g%yy<}hTO>@b}T$8DPZgD>cWePc=lTjIo zHA@%2+$$;$ZtDoN{5}1HUF@0siYpJ)9bNm8<{l#|?_7x=QArbuN|fzZ$Dk>bz%pwf4R^sUsW83{G=> zY`VkoN@~YG6Y1|)Ki?3&EwM!@Cg@I|w3o9+rnI|N=pKvh?DJ)3xAIB~ZnL*FlXkZ< z)hTk?vvz~9y!`Cus&@WGQaUl#X6)C$uXW!p`uJ_^?T-sDR(2#l>{IBE-Pp=#eQfF7 z+aLa)`m2#C{rN3}{@J$&XPr3g`;<}UZAf8H^g-RNd2cS66|MT%dY6G~wzBx)jlGk$ z87xrxn!dv75TKz&NNAts!tj#A}57SyKv@nhWdw@K~mG}lbp|)9L)??I3uFfyY0~> zqx)`eljf=C%j>z$etsa;Q%`^L79T+m+w|m-D#5h%~9rfL9BUa zjqi+F|I$ZqbKUkntt{TSJ#PJWk5ZLiLAIXz)C3K5x4X}{9qyWM==5u$^+i+XPd|U; zTXiP9W%zkCU}t5(sl4JHeoyalHVOig%oacXql|yxDl*Q0swHQxAM7D6=)oX*l)t!uA5iS6{78P4(KegF)Qv z<-H@~Q5ogyjm}@Rd9SnOTBnPDcj%1oPuCP}j{D4UDsqwO(v3RYN0UA>a9n#Exa#KK zz@A&T+#hE1?yhIZ(r>9-w0pPo*D6_MWo2E#lhUc_-tYFDRa;lRZHG_5{Gj-B+xur9 zzo>eU`Z=93d(ydjsiZHv@^E7+nlTY zxnD;136Fx?W8Q+#`VTr7L%w zc89jkgO3-EUcSRHy*&5uxf^clMH6f9I%~@9HtU0^BTO-EUihXyN^@r^{19b{s{jfjx zE~IN#*pJMu?EUWdrd+wll~a?JW47+a&929Hwff%P?wA$!VQL%egY^sh=X4pak&Q7o zlMXM*Ke{na^#7|ohXtZtUdbWR5?hpVPW<>6FDqteY{nh_HRqUdvFaVkzDMa>@AbXj zZuaTp)k_L`uWoe;@8$Y;PX6H8t#&;J530LAf6#0j{n2NAi}4;IrnM7-rMMg-f(sUY zJas5<&XceYoBkNIB}?0ewd`5?adwvA_v@cK7Jlgc#Gv=~UZ3zCu6-Bw%ZW7<@a zJ?NDFsl)X<3+ohauGneE+N-x6VES;j$bMg_ad5Gvp?BV?Nr!HArr0QL)yzo0I=eeG=FyXhRV!`k^kNo037l0Kl55^;RI4SU#S>Swgx4$C^SA?RW+GzhOHP0VwX4iat&e|Vxetzb& z&sV3+Jo}t4ensQ;sndOre@KtHRvBRT$Cml(`pcHFVYAAZiod(73Uf~qTYTbQENl!MeBm8N3a^vM6pI+R( zYV&WeNk{IieH&JO*!oGJXxg!&lcUTpQ-yT&wP$3hcs`_>NXN{G(`0_;H?AdSQ&%gLKKcw35KG()0yoI~M51rj=$8f;* ztJ1wq*@piX?hy7b&e|ZlL3z{1W-s}7tDg%VJml{F?9tDifpgyWFZ4cIp|k1Z<{CFo#2X4_Dm0`^~m%)~$YJ`Q}pKt3PJP81g%%^7FE(R{tvR$_aCP1Q&QpJ-wu2AHG1bm(AzP60=3W zKE1f9^7WIQ(#~nO7RRkuo_}8bt=DshPZo3QMO;rjE#hcWu;kBT@4Dk%`rU?q-+T4n zw$?}Hyo>6-a#il`r)aMYdV1}fxL2;Y5|#Zz!@*!1>(^I&3*wjrRHx6%+vmuU!05-= zXV0-dol)m@`r`;jKk*BtCI;UaO13O7Tx)he!zXe}7}s9cUT1NJ{=99I_C3h;HL`06 zaVZIITl$Ud*kaFM`%6ERZO(gpehU;)_ zS-X!^xH)0m?9X1f0 z>iNKQv0CxM+1HPX@cn$RvhAYf1d+3^y>bt$W@xp$pMLuG^yx)qOHW*w>cv_pbGS6N zVqSZU-gFnWWuGdfCrjjRQ`GNYBvh<8{q$Xx&7U=H?R$Ut`(LrfewQerGDelap2ZqY zJ7e4y26(8vv*^2c^=fO@)>$0WLc}NKYW_0id=eOPe9b#9oAB}%=0z{p|7_`-y?!eD z)vZjY&Mm)mJg{ZM7SV?{k^^?J9cQ`_6Ycvk#+2d6g^v=CK1p~z?Jd|XcJO^1OR8bw zm2-@-+6&y@xA(a(ob@wf>2lR5{n^|(l3^O*uUC4!xbm&W=aZrDDjm3PQ6LN<5Km!>ATWDR5Qi~_dR}a!I?j|r}Mb{{5`#g1a9n+ z{P8-zaoG!7Ss%*@+XAEC1wWEl5z-K(S-joUjBQP1^PPq5i=O>n!Rojy=ah2G>>&01 z|7TrXyVE4^)Xox~{<5>%FJ?;>UwJR{d0y5u<9j^4h8A*5>z*x~Vko-ey5O2<=2Ytq z)m7iM7Mb4tyleMvLmQhpx6b`%J(e1FZ~2$}X$iT{lE3N8Th}b)*XoYve*0-@jhfKp z%3oy{m#R;i|8hoW%G0t#8!OL6R?c{S^_|Vny3dxgkM0whxB1juom%zEPh}^qu6N!u zKeZ=n#>$QqU5Shg(RBSQ8^q^Zrr&*%eyIHhs1R1*I5e4gR>bYe>T@-wKa1aFI>~&$ zaZRDKqd=OH5ojC`)Pm--167=d&Nzbd2L~vt9Bc=T{LHYF*->dK-s*8n>EqQYRTU+f z!B0$%rg$Y!OZT#kED{#qekNnp9-TTK&U*0L8WsMoLq4DMUHP5{t&DURI#;pN=8)0! zX**-GPKEEWt%zIqdfAiQQ{C=Yo&~nQG<7X|mg{&tX#U6hE6-QVzPw*#=PdX0Y8z*< zl&&?cx!?Z0($h}l?k$nEJ9|98_Ab)sO!E~y%6Q;=ZA;<|DgHlycFyoiUSKVsus}Pl zsZ`4^EqX=v$&Z&dEZo)Cw5e#NOJIm=>2)mynYLucQ%q~znwLI0nQgMvaMf-$9a$y0 z=;okG=}*nt3DvG@QO{>D`f3}ni;I_a>GA9SGq|R)&MC-{-M_QHZu=xx<}?2uTvu!e z*;1+(&HOm9aHT)TEqPbLtgTU({$H7|@;UhbM~@p@1f2H9xvvdter)0SBxjYs-gIxJ zW!g(OBphTaDJ?ZUm%Qo4#lwdW$p2&L>Gj`twuPE?4r;x+}0cd@Yk% z?kt0qx3+L*y^9g4t`5u>emdj6x>V@NX}-RW*Qc1CeOuzc_{6g-%VWBhe>%IVV&0xJ zYo7N7aoxQ;SwF+_afi|sxk%Rhn-2?qv48Vgz}oQcUEUP0rB7}d-<~OU+8{N0SGaJR z{AIIKlmGjz-`w}`rLWqgnxDlRg)^u3-z`fnTJ&qn?;Zv31CP|^Y=yO!l@pd^@hzd+&H)wf5~^&)0( zGVPpgvq@9-^yLXHnOyspxm;VPXTxMH&gFaa!K|>+7q{U ziamb0V@+Dug|ylo56(O_6!P5p#Ai`)*zC_M&WkLa?LOn_#dVusc|Lbd{ZRIVNw4#T zjecF7O2n>p+zSNf&bU7F++~ryp0`vJXPr`5IDK2NHM2)c%)PdG&kqK16<23x@XA$VhJxNzi6J9kxN2_q5ZeeSNIo`18ZJH{RK(?K)nvtN(fCwe@#*oIjNx-*N8p+2yg)+p7O>|39&Et3fT_ zCG{@Y7&N4?YEs~EV!pkt@TP12VgCGIMq=mYmoHeY{6=+s-OKI|ch}!-Slk~~w_vpr zsFZ?hX;ScM>~zu4yS#Ps>dlvmJx@(3stn07?ph3=-tDqWa#yCM zMe~$Q4ft@YGi=vc{`}=>(Kq)7+{;nx$vpB^Yt?SKhQ+IR8>38JvaZ&w4S5{zZOS6o z`Yc;5{OT$%DFs@_+|Am-O+lp^rP}sT{lbf%GY@@o)*t^=ttx@~El`k!yx4>0qaq`c+}Oim8?YW3-7O^|tAe0I70qeW{q4L?`!)@=Or(JAow zPunX~qR-ZyiqdF$<$nA_)ul>b>9vg(Opkuu`|C5^!Y%h~)|K}1_jfBn4aN_(_E-14 zRf+vvd1}4kzd4V-*931fpD#XT-v8`rcRMxCJbkCLL&a{Q!rA)sQlHZ!ViHza}!rE>&j-6-JI3h~kM4Joe}mU7-?f ztYkcW!;Xs6N3DZjWvMgGniy7jZ`q5(N3->sX4&ttvw3B_-rio__}8|X;#X(7cPzD< ztt4GrKkw968~ur#JLzkf?Rj)%yde6sKT@^d!}=eXPn^-|qmtO!~$z9@HZoc}A2(oMP2 zTvD5NGy7a+&vseIwt!JKJ3}L)b!ot~$toR>ISzg}yrEQe;!@GS3<0aY+8)_4@9vp+ z)3}H)-fI>LEZp_CPUP7x9+u?;F--S zr?R%r>QUC~$X;uhes0c|IoY?X1wZZF10|rU#E^b)A~$@n{;Wg{)TW(@#@g zuh!u{Rhk$r#?{KS>g;=|l)K6tdY3LGvDf&__*6WtVpH+b3e+nZ;sc$@ahl8Z@k;+j@T#Xs-Ak)^)Gng~qWf z&wHNu?~dgRQwxsc8`bR>oLtk$cxJve`#X_7!FdsS6^FAw9(q2n`TxI{{~ra<-~Z7e z-2Dc7&dpu2;&FAXZSHP`kGF;=pM2!XzRSyB=!xxO1r8@`P&*EsaeVsrq>HdPX0X>T zZC47ICFt#$@#tdy&K#eYz6&KBx;fHLUH>C7Y5AEK=hIZqmKB+IW~#WSd)7~>pC;i} z`k~fdGl9AyQ#?51)}_+BE;YP|1snyIDCJJRGV}a%;g5ZNPfN`g z*9EI&#Mx&_cgd`s;>D7_`Cmx-(qqcGlT%hrX?p+Lb4m2t(p7goO!yBAY>nde(tJ|1 zbBct&lbN`Fvx3Ky(n&S3*Iny3GF_kfZ?nzBg>&l;XfE4!{q*dGuMYRVxT@Rq^~ldv z&-z*A-bR@(O3-$A$(2=oZ7Khz+5_{uEpF{LO%Q2FEtY=D__%gmh_aO7*U(A(ZeBm| zBSP`ytZ$d?ewoiduU?zsRAi?s=a4*GrDoSOoAchTn(W7vV?O_T-emgsik}7JR#t9- zGqbmUxBvWnan&i!nRC62s;=2Ku5*;yopz+)i~pb4#=T1O+q1mxh&-L)uCnakIiaMo7vLv!<9^xy zK-~75c6YNFI9^#^@%o)M@8K>zu2!e+gt=GipBYcQH1mAQznFaWt+VgHHa&jE<^FHe z-?yeL`T1j(hs(KJ=lTuje@~m$`Rdxb9OL<&Ggk1XZK|*ly;!5QX{W-O5S2+=Cm0wR zEqZo-F0XeqLlQ&bW8U8;?-Qf4k65*x`|~)d=i|$^HC%d-g!@KzRv7ozW!8+-zbYQ#uD-O zMO4k#=>Pon`##S*Qxy0A)%1sZisO6s-HX#$8nE{2hvm25AG$jKuZ`RBORLxJe|S~@ zcy@fH-j-`WJ{(_vcy0O8&$H+5d;(hwu;>VGhCYyaD`FS*&y*FKwB z@m4#oEBgH|_W651X0I^cze7>xPtM(K%+qUMEdKH9>-9%%+3ODNTyHObwMYLU$8WZo zpheii;6fghXP}e8X-w=zace`i>6~3^p?72EQ--w@^?Y}BU7EPz%)?9{!J9hD-mgxt zGM~OslV2|*)irYI9*=jX%K6*7?|CiK>fh&kXmusuvyUoPm)|ct;gMu~{{H7ZE-g>r zra9$02CnzKvsp)5GV(IbZ5bzyjPMd?!>%!<@RF7JQ-tIu6>8zFtSINA6@zHgcSc3 zbCY8pcb3<&U3xr4KP*Ad$6?}{;+-){$C-H}XP(}zZH4eSGxjFjM)9R`P z{nmPSUrC!gy}eTVAYA9Hp$2Kythhzo$jo!x$28Am6`=g={>zvvGQux%GZ;{4lVF_7A$D# zdFuXZjcZ%aIy_Z$FrTmL$HObV!u|5TY0JEvH=I+}V9t_X+rNH_)53rQ@9yrt-Sv6T z{WIwzxzEqD$gQ3CZFXwfUbFi1LK}Z>zWB!f-x<^U>NB2}NTph?UYB;|X<6!)g6Z)L|I(uNYPdK^5sj0gY#;OnE}}*_tyBcuPuGdw*0bv zuj=HqcUjV)B%;7^=%DkQJ?DF*?Kiese07(1h@87-l3M%{5thXF;L*;x531$rKCNB9 zC_p3O?=syVm*18rom-578&#d;>N%cps`1gv>d!2N6+1VeTWy=qj#?Gm@b1|au ziQtbbQ{|7m|5syuul}lf(DB+gUEd$fG4^*CIsW5leqDdi%9iwbWnAYhKby$x{gYX7 z*FLVxR$1Az>iqW$m#?xiR6OmDzn~N;&dpj8K&1vaRAh3%J-eAl8s~;@cWYZ_ zM%lpNd;L3vcyY;_2b;Nc*RvH9K&-XN8&ayIG6O?AiYv zJ{lynXr-K|w(-FUDk*Xsx5TYi?pk!Ea>gbZ&KDv-XI;8zsB%7NUkJaP72?6<~r|~OVie@CtlX2r{_JX&|W#KElld` zrL-Gyf?lS_n}b>IFuq8TF1cb;CY3ic=)k6(Qn$-jKZ(knAEv5gCg1(X^yDRmNvsT; z#M~4fPUqeodEG)*n#D2ePH-*5f(V^O%a^Nbo)?ig`#o{06Juih{Uy1{;#?YACa$s+ zDV!U>y@rvc%J;TskpH^3PK*`riW{xpv&`D`EpGB@M)kQYCg&%gJ6I^g;&|cGvzmo$ z|7N{^%&nSoH~vTAls^4Genz(9TYV=^H+cX1S#jf{B7a%l5Ob!fp$7U6Z!;WjJBVz2 zUH;$oj_Sdxcqi`c3%0Y~t$emf>d(AW{j5>HuhgvDet62%pWn(#m;Q}B^vC7Ux0KAY zo7AHg99&bq`@4|vRLj7--;RH;`!;ROQQ=!}&9|3U+0EUi3?8agn6!0*lI_H83lbT3 zeO&zV?(RyTVj*4zuchH~-H&%{JkY(YCM4O@Wa)%8NoIFdFF_YmESC|h-Er_=gXHpm z9cEL%PdnBUef05vv(15C3wK@LD#r3~<&nnO;ivCJ3GlJ$EG>9k8ooF{<3Vx!U$uRI z_sXlu>zt92IUsKTRlnlz>bSP(e;?G>RHdA)TY31PUIg<2<=1kDU+YzcXWcfpub1t! zD2dFP9mF+#&r{wFxzh9Z{OkVle*QnDp9*e_GtA5R?0((zF1%WLeR-etw-rw-zD1@d zynWpN_|NHe2O?GqZvC}OdS6q0)p6H~i=XE=*VlZ0UGO!1-vq05A$p6$xC=gU9$&bA zJNw~kH-$IxamDYtFWkT0J-hy6cFv70KS513|3ByT>w8b@)o}lNcQgI5_x&GbS&htz zuOM0FT;t5}<2NOtb6QP}pfQmdFJ&fFnjU)^YGvj}eJx!KY1zKD6 zF`xfD>2Za1z%z8+w$cAoHdKbrX`>gr*n-}u*1#+^l=*!vf4P*D+UU_%H z_5}+Cl)Ek|t>)YxcBbP6!=#SqEs}rd)cd{Nl{cyFm`rT-*DBecHFgtSSLS>!&Wmer zY-~JZl|E5g!eQOvFLO^Ul{U}w;XL-oE;)|7r1s6dz0%Fi%^@5U&NHXayD5?L)ynvH zWPHk3@2m|b^*Pd=U(cUw?!M2WyJ~{!^3PVEvyHqjn54!YFMO~o?^%S>$vNxty8_NX zyri9PKk4n+FR}|Cr?I@g>aou9#j#}Gv%Y(~UzN14C~wZc=Dw+auO~YSv`F@!S^ZtVT|c_(V56PQzB*;I+`HE{-4EhYm#x>C z!t`#}`^GC=yS>G9k4!qsz46b7!vQ)X8%mG!-6_5QH{$DwSy$RSTs8(Axae-n%OG%E zYWw|KeTIaOi&!l_OR6XSyR);R<}Vw#AH7;*&9>BsOCI+%Zjw5`w_QH6IreaMfR0GP zE6?MPXFNR}s5Sk=X`*23}t%aux z?p)N~knzuEingfDj$eXnVzx>}Z-1ZRS$$-o_r=?nd-vOYF_1ZaFjIYQgQ&Y)<6G;p zhu5s%AA7a+^{r`>&;PV|IAi(a8=~$93v+CCyb`=qcYd#gq-?h5?aNnN7x&r7yq3G) zpnH2;@=e9=!c(2c6aUSzjQD)x@sGFj^AE4PdsEvXdRpt`K3l2dc7HX#d@D)5{=wi~ zeSxT4#7?fMS-Cu$oyzyMJL;dVnzk*v>O_*vz8p=r<6b|m zmDf+WwY~PaUd_kX|NHpk>ooQ1KEM9hr)@VWGHheOftBiV?V_jWx7jK$-tqTc^~O&R z-8a29HR*7ku5<3r_XDRwCA8l@UOF*dg8TW|qjMsiC1hm}`~UlXedW|V(+1z@ZIAwx z$6x%^_-DEOxAPaG9?yEce+tJnhJb#hnD4FnkJkkI9ou}~M)v-{d-abuewCj5my2uv z@6WjvAMe}o=hxoN{;=}={T=7epA6#C?z3Uqmizb~yWEjCkgCSad`;1rVJ$9go`0%S4&uf_T{^36M@JHA8{|`RBaoy_&PagLj zr7#jLGTVe9HxR?9^;_s-tFC71nrX~Cn7?vGoN``VHtD?U8Dy5sM= z-v&n4s`$?@3giADfB(PWzlWjvhe7FQ{{2t8`}%|-E6;6ag4>gz_7!v@-9OE0Uij*d z8Pjd7N;cgV$gcRO>$E+vO|xTS#>rGyJ?C^;?=9U2PNmwn(wAO#QJlgTY*bQRl723tSe9AiK+t2Z9hVqOLfGcS1WhQ~wQ#Gc z-lU@$Z3oEKgjy5DZgwGTG>o$Ka_o}AV4 z6Ev{oSXUdgq)5s-Q9`ZAUXX=x*REX`Zr|=U;MtgYSxqN$Q;L&dLA+OA^|v>fmg>9M zKl~Q=cYeGzMsIO|#)mG`x>?uH>{IDW?&<4W6rpoy+uM}J<~6^UoJ@H;RrS=T-yONP zKh(+xiYyFUt@_vZdiJy}xq1PP-9|2fEcd?~zqVAg%5&MU&W>vVUtOch>;4PNT( zw|keCRr;m>zITUt*{t&}pUf}pJNs>#j$xhBH#fccYvhFg&YPnDIV-UZ)WQOH>Cet( zK3&7VKFQ%|fb72Q^JS{U_2uKBEeCd?p}{ zowxV3+@9a_*Js_VKeW;P@vQ!s#?t=v$7kOwtlacBa{2rw{`h}-Pj0ZAM`g1(Hr&5o z#co%0Ha&{v&{6K^k8f$)b1-ncE}iptQut%n^Ywc73jfW%5US&#*&3yL;CEwWqp??Ls$-*Q{n>^?7D|LEH8cL$fR|0N)HX721O<#&Ja>Q4IV9sj}H;=lYk z=lFd8N$+~sS6conxGnqRM(KR#n*u$t#}7_@znf?I{2Ha2^WJuMu0|!V2|1)&|HpXU z&pW*;E6y7hbMkdNi3KqU?lH z%^&CYhnp&kgXOK>-PkD|9``x(&e!SeK`;4Zt2ox}{nY&9Soyy8ga7Po-oM%WpgOK7 zZoTDq*NW%t>vA$*ALV}b_!a*?@phdkj@xqo6*Rh(a_;Zsj{p6w{KMq#7MD!&!=xs`Svik{C@Yuje&D2?ifnE zc%MD-;B=j+j?Z>qlXRksJRUQ%Fyz;q)&B5zc75CH{eQkr`{QT%&|=U3x&LQGUi&$H zuY7&%*MevJ)VZfd@dnBq{%)%?$6P#HKK}lsV}Bg(Z_5?=RQcw{R%!lJ7vc5SvLe2o zkeXBUsLhn85?Pdw7 z7x^`vOufIIC9Z9(yQ~)Td8huvd+c&Kmg~9W>gD2oHSKrY7~o;|Wp!BgkCXa!o!R+6 zyu72&%rtFj{ruc1`);Ag>;IoOO@EX>@2?L7ujjA1@;ijWW2y|#Sw7y9a`eyhd9`WX zDSH#{#ne2Sf4^O|TkPPrwNLI`x82A1|NE}`vr{Jhe`lHg_-%fz@~^7uAbGKCO$_~O zYI&yDeON4!I_cw^g^n@RPuUAE*VoB+i=8<>bNM`;^Q8-?9IDi>HhlN*G;_uM(D@EG zC+zBOwXrLBscP|8QeE-+Zw9IFkGz(4&AGSyR``7OTrSY}p_nNiW|Kxeq zw!uFCTu#j2h2I}-P;FPye&}A|`@2ve%-~T`V_I(mx)(z@S+}IB4X@L7(6Uh#Ype%%tfYems@?*2SPK?9TQWMuK<5#-5=1;RG1+TO*o@FNM-?Uh>@ALkR#g?~4?)>=4=;3;P znbD`8Hm9Bzoi-Fnov|owcB#tAN$%Rq%ocuASvdQZ%Ou_R;$0Vfb4A+}KmDw^6kfTW z?Yf!sNi+Msvlgvh`lja8`>s{D7c3Aq-?lcxcA?94sZ^_v2WKDJ8q{z}DzH>yo4r9? zt~Gz|&VXHJ|0-*Px6GT>zHCDR$Bi9}14E^ZBj+#P7X5%BBWCi{XU}`nR4RmpCa#o! zS-z{US)t+fpE*78@hXOwXOzU63$}ZoJ-WI4&5g!|3m5)X;wf5nRjcg%J>Jusf&>@c z?p*X|-|{I=J7d~j?>hP8ZhXdCLo2IUG1e;kXMbO^hU0iijrFEmGwwhB`Ci8O)y|pf z`@esv_L4b%;`wLUIa?ibnT6LhPFub(X_G0#+l-7G8*X)73$CAK#`5~F_`z9+7f+tO zXiFvk`AO@RSHGQco`2r{pTAv>Z@Yc`v(b0ot>@mVJUMyn_dSn`Z(CmfRgIdR^7ZRv z=9%H#zxgJvX>FM|Z(iozxyiEW`y^H7?J-Y=_7)s2{&>uk@bBQO&R@;V3LH*iM(gc% z{5UJ0e^fQUR=LmW(S|dB&sSfY`5{I;{?D=PLGp6CCTtzWc|4rPCMeUdn8K$H6h2U?LHZ-l>>wq7v=71I{adoFJ%`l`I+)vebXQ*W0&sgdV?cJ^R)e4$=jyL*(<<0!9%6V5-L zw0$4r{$F?H3x7`i-*j=K;hf@QnLEBL+Wu(m{{p#xCCBepl-x}|X&BqeWcU5!|L(?r zb}_$O^&gjSzsDw9 z(A9w&PYRz_>mN0A*FCNs|Ai^$|JD4S>t{E8XgqzdFV$P@v2pw_sk-0Gqd~>Oy?J>$ zv3n%m@A`1|#@1^8)78C~{p$;jnQLoj*qYo>iroKeX?=h6zY1-;4;!-$ z_N22cpI2gY@B6v#kFTcxvCZ54TJBEW_u7?T>UVtQ+mm~@I{5az53|A_MJ}Je>AYCQ zR-M+*=W01^*8gqaAHDtk0sXw6vE4O0_ut%DEG}1(A?j!SlBMPi^Yq8J^zU@+epj7v zDA~{YWd*~5ZEvjuvV|l69c&MOd}VUq@ymR%({ANi^MUGv{_Xc$pUb6mT3Z? z)D)L6C<+8|w9Io;P+7vXF#NK$M8QE(^O(ZJd*k0nFa6$s_u|>Ct>x97SWPM!BtD$q(yy!f|&{h=qF%QvSTc1zp$HO?uLdtb!4t>$+Q9eqCk^v}uX zQ+{|h|M=-&ciCx~Sp$mRqv^mFAflWpz$dzWg|N^l4Gy%`e;1(nj`Y#XV*VhRzcH?ay`dHQKoZc66R{4MBq)(^3 zysXL}?Tf#A>dVSt4ej+0I>qBWHN38u?kd-Pn0~#!Up;=-$=&kxUIqeB4i&2xAO61X z>88x*A1}VCyyDI8I@kQC&pFFtrTF~&C-2r*&G^gi^|8XXoT7fpJ#_4ZBhe|FA)R)mY7bMI z<@7!prlMPV&i1FjqfWf8S`l;Fj=p6#t~I=4KFgeDpvZr@WADY1=QVR*1x{G|@be26 zr$FyhTfDDb5V4IByK~gYa@Q`4u!jW}o|~qfkB!{+t->bEq&W8a#|oQ@y>U`fQbI0) z8+%_=@7%dF%wBv^d1Wo4!No9_oaR1W?7`&)R?^6pyU6W6U29@dEejtdTUc64-n zt!%u!GjrCJt5+kRat6lc`TyLdem(jg|HSFFGi57_I0b8Ca@5_|Zu56}7?NMeEB1U_ zZBXkL&Nq$6&RU$BR=7Ee~(hz?_9QI((V4Xj9QJK z+mC+Ty!8EqteCYH_W~wueYByo*3q~2p)n8h?Cp(#V8%h~aAl5vkKFY{p!8K2`% zOoaDt4er$v;W}#Q(!08!H&t|M&h3qp?QE+J^1f*5{79O)_1x1-mbp(jd@iTl4ey*- z*St``_>gUYc-reAI za86bh4GsPCYM;Hzodpvwmd>r@p8nyu`+rvpnc1p8-uBxizIf0$$GlP~{QQoNYPp&t zUiPJ*RJcBU{_*8AD`(TwX!$cq4)^cHn0%F4_w(4&KM(W&`)Fwk@O;`k|KFjmh}hup zpX63msb_pFKC5E<6`SFFCkuxJT zFRzLFFFL<=--i|6*BHM4c`5ks*MZnCZ|_caf49H8mfd^i{vX_Nm9K5T$?N#OTK>2C zJKF+E;?q*syY1^=FS=ITXq-^nxgxA|_O@A>y@ z>-Bq&_MDvj;?_=KXExr1i-xG*Y3+&Q-+uRlbJ)7bGx1^a!x+*(dPW=lZltFN6*|`V0bWrqv2N@ zTiLsNr;l%buF83_a_7#N>Z3ebtFwO`wcWq{*7ilKW<|f-)BioLX42~Pm?0w@)>asY{s$3`SSZnalyUPC`{PjaQ&_qyW`WOOi+pczUE8kR$tHOeHDAc`8s<}-YC{De7@Ga@Z1v4Kfhl-=WI)QduwSjyWY+R zF?=#QPtV!gxTJ>qxU5^V>e(~vcMpHo+Z~!Z-Oqp08pfJ9{rx}hHrE)H@7wxjsrkK! z*5P%{O@D0OCMfv9)&ksm`droH8uRaOZr4liRlH~3mecLuc2Ph(`|tdJP1hebwyoBi z>-T+<-k$#_bLLh2OI`ie?oW>1T&t1?yRz4%d}=A&^X(mbU#{Zi8v+amq~~9>zpBD< z)ztJ_Z~jMtX-bl&>%ufd{%5Z!+zP57M7UZXWh^>&m8e7Or z6(<7SkFM^p%NF0=Dx=+fMQLx0x}|<$PK%A^r>)&T7v;Wn+I1)1#dc4e{<6%d^}E(h zoSbR$JV5xoM( zt=->|kvmK6>({SgA(cO+9;)oII(g-r)$-tF9_qguHO@aRdib^K4p4|t8*7BP+ZGFGO zWrNrW;n)*zpMH_)kM-IXpFDeVGV4pOjefT+YOgJsH24?VT{5hiW}ZXbwn9bLHawcc~l zYX{AFPQZ9@Ywg;eKcA6amB{3ykFNu zZJ+n)l$ZA119i0;FRygQR)5==akHz%ChOI!8G8!^D|cG*NZS}B-rdK{ezAdj*&Nrx z--lXCKfQVCcP9FeYtxBL3AW;A`iD$>f8AL0D6aY_56|T%Yx&bupMHLnou4ehwwy=a zE6=ZJxBl;vuwAmIK3=0s_3(-_#E%BG`B;)3REVk-1+wA+SGftyEc~p zZ(Oo1n}_Achs%~JscA*0J}5f8nen6c-n4hqqm3({TYXu|8n3hYSMQ4N%Rh?=bh^9< ziMdmA%)KK+<l48Wo6gUBtX${F8KwxZ{;brA-g!!B4XbEqXwBYQ z_P4i111{|hK4i6C{o90~-GCy6&a^YeACXyyBJ6$y;(6?c-zYCj=QSwFRx}-ZsR%j)JtZ*iP`1-*J`#l{@vCo zA*LVg7+Y&=c{B3MB(+Wnn+5WD+h>brUyE$on(+MHUWqoxurxJiHr@gqZ?TVx-vT^* zb9HyU^Xg(#RLhxRRVgIf-7R!&=CYR+ecjutf1WL$v`F?$^p=*kV+_lWEuTe{_%Zz#=g1Y=h^be4JnfQ>z~Y@a(hXot8iA#+5nAz(*qu7!IJq!H*n+lzfi8> zx@oN0mRY4*2cxEKx-9zRNSV{E$&3AOAB~MHn08cd`O~7hqLA3gx@oN0ifvtAlkTU? z4AAozGfZvt;h4EeBv(AT^?~l`)89C5Zd#-HX`*X>WYm_^S3Z55blY{w8_ppU0JA8fU9*4XZYK{M@)RRyGp~t!knUi)$Cig z?f8NBWgT(1rPjQg{O9I6&+q?DKE}y_)*H`o3yyOXzlYyY=@nf3YN8=mgJn`a)ketK6| z*A!tMd9I5YQ)bPQ(q6Uq?=P+EzYADTgPnTG<$Hp3%e4;AJC-RlHRL{b)aTlRoWCuzj_VcO-hcguvcEjnS>LP+F*Dnv z`YvxhshR8jdd{V7trfhW7Vf`*iEBj9CfwM!%KCB9?v7*o@7yTdx1oFHoSqxzzf1P- zh4q9)&K6W`-nNomOO)&AM2Fth{pHivMmd{g85G?JsEJ#z+TlCfN^<+{qu%-Z9#_;a zRj}_bTOE^o-yC_po#BR&UOb>(@S=yt7PW z*X-?i&woYd`+Hnon(SU7)Hy~q89{P4XGUhsI@YkSR%lV}|Ia6%OVnLTXq#`+ zv0T2kI2Z-T(YKZvWtv_p;4Zcf)ml zBuREpU%zCb;?H&Ag}=Y0q^503{w{ZXoA!zG&X-NtzP&!(KL6~|BPv4uEEi;={yYmb z5XrMkoHOfI6w|^9q6hzEBnx$KskXU%L*l{L?{-g`&p*4cHCX*vuU+eAwZ7yd6CD41 zZQNb?#NIzbY5#;9v1iXTyzS%O{H?u7p-fmKOTy;oA)j}Dujre~uBzm%*Zw%$$jx=mQK_zr0)HFZ zIOr68KeBOo;iZOuHea{fZ?1csCZ->M@Kb2^&#K>jOKM{DrmH5GYrk}=i;Fw-tLcx8 z(?Wq*t5ToUahq1$yK`f`p}>QQ|Noe;wGllDZnjzcvxs_}^>slXtOfTW5LD0={we%& z>}r{&hgi|uO}V?ArcLNfO_2-A1iFaY~LK3rL&}KPs@y~S!qpoa;7ijJ-k6F z!}{%XhiQje6XZHwI9QlC53QMC^K_5v-M6*QE^%AA-xO7M?K!gVL{dT1nN_X@yN~SM zbNJ^P(}N|ut}i!VJN-82=9!(_`2%M$Ux-n8*Zxu=$9v+I&h=&vmxHHj|5D#_{<6l} zvkTX)(_5*3YLT6V_pU|u9gmf^P5dlmw9jJNu64qlE;^DCQ&hK2T^!Z@Pvgk#GiQ8O z=bxO+*irZPV?{8DdqUis7__K8I{X{XIjXE(P;DL>E65V*nIJKIxWO|Ivg<&(DRAF;b-Vmb5pkpr#o zKJ0N{Wqi6}N5We3$*)c**0bGs8k=DmwCTs00xxa({N);#jlOmIJ=yZ@#4W$ltd;)D zg13i!^$LxP<~-t;YW4T-v@I$ZZ5G8dYXxY zv9Ivqp7S}WN7yrOUHsp)AV34$xBqef_z|BU4<82<1!#zLDYr_6%kRH(?W%G0Kc;iD z3apxceNTKk>ubfGymL0SGE+mZ=9Er2=4YMCvi;8oE2}b%r0etc=G@;o`_?Thr<)JA z)W3+`lam_#zDxP()2S@YXWjYFoj&V$y|j%->cISWze+DvDbD)!cVElX-+VGptj+J8 zx?+4j;ntPSlEzso$$pkIXWfbt(~CV9|L^a8m6tm$l|Ig%r&oSiXK9#7=w%-P>(oVo z%>CAuk6tbO@NjwYjg7_Pm(SVG_FUfobkE7jGm4I}oH}*7^5@#}%CB?zh2%s8a?Lm7 z%OBq+Y##78XOmi)MFU4Dkg>U$SgGzyx2sIdJ}b5E?lGJ0{Q!HW9* zY5k71wan4wZ)}pxyDlx=Xn0`R+S@m_luEDP|6egY)@W{iY@O!y_}{+Xo7S!9@NJkd zee!Ih`AvUn6v}u#xB8zBU%znOx_QROdLMp#9;a3^MX9peZdT^*gEqgOB>wqyOg`|= zz6qfAZ0&VDEv;7{f9}bYpI(ysYrpM3k@z(cM_Zr!Jlir+`NiGE*5bal?Q^TYeYmk% z-zfj0IOogTqDO9hzO(t$ri?yxv|V`i2)%IGs5=1X>m#{dwcVG z&a5?OZm>u(l;1BazLdVJt?l~jg^Ny2-e4ocSNz|(-zfi~ke>R&`P`Wg(VI`+uRPt`m;3x< z)e7&=QP000|5cK+?Ux7lO40Tv(8y!gV@MwpJOU~69#Ue>vy^(ARc(@Dd28*Ttm#4v zGlN2xSDpNMJ2g3S-L%CEPgS0*?D*8upy}Q*?epgDlb>q$hA3^{hq0{y2S4N*(Lj3Kg8ahJ2Sw}O{AwFIH>*Z zWtXeHM||g=_%JIaEp5STtE*S9a=z7+FD~@qIjkVU75P_PhA;Z!x~Ij83+;mT^RYEg zW6}AwUtrnO&rVO&r*T@^3vfgn+V;Y@$kJ(x8Bg=4PerR%uReMDw0HD2v7*w@P|=AV zM_xVt^i#tnu4GkZBDGa1al6N3Jr0h8 zyJl|7He0lHrb5*5vJ;V8%=WTAC~baQ*${BUe}$o9`(m$E|E|vo$g#iXSAX07_NA!{ zg7=C)_bztYvS;nye=F^>FP&Vy^y$kdm&Ii6S$uj?xZ>?at%Fg$t3{7Xs77kbboMru z`h2-@=I*k-nU9R)<}GzumKl(nAjI19s50()+A#rEG_V&3!Rms6>)?)kmH)GjagQ&iXPmW%biu`k=)J8T`( zg5<)9rNuY>&cBOgyz#goF5+kS^$#EKRL0cY+u0*!sFR!dub}X_y4HmA;_I)UjxT6+a!me(R<1(Br>;vClu3_U(^rU*)U=$Iiy9>)hU4Z@;jhW!~Lg zR&K!=GpE@*zkV&{#oq9%|EUpPo5gpoJi2y{lTV< zPws>=|DB^ZjrZMLWwrb6x*vyGd~1Vbp7ZQ4R{4GA%#0Z_99z!rEZ?wZ&hz+caH3cj zYh|2u!~is|JI6FpCf2(A(JkrxjcswfyuB`qHtxFj{lnrbOK0dTHhgerSy|EMCzH zyVWU7B>8|)jB9kqU%^G&?$j0ilbmPJ8S9YuK8!17S*Ij#<29ANyNs*_bMHu6i$99A zdUh*oXVjeNjYp>)d7nLf!m$pMBq_y}0h;`qU%GbB|9x^%Y0}KRyAIcRYV71CB_&yy z7+=>E?7rLLq`3O+TMo{sc?pg(&bzPZyRVtHUUZX={wcxRrvx{)zFGfzm*~w19p*Kk z1wCFIUzQmZ7v~olDQP#KfByOQ`|ppx{~ledCc}66!UYEd2^E3;?N7f}eXQDh%`#>B zil^Bve|II%PdUi>(@N{yb`KS&(9o%+xgt&5XQVjV`MX$moA@PdmR-)NpYld%hwa?U zDnj2(K9$DmU4L8l_-ob5_3PCkUF+A=Wp>8AlP_z$yHGHB{XyFcJ0`ZA6inKhxy^RY z2BpaCkKwXD{hlJ`>oQd2VšXg4*7O%OYWhnAZI4i?(gWaL~-=BI~K1ubfx7ID5 zCBPtLzkd!(R`r+H(_Up9ubXGldEZaC&0=o(%Tv2nro43)t)2VHJG4z2kxb z4~ru}(=MP9ihkYQW$%|R+SK(i+3)Du3$`{`4ht%sgGOWB-pv&;FEvQ+P;(%*jD^6sC!^*KHxo(5=1~BbpB?@bdQlsEONE_R^)7yeI2ngO?LJ5`lGVj?;NpApL_7Od~KFzuc&CK2^-Usl=P)n%i0n@9Q~v})8w7W zx_N~Y7pL4^?QYJ+&9!3Hy2SVUm@}`Ms#|lmsTn> z%-){6eOj+fmC(=1ohBw`pKk79-8kF7u{FITV8bP!@`)-lO^-!{;Z0sOi4|hG=H|Yiqz6Qi!Md& z`?k8*$M!YPuF{v2w)A>me|d2$%ViT#UohtXkNK;_2aiS zH;=E8a|cx{2TX2kE&m@l`;Om2P%i}108}^1HC#7ssYT=w(fFB2H%Hf>!>Wz@RW6DGS>choP+v6TO9cXM%EckUadjdP}-aGo-K z)xM(2Z!30wd;4^oaM7|GejTe;9@&;*(slajrbYj|I<7b=Oh20Wd)usQBEB~sf1EIL zW~S!_rF_K+x4y@pm{AmxyV1wxHDCK-&Zc$8A8$N%w`fYT;KyqwzDBiYd-3^I*&G4tZPer(C^QtGoO9Y`J3tmAAbMkti2%D zD7E2~D98n#6H1SMo9NN9X3de#15f`c`>)VF$6wgn>9+XF_3OdG!O3rDYlL&$Q+l*% zkH1p>@2$u5>Q22rYP7TN+h>nB{aXvrP7BbjOHyC&TBc(XrI;+mOf$4!o=>IIHsYlMYPR$o07clx*F z>3c$J8P5uDRf=ksu4&z2wZl;BRPv|l8{*LiF~y5i8Gi&U z%~lV(`ZwT{mC&3O=lho`%{9wATe{Tp%8sbQHGz}19uf?m=jmzeV0^*n`Ffd^Y0{bh zm{tm(_O1CF4r}Q3nLYZwqGGl8`d8MgoEBQx^u5~=wcPjpmA~@J5?mjzwQt_>txK{* zTQl)c=Hi>1%jYki@T~X#hF%vXPviB^pQS9`9du?^wan(1uh+`xXfF=`{;o&DXvWm+ zYpP2Ne<|A7n_mxP(p|kmL4ae@#r)`O! zzPWGS@n;eD%#vRcVQYVDCGI}0XTu+R{b$kJs#V#S#j}G0BPRG)riNbnG&TDg^MmhI zg`USNj=!^gb94Lrd$yPIcb|Wz|K!-~b*V2NG;Yy8vD`_^|FX%lxy5EPCF}lu{j|D8 zM()`8vnTyd{Xg?D`QwheIk$JN{%U=fjpO96j0fL;$}CRomoaN8`&pTDbDOf`vG2cY zeWc9WZgPuRx_x?kYp3wen>SmW6u0Hv&(n?H`%k-#PwE7yD|vI~dUct@3!B+4Y+Yh( z{r%0;)xNW5uYLb)?d=~~m&Mq=y*=BdAIyD|;q7hF59`_G7Ze}w%elRC^6b3*vp0R} z65B4=WOQU*;B#NQ$r&c6)>zIr*Ztm=9d6>dflcGY>7!G#j=gtQ(KlE3EHn4L-1TSf z%!v}Em1o1HSLSCVT4w;S$(5FoH+SR& zUOCmZL{Diqv zJ(Cq?eEE4@qCaWD>#9pB+}`_ReBaNzJG1Ovid^lZnM>L=N@BgWop#-R`)Jl_eMO

    H1fKobUiGXGaU&YFMybm(P$ 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°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 Evs&Y+1VvUeSf;GUB`3vt=rmJ>!<%& zlNJ9xek#MOZSCQ|PrnV&n7hX(bYA%1Cr{(v?>+U=YrW8#qx<*1TDEHb4*zMXy_wdQ zhqh?ESouo#TDaJ;&`G8#=e^4>z4uX@Jb9O^XTY1=t>yma z*ve8x!&JKN-fgru>&gAKVO4g)DJ_FqyPBqix2jS1^q=fg?o0nNn&RJ`jLeBV%q#jU-L{mu{Y$@@a8r#% znxo};@-J-zp05^RJd*wQ8$_J)o+lkY{qo4_yf|Twj^r7?e;$1P`RTpGH(t+~-Jk!& zW}14lfc@kXw>##mx-{N?Z9GXrGkTw0_v1y@a@B8_-!OakZ)fF>r@J1{*m3^d{dfC6 z6XJq_MP)H_sM0Pj51EO=xcr}GSAZkT6Ha+sq;ktKB$3v`do8G{M*kz zXI#8-U{BW9rkVXJ%VAFXet- z{N+nznd}dy+l4Duu6fd`zC9=|?9lJ|Z_m|o+SGsZiK|G`X78K(;Ii%SPIaLvF3LL5 z7W3uz|I^xE_g?u{Uip)6t5u{HF5EV)T|VmM%Foj+N*nS9Z!+3+7#(}`)za>jYc#^WS{NP%bXXck&A58!#MEnM zbwAIwFS(Sdb?Q{br-{8a&zC;`@$>fk=Zo0&=UC4MmFf>J3fF8Y=6~taw(OTxT-B>W zw)Qs5@}F7j_SXM+J3TXd|KaoZtNIT1vBlz_ z%u9@ZKKgg9{kmYU%a4@zb-#YGbF@3HiQYNq{hlu}_5W{gmk{`Md{Jd_McV1KGTA>( z-}AQ!`m3y1r;&bnm+78QXCCkQ`Z4{xjNs0F%Vy=<{x?~!AMzP$Q0kATRybKd^; zZRbsXR$RAxS5j)cdFMn)-(D|4(FZHt<)8gMU-tCat8%;|bx+=+MBs zdfMl=;`1IZ-(NesLW$EM{y)R?bz48}4Ud1aw!i#B)#|+u?0(kT#nl%|w`G2M_KUFq=k3pOur|94RF&_aQ;UrTNFRWdJhm~emJe%agGG<7?led=mCeC7I+`Nhi; z4R$Z>%5bl`$Pe%%MojV?`_CJC9XjXlf1@2gS$=hNnrT}KOK+C#K@6D3q8oxD>x zU7el5O^xNnl6_{;_X2eKa#N2dZ}$(KGJTSd>eS!4QfynVhO)F|ytKP~{LC`9ZFYP5 zx-JFT-P=0-U!&uphXUEtbRQmHzyA~{K0mA3M_8nbowwgPwfVT;r<3#kRwmzSGu6IX z{zGD0?qsjZ@2Q6ycD-6*qc`EW3MW z$==Y6{{o-WwhD0OFWtO*`u#oM4L`a}I@M(~ulh~kzMpq4|9Lf+f9l(ZpKf*E_DH|9 zvrdeMC1QKgO%MC(_KKvE`@Dw}-gYgWGIh#_kLULC@TC4exvBN@&*tlK5A*B)?%wnI z9;ihNigr1hGh45jOp|#`~JV`eq&qHbN-ubLV<-_YNX`r@bwR*&)Xe+Z};!Zyv4iuk3TLc z`+g}Vp8cT0;lms6ypPqXE>g?*v1<`z_Pm$V=h3?^7eARUe-E{km((x`3yrX1}Wnd=_?f zt}`s1yfIgrNBA_;X|sYmks>l5X7VxG&vnbCKJAZpYj0QOJh!;X-uC#xwcvRf2TgqE6i6)JIMXLbf=Q91^+WHKaJ&01 z$0oO{d+Un11{Kas-`Qn&-up#(ujQsY`pX6H-`+M?TKwpqyZ-_*KDBr{Pg_0rR{uZ`Z97)U1jY0)P*->t6f&!dTrcWF>l4MbsCl3OxwCG(oQ^{YZ2FRUG?fu z^=YexcHjN}C|#g@=l%ELb$LOt-AB!|o<+TH1uchAkJ@z2!y=(4=0@@3iM(yS4_|oh zF@-i|K$Pa0@c;X)BzQJt-BhakcDuZ2Vq1QBpWF63-)<=1$;f^_`R?zci9YSgg?)3Z zoK1wDO)Sl>sQ%5z5T+Y@W~1?Q%kr05dB11BE#GmoF5PEmwAs4H@9X~Vw(%^s5PROs zzwPtl>-!Eq6i(l9_ol0b$fKFMvu}Pr8rV0_ZnpPqk7YMXKX9B(ne|-${vrRmuW9$h zk9R*m|1dp&pZE2SEj$;>b~nfG`OFBaX3FHPCJ9fuzBcOIzQf0Nlx^m1Fe%vjRV_R^ zzi(Tx!U1moyu{=GoGmTI7i_O@c)R=i=eg6jZOnPNXHTio#e$Y~^Wykq?PpFt{-{&s zcKLf{Db9_lkE8DWcp%K6rG2XM)x_REUwXG^iZAL_n{@ZjyT$%LA8wC(w$feh+1$6* zoBm!lsQC9$SH`lk?XP?P^H2WEHoX<;b(wMV%8b*`U##4m6S;rdvo@=|yDw#euP>Lo zd1Ckcns<`5QAeFmPcQg+?Cc)1jQ1~=>`l)3XH=Yi_QCV~z5cJ)e!H_N!sg)m`+qy? z|24ngkn^ynZ{8`n|L^YE)qTEqyfQFfKR!S8{lmpJ+cInYHmzH?CLyd?xc+aqdC|*X zY-~5{pH#%%1U0!2tNT6Q#+v(p10VFIOU8Wv`ChSs@rd z$HrFe?4g~TD>IG;{hPo4Uu0a%^@u-a`87M{+E=`l)`{QJkeq(5_omt0a|M6iRKChu zb#q76QltMDcct9en4kX6(cNa^lg+j4GmIC{WGzlBeiCBVRalwHc|Pank>l3ii$303 zv15MkrQNgTYd)twJCpP9)YsXkin>&%d3<>0KEG&rvB{|dn~Nvgt-pQv<$e3c#`gjz zL%M9+`!=Qib^i0`?f2tP3^%Wwm|<~b>$PonHr2ZK6)#>}`{iM=&B1le?lbJG#WqLJ zvMB#4HDPN1{r@@Q{vw6JUlVh#jMOyGyL+yCmz=*!<@?KXK@-0z>RC7T&R@MY zHzqeX`LVP1&Z@_1>gVIXoVmP7=UnVQw{(B`^Eo%qObkvxk@7CKgtxWn!Gzsu3`Zt= z+TAXn5b7fq;T6gRbXPKPEnL|5^-G1GCAtCbN_s5xb_kR7@ zyyx+*=iQ5c{I#1`pQK&?xBLDh3%-R36F@E8a=V{%yszgy`Q)K8Ip_Xf`O5~CX|L1j z{$2ZhW82w>lb8QIXdb`J$8ciX{r8Vgy30LVp1)^u^tZp^@k!4c^*V2ktH2goj1_3qNXRS=G zdbc`sQ@_UX4yVc5Hlm;RuG0?Q6?CDZXzuimwL-NikzpcUM|X9mcD>%yqGsqn^@i#{ zZST;exgkYsyp{xYzEWD0qkH;-UMows<$I^5-8FA=Z=XAPO6z2lPW;sU;Z_^}K1qJN z&VTvkovC^IT7S*G|6W~!M~H{*kbgHtmX`a@u)mm>WK5d_MQj+uTKHc~2k1Ztj3Akz4r0HmuEn<{B zZ15@jZO_le8GDWeSJsr=?>-)4`mlMo-=FX}wRrxJ3+f_GlQ%cg6^XIp(DKtnl=t*SydRU;KfFa#w-L_theJ6DOJiIBf z&*9&(?+*F-?|*dOu@almv;WQc#HSzi-p7dk3yXbxx7bx?{*lkld-zVy*Sz!T&Yq)h z?`~PNLDxM`d};d6&66$KW-OaIdF#{1s_u8EeUHx(FWlQ9G4bBr^pAUY%-ubI)z`&7 zNhVdjX_IC?%CrGB2td&()%)yUV*lsX9iWMZce0laD*s=O^_scOL@M>+oSSd#%bYa- z&fQngxvb4f>7fBb-DMRCjXb^s#^U&3X`c^xmbDEg$cIem+ORA<4SqLWUy-jzJzyrz_2^Mlj-*?Co) zOW$;Rd8fE2&#@?XoVj0PDH9Lxaf`}-O0%!6lbl@coXZ<3DjFk_vN!3&&l*?x`kB_T zv3GVEhaK}@3K~6|=~|rreA?G9UqQZ@zHVz!VAQPY_viju$<@u**RB^^uxrsAOWm_F zHg!Qe|2>Yaj@()z`0PY;OZxV_wEq)@E1R}@=l^%m3;J{S(-md@&BgZ@+8n&4I?to% z#}i4pyB{vtPGu~3aN?uk{KGn@mu>xP_I2ykovGc=&L(D99Gfb=wn%KrWl6tzyAPZ? z+Wl^)o%7+1hP9HL9=j<#SiWhIOoOw!pJDzt9<5Ve$CuRBd}gz|U2X7QB4%%4@tMQF za*o{RlUlkl)k5z1+qc#~&e#9v_M5-|M3*b~kLUJ3`0RguGhZR4c|Y~@FVi=FA7#u- zc&p@ofREKV=l<4urzX=B*Sp=<*Y#WaNuGZ6;$^W;q(Q#ZPhZuSC9{;(&ud(tyT7J& zTHCKXzi;ZEjR5oXE&2LwQ_{sI!_4Pr=X54I+|SD<|=X-tKmq6tli_!6cdPlc!(rQtdjrD2My!MN{spv8q1e$}_tv zR~)IhYIowdT=&tUOHqn{>g=aZof;Az9vl|tW+8KK@|wGUd@mn)|6Q1?RYO;I>8e#- zr%rkO`M2@>?x+8h-_PdK-*_)J-J0$1VaB|#ZZG9{g#B4gEa5rPaK7lnZ8OHx$MSE^ z$W+LjAY~@`;>*RGuaZ~XK6q-ydHauhwIi#)DqCLKaNF#icj>-vriC-)J}HZ@{xs!w z$Uo^5CwB-R`dHyBVEAiW_xb0iId8nH`%$yca8jvZ(^jLqwsmKw+>Vh8FFxv#ylsY? z=`?ZUw3CmUZTdQzw$8Y=_H%`>^c~Yr3k{Z}uKH>*<#^lXrcy6~HSPi1-0C@=`*D^X zQ%H6^#g)_|F0kfCi~TN!!{Q+#W#u=voxO13#{Kys%{K4u`E$(`KkDZdz_HQ(^y8T} zFFSu&x|Q~dp3mKXf4=zFNU`mTOL~bZQ|((r$s+c{~XYJHmRyoM(BRE z@3jY}=R~V{zJiuWUYNKB-rhYM&USp8q3`_@XSdG#=(G4@#mL?TUG`e-&_aRb=i*Z| z#N?G@%&uIW;FTV+vtpsq{Y#fLM4zUz?sq72`xkui@_l~;fdy-}w50fVE#-bz7^GOT z`-re7&*24|_ViRJ9o*FV`NfNOCtaWGwK*U6`}Fwz9~FqHx9Zwmj4ab`pXZl(wpD!I!Sr7iRljupGB+px%JmHuotC>f z{qr9^_!xZUddTLt8{L11 z+yBw~|Nj2pIsXKA+6i$Le*SjjBy-4@Z{MrGy)XP|Q*Nc9-KnK4<}V(X{2)NbE!f$1 zSz>}UANTXK&z`-tRtcW`KcV*D8p$vGeA>sEPsGi?WoHFVW_uiN6C)!?=2KX)m6P5rdlS>G`%?wRVWT}D%8yG`p)x#_Q}zB5oW zRB3}oNq=~HppDSy>8@()|DgbZ4F*IC1}-T!KcnY?+7Zd>gotuTN869_l`}hXXPGGraQZqT+Vb- z-v4sP{f&gz5eOP0Kxmh(+p4M#F)j6G1 zQ88oEq)8`p1;j&LUhi3PHP7`VTb9R>$il~5Pdne_r^`71`tttYlGK!)j~jSXel?}Y zF#kWJ(YVQV#=jz-?RdN*qAz0KjP(|REw7|>-L8opuPd}EzJBuY z?CB1=apFgw9_@L))9ljstFtnlysyFQk!RY?k1b}{8Nc@y07dW}dnQKtl_gx-$(qWs z#~*QSdwEs^{(d$7r@D^5Cwir(ej+JUVmq^qhSKn(8as zniwCQT(U`);TL<`kA&lTInla1d)rfQ-k8=}|K#+CO_zk)lJDiF-8Pdvy=aRHmxF8M z%@&sIhIRMiZsnD4C_8FYCijD>!NcOnqo2h;KYYF`e6PLlom}0g)8-WwXSG0Md@D<4 zafh!jd~~L=iv5aGy&=!>M?e17)$F^d|F*f2fw$E3OjhP1ohT<0A+esP>5i7BnEdSLM{a(;v!m4dd+PtG(rf?R&A*@Y_|?=u|5ob@b*o!czvNne zE;gZH$$hq_x}cX^o`2k)Gkd$;ubh%?<;{kR{-p?g_{r_{f!W#lhVrKGAs*L^9tLc9 z@Uw99-sa8I*WC-f_eoiDer8Z~?9n-rXG5k;7wmQ6U}gTn>Up(LrcB=IPdM)Sg2Qshb=R6&Eq#mKfbzxL*D zE`4lu@9&e(6Hi{8+jKm0m84u>vXt7vhA5Hx1qE(xPbae9PE`%G+FiYT$%;#pG?<-R zk1tucP$D%|xOzeSnYX7h>{l;Tkx~@lxpXJs{7vua$L~id%=CJ$q&a2!)JtW%4;!z| zwdOf4JjG3UXKHxUp?=3`L12X zx3lG9zy$}S0Rw7*mxC8Tn#8B?aoOGJVY-RonJVw;q~#i#D_ImGJA$TaPJg^k__hAC z#X@V2?pl%JI(5a<&~*{@kzOL7!##V8=5jC0vfjAwop+Cpwj6Whr74#yPQF`o;^|fU zC*LODzNfA0pfvHoCY?WZ_L_;0l8zUC`29B|Bt&3FOL|gUVn9%klYzvN{rm0pFXb)# z)i+(eA=ml8Lqmkl@1EmFjupu891!_0J8@<2#OLXe7jK>Hy!OsWr{liKhSf5Mdez!2 ztKR(i_vZ7HB?d1)R6LrWd)u<|yy)ViCaY|Y?0fwA=dlx8illbhuPl&hcTsXQkeIXW zJb2l!OuMGgQrYw7M|0m<9C`dPCid>*7fRdq+e};W>C>duM^odBwtDTDwlp`eX{%26 zy?b%5UcXk~bKli?UIuT1#gt=7YxdR6{Ny6z{KIf!vvC-E>49Shi)4b>0s{Ru?40P} zD%zI+s>H7RQG3$5=6LfXg^|-5k8bp~;eWFK?w6u@t!fGEf3zvRT+wU1 zs7F_c>&Yieb?$3PwRegyYR6wq*9kP6{@Oecyr1L3q^)j;B>px^egD^Ncf9b}|3A-s z-u8RI8Zhy7d-iQ8em`IKxc0HRZi_G8$zS$x->jUFGwh7o$;pvs>3VT`R!W7{>EikM z_Z>}ymhD_PuU$UsXxCBhpC{MfJ5zllvLnF2LuuxrLWShWAHMG+<9HPWK1`O;O>_c?sPz;}(Hr}gBM zPg=4?+Y%F`-2CLW%38lqbTo{ZcD8Y`dd1h9>Nl%@NX+zU6YUl+dU(pTO-&}G3APsCe1OIb^*~mT8I1cYUjJQ_FyrI|uch5~|M-HfrMJGlQOW;3h3Owd zTjHJV?_UJHpPEwz)<1N3M@4Ld-u3i<9GS zZL^l;Ir`|#+?!{Pt~USh+vl22{2~2&{}Rp|{tpVhlz%Z%`FEe4>YdHQd)#ALu+6r@ zzb&u+{A|>(NV?qi#^>$3o7atBsA#3rhZF%0mKCd3En2^R{fqmS4cj|%qc2<+R+#$b;o)Pw zF>kxBswKO=j#0^WTaxwZalMrCwv1)h6{cT;4xwtiutSl!)EccZl7Ge_leo`i{G!#VsBmf^XkNB+DGrk?UOxzaHH%op5iVZ;m(!) z6F>z#sGae%Xz{;KD!&U({C%_XVulI7()Y*ve&sDz^fzO6cAhfL<$cz%=Mgpsmu8#) zczRoY!pW3~%{he^Z(j=wf4ZpX+gJX8$hdbuQ`f#UUb$}7lQQ?`Ew5K36;#aFJbm4V z?(O%~r8*7rukkQc{r>H~DBJ&R^Te)CK|0!p9|V{c6;->7Zw(Ed_p(;m*zx-}-kvM@ z4WBM`y2i5ZxOmOaXl~lOGh#K%P72R9-}JnDart&(rp}bE)oXMAeB0Z<<7VA#-qqoE zO5=RLZvFD*`(&SGA7-kp-}^yFTrd9d_4l<$KtqS6%bVZr`xkR1Q?&2#g^O3uF0bbQ zbd3G>%}s^64+9E(c0H_^(;dG4bNBZ9>T~@z=Ul8|_{H9?sjVydov~z{&Fz_&UL5R9 z(GouzcPdoclUS1MHeJc|sY`z~^{Dq(I)93B?o*%d< zyk*<{WviD@uRB_oW+c|$H#g<>HFw4t7q7S|&0Ms2x4Qn_RZF`gwpIx4uX?U*cW-O| z>Fd!uFJJYI|DSO0%$K7A96vml1ucFI+Gk@QYjW+Xp-i`-g^5kwBhE)Rf~^l1xR>)^ z4HXRza!W6NzvJ)LWt)Bb(JmD>IDskQuvkLzk-@jP0Yt;eUzfzMg|-YT3m|JQPoMg`W4##b&O6)Woci~~#jX1lJ*7HE zGeGp?mKiI$9#35>Wb-sP^!H;W_ws3}>VYXj*H3;eTB^P?r*gmRou{oS>7q&1J73=2 z<8m-6FFW*aYNx-Cc2~@%l$E#C^>415utv|w!eWMc^{<+Jnu2R$YwYAhLqmoC?QO}D zXWLa1VaPl`_3`N&KXkhtj;YPqsKGsZimUG_ubL^-e`sib4vu=Ze2b1lW@ST0WrIg$ zgU8PK1)coze0DNtCQj#wzn>&qV;6tVV)d%Y*VEYy{R{u69w~H@yS!H| z@4|lO>ozAcPDV}cf7s&}J7w-;4t8M~;pckmo_;!zEw#9L`;ItRL9kQ$j^r(!+s6v8 z@C$&Jz3lsBx_|w#EUq7FdCSeQ`6Et^C8-o_OFA>*pO6Z><=5zixF= zR^*#+W&AAW-NuoKEGm0^KrkP z$_d+2{>9kcuJ1VbaHG(2hU?7RRjC>oPzy<6?7dCB|T)T7yT{1Q_*V8DO;D;mzrN&{l&!nZWYCCb z-TqHAPUI@TS9Vx){Xn1OkGFz5Z*AlFy`V5{%F)@cXKr5B7P&fW#>Q1`&q7U2)~;EY z8OqzcIxC|fesy+6M6CDWTUJrqOo9w|PjNVK;Q5W6;>~<7`+WSk%9Zc$QkrkGvav>Q z^{p6@-ywek@05poh$%aY&vJ1ny|?4BpV3T}$tUk@KcBQIL09Sf`=qC@R*J2WJ$}+v zyZnCjRY$uzVaxctdqR`vX*}!x-?ihf`_z1`sYwY6|9?K2qWEspV*y{4iWi?;y(V*R zDtvs>T7*yey2f$E)Z0AFVZOYo+S7$++OyxUos(lb)2A;}y>|Yjeha(PlRZ|bIZfOy zxIX*S{Z;3cKiz+4`RJdV>%5#pCTH*5$hmFyvczh7m`(kWjlt7a9NqHh{=2Pr_NECDUfjd6llvLgMq+gAy}U zFKnE9@=G14jA(ptx+?zf&3nx`)o%i$q+T1Iy|`=EGSB2#-P7($f0@qYWl9OhZa0xi zO)FMbKR54u^uDsAMXR*6KkdurWo@?k{$p{>{+n*@;bCmAUrIlC^!2sP-qg!8IyQio zoK_TRxBJgadmyK@_1tXJ$r&o~OzT&#TeNFc)9SV6jX5okosau{tX^;9UzwR17q$QX z`8zXp&*WulMfjNrr9FMr8Yx-9a@i!(AYDv4Y<&uNdfPnzzM`1_hSJAYOhI3s?0TiO z@8cQanoZU9d13d@y^E{*#a5AWch(+`Q+4zEuX>AbUeF*@^XN^b(nEv$HSaRZHXJv$l!=<(elOsk()!J{IKBVncG1+OTTILfe!6}8 zvD{eF?r!yj<=b;kxg8L_^sB}$O6qlS;CjY;_czXNpQfMc7VJEaAv!Yf+_vL#y00u( zrrvC6Vstv_u+H{Q^6!Ivu_4o@Z%X=j$j0%q39s0>xo7{}G`?wiZsQgm?)~@OOH!Cv z_TOLL^DdU>t!(U^{WZPQ=hfBpypZH!i7=|y>n+_n?{>FQriR3mo5#&A-@E8J+n~}( zYp&8vuZwpArf<(R5qkL1S9(hF%GAg?`wC`GpIrL>Ksneb;8W+uz&T-#$%0 z@!XkdfByWn3)73N@Skk9W6Cs_$Xx|>arPg6`dnKV;TBvg`@2u(y!U(`HBI3~_oj<> zbi{RVhp*e1a84&{wfpyj20U4-v?~8~>fX4v_pHu+dy6Bz+iu%@J#n~la)|_6Na&Q$ z7d|cBnL4w_^}zeny^rhm&o4Ofd*Qan7H{mUn)2z~Ut8t+neX# ze|Yk&^szaIMW3eb`SBzf)YW_#QR8D--7k~;bdqaM)b3f#$NhRD`8T|Nkht&jr_ag9 z%J<(te`x3C88_$b{U&+flPh<`?xdAU;%EOtj@Mal6n_o0tqz?1&Q50sZ+zKz%IC|z zsJ<;4&sFnQ3$1s}4Ayg=^7+VguU%h-)*Kg}mZ}+WCw_hHw9iwP2J7!RlK=f@uh$Ye ze*Klf)0T%`%uemR`&u<`vD37xse-YhN2BxXE%SdytY|5VR4Cr=xim;ch?A+2AvHC% z^3uNot;74I|Gvq7oBY1_&vm(Fz0ueV=@N>zmgJ+4d*Tyf|{UZvXsEn~YNJ zwM*`R&ZTHcncvyj+u6$BU2r1h+^npuv}sL`CwQiL@TquyIpSGzeA9ZphgW5lZwjkl zov$$Y#DfUF)Xk?>#728>IMY9|J1h5b$*mtBlOx4WPUO6odmFU-TFrQZYni3e#;ilk zf%C-rdpopKe*gVvQ|K?YBXrX|jT^g@&p&vuAl=$uE$-r~rzXNPeIC>)x|O$YoNTv( zrRr*gLcg@qs!o+7kM-rzj}@%fIX^A<`tanTY$x`>s=3X{AnPRk)Q}u~qq|4Wt9(@IG`%;%>K2uYk zxc=*^x1oQ%WR~Ckcu{ouQxmN(wOgM#9<;9$I(wbFxP)o5jG2Vlu^YdiG+C5ediQ}Q z!9g?Q!8&E{PVbng|7_WACs6n8{py`1Z`p2_zkR%0-~Rm9ZP9mLzL68$o3&!)s-)xp zoOf>7oNn^@k8m_-af@wjt&6hYG~GGpXLe6N=5pMo>X**?yy~vov9Vvi@e1&g+D5u$AQ*(fL2uL#qB*;VB=Vs$;tiv+_S7~Y3pyYkMaz8nwN4v z`*cNF+M@cU)?ZKyW!k2khccA61k>Hhi?3p%dH-*UVCmQUyOqNN+>O*_VR?`H~o`L12XnU`Pk?63IE99RD_ zGHv^of~RiUFH72Hz2Xu(JNNMM-QS)n_3V24<=XN2A8&P^|MWM1-;t}*<{SUjf4iq` z)u(*+`=9i*N)fJU9~P*mdQ`sGFkL#$d~Mk3>Z)DG@9f_E{mq=a-)(q`I^pp5m^_q*QjJeYW=_;%KvqQ_o6ef|dwcyyw#Fz-L#UTzl~ zFSbZ{rO7vW+qU_(Tg9xu%e!6FS+sYn=-FPun(f84`L9j2{}X@XZs%71yY0&AzYPSt7wbtJStUK~@r#w0MFlVQ&$a43 z_RFB|_h<2fP5*h0EjE;BYrJ=^%*4#(!C`%~Y1?h@UGJCwCVOD@dHdeS%l(w4{1sxv z4>dhg%lY+=y+kL#{eq~cTJQ-`u8OBO)i0JmlgW$NCBfc5_sBZt_5h7pKORTRKf3yS z{*hNxwF}A$IJV_3-n>@yZSLA1FHWyFG!rcKwV&ssDCYlYeOwKjyWiKu%zS;lo}Ndq z-67Vwb?((My&bz zzirR|PuKS!SlL+Ip(^yDdT+$04eWCL?CbabR^&RmGMT5p?{W9q+aDfH z&MtiRhn1(d=b!Q(b{pW`#-OKy)I{x0y7mw%dG-y#)_kVa@-?p9Ey-#`W=|x*N z3a<dt*ng^}PB&8&6y5ACs`VyF*gncB@$Z?^E3t_sXSi#xS1k71Vk4@>rRpT>mlQ zj$^_HkLI8ynN*L+0!?Xjznc=>7M{A^#(vnnjntX*zE3Vf*?$9m0Rp1-jKAey+TD`zoXJ z^^ZTV-)CTGI;bF5|H971)Mdl}7oDF}6poy6ew@{$@J#M=c}%Y1ff@7ndn$v@fNa{4 zx3JLEQJ}d0reyf(O-sGv!aOUrZbpesu-LTb!!D-J%|xoVxY{{1r^o*VSKFGyY3yNgq9eq)SHcSXI-(G)o;36q3Z{pk}5 zSxa91uR78FVUpXAsHTiPJ0*p!+YjpO-g50iLI&HTlNGMJg-)N+)iSkLKfOt7Nmk&g z;H%Po8UkI9wp7S$JagyPryoBoqN0}lkNX=W_&JJu*ShOAFAw=7M2aPClwg>$_?{K# zvOWC5tyQ8)_Z7ZB{A3#RwR=^`&$6U?y;JKJFJ5eLb|uG~aFIIAQ*T#_9Q<`HSY7aB zn14X5&|2?{<=s68`B)#ke%G*mt!Uf(OKNNO$4DegNJ?sMPyT7AY8-1{6Wa1E(#7;- z=N+*lRwr(A-H&@G9s2Tf_{R7U-yDT!j2c_*Eqyo2c63}1-xvPr@#&va-(P>Uvom)l z_l-x}{0{Als6X=eNp<~EON~_`y{kKSGI?G*BI>;FCg>bz7Ds_2q09fU3jDR2sL+u; zKRYpIuFukszqj98Eg%{C#11TO8BIOL{@Pq=+KPFJH%xr@d^^|vA}8C`Ki&FKr^vnkHO$8rZCqt^TD48CnH;e_Q(NlQ z>y0Ie=25ey3G&HwN*@9c^CBCEc6F1uXu_HO@$OE((st>a_)!zg1_ z#uZkaP?x_Qts-6S$1!%YeXJzw2;{RaXP=9Zoavd zU1R;f%d<1GGY?)mYI~tnwwh1wSo&e*4R2Ojh3#6#zG1~~;k9RdJ(dJjl;34LvUKJ~ zNp08tck91cSly1gc2cUW2NfX@4EQM_5FLAw@phcDc^GN0&mX! z&GL&MU*x)Yo%8fIPy#vZdwTjJJDFqQxAz^tkm317U!?oT_3QW7W!zWV%_r03{$rwR zro8a{x~;6d6RS$L>N*5Fvxv93gWB&$L~9#PylZa1c=uvo&Ax{3cDEZIZY+E{eba6} znPUfjI;ILEGB?*99m?MWAp+;9<*JSx8MW(?o{>c6=?zAIk;chTvq|M~g$ z(iLZPeI+DkANY0lzS7i_3J<=A*36vkv-IP)UHTU#Rvv#ePtU|nsY5mRN5bE5(a9c7t~Se?r#wq={bG>-?H*ZV6<`A<3h{>gzz9?Li9Evr76u(i9do@UGtpL4S< zz@VemR+i%z(~WPB<#>Ag7A<&j`@4))Q)h%sca>G)w?hKka_+yZI1{1N`TyJV?FqB4 zer+&p`#O93!mU3I!gS&~8qT*jANNZtND*0<`f%_0eJ)Br|^^VM+MlG+M zK$TaU`*8+_ZD&7B=eJ*LB^S_Tvaj~LT}kPdg-bUI9!`FIqx6A+(8`pn`~`hqzdpWm zp~Fb_^tO-Jj?dqHk6kUP@Xzhn?-Pzra?QxiJaplOgx&8d?MpLrLTyi{6jwZceBMy5 z_u+$&lR>FESfz>C-T%?)wfD7OSK7rNm@Qx5x2%n0m-Q_{zSe?AUnFZjAI@81bgs5H zH4>D2oUilV&^xa^d*5$H`*+qI>%N(7F)>fHkviJA__+3~LbcgP)#Gy;uRop{wxRCr zT>gpYLaw*Y{mrjc&)^iJVzN$+BT3Hi`thsGuFT%GuhP>XH+?<&bmF$Lxa>M6sc>Ny z!~Pw23b*c=KiTEUmc4WMD`$G$nXK&I_3~8EvN>YYyN|qB^=V&{+}$G)|KfV~ycU@l zZI^F3zvznh@?wTns@ls-Qhx@XAuJ^Sh7vJTtqq1TEo9tGq)MkeS@umgb;%62 zgijimd90E%UT_?i{;*(%R>Gqb5;HO##aXk>zV0iD@v)mTWm?s2=Y(m!PaYb&gy}bI z*JP+KX83vWQsuAczZXgpDk^qp`9J!;-mf%J?9SXp%Rl8lu{vQE&R;7a1?hnI73r`v1G?*h{-7CWc)1!}eV7djIp^s@kJp zZFJ-I&s9@;FmWmG;T5xT8n%n?^E2JpSd;T{=ZTm1vS%$TQsSLA?Nw;a`YOK3+gGo= zcX7w88OjqGRy{&iQ#ErAIoqhUQ!os|xvAB8N zZPm+}GFEk)mYGNe?5@ywN2{Gw1XYqg9gW%OxaduZR-!SKIjf!o^viCiWg*Gg9e&b{H`92Yv$YrI z73|2GyJvmsZ3!9KqYqY8%X%-nY!Q*X_iReBg=qoba<+56yK|Lh9{Q(zeD$>c>lL=f zJ7vn=*+1EFZ(A-;Z(m}@mThG^ll4V5e&1kKwbSdx(;b|TKDrb|t&DnhdsQ~wj zQwvuqe_T>Ld)B)ClPQ~TtnYX<@3i=Y)8T#%2PCxJ{nky*(d!RRKlkv8Wa-?KPd}gP z6xO~HvzGCT1zjai zq-?T$6THQI=e(QSV%I%>=_BUuf9>Aw0A+{?W zie{Zu2gUH~{+)K~{^>{__Jgh0OhWe4yrzXc zovkl^+H>0RJEvmp><$0N)QK#f)O~#7m{(+TGB5}&S7*4~axkJ)Bh^aK6+gx)wE*&(zRb|pPDnD;63sn z`<+XLt8ka{((@~7xS0$Rr@C4Pa){httrXCm>$YcJkxFo&mPl*nVS`h*Ew0uFnv`UR z*X;iIv9P49%uj!3TuaWYk1_L#mI|%ak3F>ai>JY{W5-shO%?cjWPRggft9b?Q*Tbz z7k}Na5xM(odX05t($n`xOU}=+Z2tDG?6_6oPXm_EmUk-Ou)O+YxsSskvx$w@VPfQo zY^k1SY$kU$$hdvD^yHs5XY$gHcae!gdCPyV+4IjUcyo;P;S)cDt}0eeV&5k#KBqEz zqI$!G_s)-4)EqQ-bVSTI_0_g-@AxUOG~1BhhSzfaABiG+P5bnZ-;1VXF0iUHuh+jn z{poY#%1Ynb=t?7jrWw`X{C-OIk<1=RA=vE+0!L!nk6k^o^^o%Sd#%FDv&D~bLJImO zg|w!fcI)m<;e7O7`Z9;~<$UNZW>?slKSY_d^sIGW{9LC=q2u(UqGMOJ3jIW?LSDOm z3=%5{ozypb%~GNEpZkxN#yAN*O`In_Rbt(#Zk_L4^_x5*6~8VrdbQ5WZPH?&RZpDs z4xe5$xniHz!@y9#qA&S+5#7%ho?0G##M@H;QT503o^$5=T`N1?eEDO0d%GZC`|3;j zxe;A#wxQuieRftP^z7fUeY%4}Ly48`%(ADYf}bWd@%y{^q-%TE?KI8UuYs+oa#O$y)6&4Dv6@gPSXBEIc+R?L77VC@0&F2|8Tmd(M8eKfP(yt$i|#(V^|37atxqx?;l1%*>pT zo7;N+dGQ{#S&1R8D)VfDj_$v6Fo`5;hFyM`q7p4 zPfs7Ii(RMxsk(Be&dt@g_U`FV^@)oUW2v(z4qw-`7W_~{25Uz z=WY(F-aezZi7kWoD~JBO#^oCyYMr_#?!Ga?rM`ZD(On^w-!o z%TpYqL>7g9cMmiZyZrbs$NR@SGIX~)?^`=#UuvZ2R}XTxoDr{23%^6;Jrv4vV|4&wi&7C}%XW6OkHS-q5XmG_S z75#ej^W@79U;RF9(OR!{(=)WqZ_|z%o~z|s{eJJ7I``EtYtMqbPg{lm%sQTAxFksP zY2{5G3#)0zepc|QAG>5>X(xH~*29O7lIC0fsgqNTuH|jG^fS6LY}$%m&x=vVmwY+K z5Fy5MLzQ#3uiMVJdtJY-#-<*WV(9T;cz88-Mf6?PX}Stq7t61dXIpT%?U>ialM6F1 z91w_*a6G7`G}A{*T_WJ*wIu1u>!+tqRZ8lZbAQEOCuwu{^P-c&yTG5`f2_h zc5BW#TmKY>B$@lOuXuO-NR`s*71L4|u3vxN@T_;6Vauk-HFh`Kf93ea@O0liVI=)? zf&9U#-U2({ru~>T`&mx{?-aEu9Y>Qk&+W~enfWuU)V`!@-UXAjNlhYg;=Y&HOjuKC z{qXB#|3^#JysILsWVTIZ-?r_`1Q+>KXdx5M%XaL|CF2*O z|E4BA=vw9`aO5jn@9OnD@p*swmVHn(GOQLkqZC*D-1&&`$;i{r_YYX|@bw;2ikzaL z*A=7JZ@>3HXV=k3Iq9tm9hRKEt2vuy%s#WaaO=9qn?nRNxqsZZzVzWzemA56qbGT+ z;cg`J|Jwm9k#}b>C;Nk&spd0J7H;(t2|Ib|(YL%w{a%-XU3)|3HhaAh+5Yfi$j|vQ zs-dNEGE;L_Ogf%zS^qO;j!XVk!_>r6n)zCpVPXp_zGVG7{=Ine)+e9m_{o%Ov;VA! zk(himMm^AbD*H}3K3?9bizBCRpILKOELTR-*RzwUEo{<;pKJHt%Ri9*q9d(q#nlhE5yJgU@DQ2xd*VU+(DGQ8u&q?OxS-6y2;6+YL?#&aj@=ckn6^FN)yj=R36RZBa<#M%#kQ3Eu5~i+0=yt858b ze?9tMA9wevDn0H7Ez3aDg$(g}+nDFgpEyxaCt||_ogJqo778$RPgA;FF0?E4(Z=n=lWv>!$y&25*fekF)UP=T*QE=89)0#U=$qhs{k+T%U-!s7{k?PD z>!;P~>t`>^4EwTlmC4b4Aw2=Qem)0(r+k#lmuO4=Eqa^7zVA-h&oUcXL*9=yN1v`T zdGaan?t1<0)L+;!OQFL%)vj-~sW0+QncSI;0X9 zg2X=FeU) zKareCw)^_5Rj4C8C$)dfS( zw0CG2e6qJ>+88VsqO?tXG;Lv4SPqrx@mS8?@ zD52rH((J$j-)(XK7EU~tlc7=Dwxqh`$8PC^I?^*^mml2pXLm90w+gPAvg(3$39LQG z1orqk&bX+fR(f$###+Wk>F5diVgkKxtCe=0zTVYc>v!GRPW<+^#93)S@3>A3@R`0} zT={hI$#Bz?O&WJU?K$;z{`I8~A0~eJ_RXrRZ{M`AirKTYe>?jYPo0`ByIy?X?sv0) zncJ67f1P;S%+1|hkb~va)AUHOuA@nj0#8o}TXp2di22PuHFf>;)FR8+tF=wb73IBa zMAvW4y?tYUy}exJlZh`+`^8#KUcc0&_NP*weHGKfllK=HFu2}!lN0;1_H4(RD89SK z~C)-@7aUm2)+uIxi}wMtV$JHTP1OYgLKR;kyBA z#n(HpU9?Nb;dAk{&#Q0wZH>FUWz~tfN%veF>F{^{JrkPot?0de6f5ux;|F z|MewvP1M#^R!lp-@T=*3er5IU)w;eZyO&tDG)9QseDr0$W#!(uCqz-#;5f@D)Ofohc z{Ncjg^YBe;@zP{%7mLauroaP}m;Ncb=sV3i-#cd0Ds+3vs`!cO zdJj&!{=8toqcYj^Ns%QB6XWr3VO4!|4hL;LKCQtkbR*5i8GT z@GSHZ+b(0@ny`<7jjh}8$-xD#P8~Y29P!16xBUH&DXw{f8@9RefP`D7J1KJ7Ma)mXo=t_ z7m1pk8m*@%OIX+*?)Yuh`O0tdrW3X6{_IhnKmXOdSZ$MaYH8e))^Ms$-Oj+4vCX7u z#j%x(p`H4U)xFDJhRUxIWN|#B1{&7^r?7RZ88N;BM`Dt}1zB^RM8ahIj+AY@Z9A1& z1VL%dF-H4?d}MZ&=ay@|H>W2;Tk#F zUCR{Tm`>33lb4K}b~W_HhJ}aQ7^U0N9IxlTxOL@QTO#8brUMCAetK1&ObZOD=l7AzGojbG(DJ_wSpQs`+|Og|6$){`c9DVLNpT z8Kc%@CrM9Pyt=DtdrY4eXF$&O9>boVo(0R7AK$q4Ou5eKLqC30L_T3zrqnLo7TD*f z_br$~YhAbSs;a}vKThR_img0a=cbyl`WM^2xOdr-$v3v=%ga?h5v-6g4>Qql% z_T93M^=fhRZNrfB3^6^=7HyTd7)^GM@`#*1ohdVKea6=Dc?6&1naSzUw+t{~fp6sV`v%7cS3dv=(lS zX7Myn%(wFN>N%jpePGpzUcc8zpZXmaPF1u#zi7deDSbQEdNEDyf4D8q&%cksI(CU) zOWJ9VD!vG9E6_djf@>hjZ;_5W<7q@*s$a2=37 zyC~zJ=rIXBm12q0VvKAulAaH@tvm5#=ap|fO5TTxEo@3!7ptshPWT@^O{6r|U2nRxjhuUM@Z~ubadSK+ zk|m_2o%N<`b1zu+ZzA^$zsXh~UaMUbohqPp`rD$GQ}IW?9IJFu05-Gj{dp1E!IxFaBoas(oW00tA16QXTqllvDXoZQYlr`1z1@J~qR zB`w8Uy0(!YCVyT%i6i^uYK;k}nilQoozo|wdz({FsmL?1=aaVlanE~Y!iQZaUiGXH z?|(nd-;h6PUdTnOxhg)EyrEW?r%s)tzHk4!*BWBo7PY@j!tNC)hiz#o$WVDaOO0X4 zr?ASlri&$sx8A1uTrRoaVE95#nC6GJ^j_Y zCxzGN05sIM#zzvdF)qR_>=BVdg{N^zre~oROSBX=jRvi z+$lMC?p)LEi);<9Ulm2BmmT&>U&vnb!PIrZ@4rhqMbfSG~JmRIhoc|EPNSgxia59Pj!WY`cEPR@I&F!*lhQTh3ovpY+dRlBuCC&*k$H zkikGlfzQ0XN+$(a3R@R|CZ0iwqR`d}R3NMq`J5WF_T^;zGFD-y_KW>pkTjvkn``8? z+U#f1TYLRe;6{q}QJ>z`J5x;N-gv6=t81c&E2F=v>q)20lP74O-c`gBs$Ljb#XUfE#5}I7=wGyLs+FwrVp1A60&8eg%d*-}fealbexOfD49i$=NXff$< zo1!(TkrGl;PX7My#_SO)7=>+R~UWzl!ni~4N0Jwj*NZ!x*T zIgix>x?X<%rg2TzaFS_&X6dIDd-IC6*7QB9uIp)L=U0;9TfA@IzGbi1WJ=k@@%MZa zJ6=5J^o(VlcXyX7Pe0ALVqS++-gc$WktLyDf9GA=a3}xddF4lDejlpN|CWiHe$-6m zdu`1ohK+YmR8CbF7MO3EQaIcH*}>m_A0@l4Gg`jdBe68vM*Qmhn6yu|q5p*6m#*rx zOcRm{7Zzvsyw<{9V~`db%+CXgcSix1!k-xzzFcaT+j;XGm!rUS14JVt9Na9Jny{~T z_12UBy#!mm?2pXlf9?t%?lI)fc=~_pKTG|2;;vA2X~(Z_J>juQ=j8O2DsodJG}lk= zUw_N3Pe$|oVxhH1>#a{N|MauVY2lvU$vk@A+qFJMiRK3NXy`mHTYEIwB3GR|ebW=w zeXCl+4c{lR#DxCre6AKRZ@zKX{M}xsrlcAb?%eU_P%HO`Uw>X?Lu z$A{)>++O)g`SWW79qwIezHS@SE_nSa&6GdfmUjDT{q5)ePSG{OJ=0h(yjI?@S+c<} zqfuas1H+k33E$>3ud(^^j7?(i*$%Zw7Ul0^Ecq8*2`^ozchS?;rO~f6Z&8KD_3-7p zPHa!k(X!ffxrHNdld1o46JH)azD287bH}Z}{xRkmbE^|0Gc)rBoz;uZot$Lcz$H1? zU3R<9YMm3sDVDSM@9JFe$Y^=Eq5PiOF2R|uN30gED*m%$clrBc&HQ#8^UsGD&y4MU z%yD|thVu7uN0JP$|DLUJ<(%pfqy3jIt&Iu)Ssj<3axq?2a`mN8C;(x6{HFI^7!ZTsan78X)tzB=!_GvX_+*oh&&ANTN zZ$V0cgFd~hQ#C8B8n0*0oSpG@OKGpy)d=%YoGzo?vEUKF|G>1j_k;nS`n^Fy7s>s+%unH%#-DAnj{SyEKZPMvbA z&bd8?b8L+n=AUnGJ9bPnb8fzxX#3;@+q-kErk@U-vp?AKww?Z$IhLvs**vq-{OdYc zGT0cR1pV! z8-jNi?-EP8TQvD&isJ-j?!Av#m~3n#_f1Vrtd#x#Sg6o${_zthIIOI#W0hCOpBCwM zonu=qwljuLuHRkL?eq7fEs-1VR@uxea)}8Po4R<$=dYVW&Z_!{%B#9<7X59q+|I=% zR6q1mo!$K7@9yp{d_K24Zc0Y2ZepZZpR9G;!i9N>fp;?0*m4_apIvzXZaBTm)*b85}rS5+r6Kktj)>L;@MsLko`vCE&E{*3JO zzx3eB`p>0{_Pi~bKO;9I#y5sXB~sW6)TU!@W|NjO@hz8O@wxu+M$V_U$3JupOCul= zf8=WG!Jj*~Zt?q9kY|?eugsBTXK?v()~mIUGQVRrWH>JK+3y`y>;7Ko0Czu|cI*Pj z{>(JB<5zQvq%Dg!2>S^w*SSCSe5zFDanBhcooD@Cb_=bj&{5Znxf3V4F;rw`=%Ot; zcdh2mpZwsRn)R-!lfBl=@-qv6>eyGH**&S~=EDYuHp&bpTEz& z?e_nr-I|DvO!wN@j(4n|{`q8}+T@vD#}~?&_%eU4N_@@Jmgan2;(%)QYL1FM7kGF# zwA2_dw5r^=+1zlP|F$s848CdSnRhbHV9l7w@ul_diCb!XvbI5eYP!>=2k#EO8eSNy zyJ(5myHcTNu8iR#Yh5KLxkpZ0TB|3uiY0H}yhI5P6(I%#eb?;Mn+m?YiBy?-&3pGk9$tbzP7mgKIHGTi0hTLL3iKJ zT@-!2>$2@hgB~u;s3}W-)+Ox=eYB_I{8ZM0IzPGo<$L_591B&lx*x7*eeZkM-^MH_ z=8gM9|3)8sDOa%Z!j4%xZcRw>)wsxDkTLna+J7(Z)d^>oE>2n+d8Q#V&0z8TW@tMw zT=;1FmC4$t&aY;16bPR*Q!X4TaU`@AG=g;oQ42g11r-ZPZ8O&vZuM$-a%fTokKwJA z9U7NH=kz5x-L!B+OJjU!f-f4AmYu=(|Gt!qA2cAr?k>03x;^*Y`6J>Zq#Ga%s44-26)I>5F)F>=`#4=4c zzA+(I;_g?wIsVTKC!Kmc`?4@YLr$R=*H(!SXJ2v}Fw9I!ElHi3w6Vi!;R6ZFsG9ZC zY(@VV{)BPON?Ry$Qp&-O^@sC?s9lX0Cr=h<4qktTtt&F4RcFRp$7HD)>zw39*km8DJ#vvs_8HH_XPW+OZGgxdD%Li?-#9+^J681mEf$;8l| zD^A?+e(T%gqy6lp0Z)aEoXg_Ch-t0w-n}cTx^C2CIAdAo=JfMQ6Foxa{4Zg$(Rbgt zx1)AtjDLmoQzKLNobDu%Y{8wet6#Own3fg2eZ~G+%R)PTBqxJ=kzwoOc=zA8*S8bj zmMg99H|N00;N`27cJDs8{`1nV!{J;%>xxt_6;D2XH2mXCCsoGNU-yKCoM+yoayEYM zFSU>NAF(j`eXl9B-Y9cqlYqMJgUQ(^euh1D^oc(+eU-l;Yfk_1VAaUe*Kfa+E4&Cw zDW}e?*No`Uc6++Eaq2(4P3JZ5i#WtbLDK#uiMJ@~%RFvwo}xL)lA>+h#K z6rNextrtJr%e#3l?<1*2YnMvSv;3yaa`?iXWs|iwmC~!3G5IXa1N0e%C=cGQFzmX!pj@Vz__vv-Xq^UZ5D_In#Cg_~r zrB&&1X8D|W%UheY`jh_6Id}5qpDaO*xtBsbgS8T4w(hT4n>BIP^3$`W7tMJ(C0}y+ z>!nfaGNrg$nf&J3G^Qx^Ej{a~lh1c3iKlZLvn}E5&P(&pcmF+7ay;bj{Ug=ipFTUQ$y+GIv~g}nu3w(~Wm)$- zVSj{wdw#5R-@1N|`_G%lUPfl_vRU=(Vbu9vg=b7(PD?rUUZ~HE$}Cvx7~Hph<$A~} zRfT6<*S{T4WN|#Bz3y`1*Hfz9g_paQR+QhJz9H>}bJhIw-KO8~^&Yj2-7vFPwwmw3 zg^!bsi{5BE9(aFzeS8($Z$A0M@0#7ytgTrZ@2%te^Q5u*r^Ra!9SmVF8_GTT3%`P>9bLG zVQXXBj@sU>_`X?RUwiKD{C$F}!}Qiy{;tq!^*7IJV|!5l=c_hoA!0#Z!H-R!9AfOj zb(iJgQmb`pkXmjXsKOLDGAD7`v8#SXy&A=*nsldEhJ5Px5)wLUZMbRe><6057Iukf zx;IT({HN>Xik8&S68GhMEON^YA6;77<>i-ZGIzt;Tl3?szFri@tF0p559B z*4H0QHkGj`U=S7-W|*UFv3i=@8&-GblP$1vK=uw|F?1+-}=n^>iv~!bq`9T zbL^9BO?Vb(IdN{(?fO0;>RkL(cSHH4dr!*pIfP%I{+_@5x%~3SD{nnM8uR+*`mIO4 za(P}mk{bN(%t~!&%1o0?yUid`^7hs*haQEF*R!*8V`TYSKU_BDf7JX{di6EQHoM0c zjp8f*7*_0++q1t;xoD>iSFsD1=tl{*y3e0J|M*^RzbZPXFAdM8%i=JRCt4`=yzPw+}#b?s;EKFjZ| zTb4~#dpP6meP@X_zV+Wfz3*;TUcBMWD|x{^U!Fw0v8-T8*W(G(IscS@}u!b--a~x=iU|#n$V%c z-}!RYq7|oJGOZBm3z-<=Y8lXTNb9+?k9*B}p`A~^ZuPiPG}Edx`H@+Xif`bNBB7Yj zH zr}4~~67-v$&A`GULiPX7Sm&uZYr7n@uCZ@?6Y^Yrnc{QDJK`(E3V)g@B~=G*&D?me z<85f3b6etp*I$+9pMU)1eDIj zT5)UI?XAI`OY`1F`nAW`$6gQA5j%bRWNz?05ywB~=i7s)q}A8fj zoD`}^`(f@oohz9~Sy>r0qf|6`a+h@5!>WBso90+cAKJP~USQ{(KNfdiKQY;9qjRs{ z;**O0)+fhb+UeLaTii8&YNb7`U+dSFn7T)+FK>N%UiaCP{O3=q7HG-OYrAvZ|9g!3 zx4qLh?Ux3P>33&8=5st_wbajV@473NP0JuNJWUE|vV|Ay+0`B@b2Mof&p&qctS|41 z_1tI6%orHt`WsdE-u>}6`n|H0|CzEfnU9rwGqO4~uJ^ho|5(3%Z{Np=nzrK7uaOt- zv=qeN%}IZ}YQuu9ta6WU{ms~_7}S64*RPxB+|DjBlKf-8|381q=Bt98x1(k+wEk1k zw!^5xR&L8ylgr`}n@@bWVbON{*y?HfKO9N6Ft_MocK1Kyw65bP7kG|-^_k_ckt4%; z@ThX})R_|Drw>im5bFFi-)n`~_vh=AOxy$GCiOp6sXSG`>TimqN2!gvW{Ax+4K}}U zw?`XOS9(q1(03D?*8gzJS{=L9r@Z~#_oRLL_+-l+6}!kwqOOkWjAwjxrmvsBBgRHN zQbzps)H!nf6}DDZO(j;XOTDKj1r}FCee@GKE0Nscw%EY;a$uC0Yv8^)?_YncFvu!h zbXubA_za!mSmsZQ9TH`9E^wXYU~psbxqQ$>f5tP$WS*5JY_+wu9%_?ApKDL=U$y7y zC*jYkUK{hiw$7h_*|aRn{n5Tv-_-SjeJ3q=#XaX2w_eokZM>IFF5bW2@1oRr?wlV> z^TE?X%0LOjb)jSetdk~;kGzpXOXJX#1nI-zLHEn@%;0P*RK!1 zyu4i7CE@2RtFPZ3zHXiIZr-CS;xX@b#=JB+x+UcO(|sPL_b0#Jy=qO!-}YB?QtteU zF5H_rE1_rVZNusRf3E(aqYzggCqGB6Lh!ez`NAk2<?PiLus*q{&S(rXIreT1WRM<*Ip9fJYOcZPO5Hx`L@jkku9&CRxAvj6|54R`Lu|i z^IEvoC7IopEg_RqKwD+iO8$VWiF%*9eonnybZWlWqp~dRPx}^S zoRv6y;|6FX*~-f5!nJE*`|cIDCT;B4xY4kuzyI*2HJhfKJbm!xpT?D&3SVg-*>>>u z@*940PX*+i-sGVF&Dut`GJf7VjdQ1Kmw8PP?N{u+Z^N|Bi$_*Y?%0tdELGLj8&ghB zvQ)ild@Ny>8XG%%;io5_DVuM0o#dVKYWHp1uStEjcQ-|;CaXWGJDIyXs!#FT%vFDn zR?mxRZ#ebqmC4Rd9gFVo=c7Kq*be_Hm&Ci3)?hN#(p7VEEr3>9@mF8Xp* zAi-FAm)jv;M}f^}|Hy=2XJt0cza1d&rtqLWGpggL@P?RuI=rmRs*TaiK`(uLAC(xq zXivSpK~&zSy@^r8SNQ0n$gO^tOckN zx+vLhj~u_0(pQ5L*`H2~A5%6ZshxePa^Y8j?4_4IpKN%X-IHr=ZRGfUPP^DlY+Ct4 z;LhWZ4%baYx|Y_MnYujq{xiU&dq#(9)~|;Beir|adDt@5*%!4kJ?c!k`mc9l)sMe+ z5z~4zY!?1WxTo7ysv*&k8L6RhD)h1!Q?1tIl@{xa>VGmNbq0wP@4wG}dP{=eIiEWM zE8Pz~cU_pEG|k7VE;4@KwFJ}aw)0O=Ecv-%86_tt34QhU^y5^BrO+I&KsE3|a&H2J;?8#bxe$_6~L zJ8M?<`t9ydbh!StXm(a!&w=Nh%gcCR-aPK6|ib?=|TmGWRGRWC!XDT zy(jU-hsvzqijDVQyQ&27$6lULbW%Uy*QQN|LH1LhyD)8w{rz{no`_4V0Y`?E(afBk zcUL}mo?|Ti(PdRlZ0L_YaV9RW7QU9+bW=u1@2$`LHM{NRi%-i`oad$a-dd}P(Y_?M zTz9c{@AcP?$tsVkYMJWneJ;0TMt-Q=n~}4ET|&Tr*#vzNt!-a_?#bY2UntG?snsUw zW=SIh!J-(n;w48*+!1pZvFMG{?`~x{O-N?IURJbf6u*3{61W*N+t{w zPo@i>-Xh?uvixt-&nobWo-?}7p6`H_iu=L6h@D5@^saWD=r-l$jt~_theaH!>!vR* zXSzC3JM@#h{k|FEg?n|P3NyV#{<*jW2B`L1xfV>hTr#;k#d7v?ZSRytUsO(CN~*MY z`*@1KdB{`k!~N=A4O%Ayr~0iuG*2gU<+{B(>7Sl%dSQ9j@Q4i`AD@y~_rleyxqEwi zpKf{bHs`jRj+nFB-HoE;D2G=>zWtRV?mu-(JCP!@D6tLCpKX zouAyH7gvWqe--xs$@fpIy(Sb_@%wmgUR9+b?>*)2(_gDjE!L7%R}8mfm)s~j6Fh*C zR8u2!_wL<{j0_F;(0RN&6lQv;7?_!{T{cOSaC4oPaxrqBT9Qarq}@8#w9-lWp-Lw4 z>eHv+nEtu`v&OzpwT?E+YUC$=R?wf^ny=n65E(E&LvBSar@XJgn${=;?1; z=XIw>YKU;1s`IMbSMd6N$am4@&-u6io3TIqE_1`Fe^F;9-?N)>M!t1n)? z*0pPw)t|5D=V`C6uK&ySq$v1NXzdQZe)}4EsY72iqSRi!el_8=_=kt$(uRWGAxmC= z|M}s<-SUK|ms~s4gEmMyJFE08R{y=B^tfJXoYL3QieDSu1H^e2ZM5r&xBDORv-yVn zciAJImzgUbemq{V<-N%_S-Y^U^|2Zq`>VgIg7yqedHOOzqoMxK?EQ!S|IPp3XZrna zYbtm3M12uKo?j0?SAD#>EWhB_o1Lq+yo;z6ez*T|m03H+(E*SYPaBIBkt_n`IbeFdUd_sH>s zwq}1gzWv_uS-;;MdnFxqAdRPO-Q(VVyTcb=NHk0m`E_M6zoNtk<%vFr-+xw=_>lZ~ z`~AmXZhmHHSoe)}$M?SIi9=7jgU-e1o1N(>a z_4`_`-}|{i=UJt#+@Hty|A_uue}8YA`gNNQ>FN5c$vk!I#p^46GxxYBSA1A^+fcCk z@tamfn|~K-S8%r`+%%IqR63(W{lmw$_1Z4>vDY^~+qZjT)>9*wOn~(cH znk`?ZX@95w$-UhdZeHtJ*2Xa}=CeZ4PaB2@XMQ@?{C=GGVpre)KdYyIJYQcWY`!+4 zZN5zbf5Rk}|9{u*{ZaSb&gR>Ly&YGsKU~{?U3>k}{JL*4cK0?&HY+cFnmTLQ!+p2& z59XTRZwOIqPP*u_WS^XPTl>eW+i%CJGYW9FJ4O7yQ2Qd{LQ}_;KJ&WWvdYPi50!pM ze%t(g;qt|@tx1BV3l$i6<@0Z}a35YQ`Z8-)+wb=~M9bIgVNn0(X6G9p z&VD!WO@Fz?E~Y(QzM5s?FDsRxOqM@(6+HZA`TsZGaWnBf%xzyQa{uj}?#<$D3=G-t zc5}bwjuPbg@$t?r)6}1z|6DNGmUBPS@BcOF@JEfi^PJUYJFg3HP>E@eu<867y{~j? zw0K#0(#u0};En4)PafuAV@fb{uC0~5G*jnV?N(Oh$HJni1*dtn3;xgDesGJ=jAgAJ zwGzwO&OJJ&PN z;IFnYQ%b3{)S}=G%eMD7*H7`iZdW326%~E)MnM03+pXJl_Vdr#-H>bjJtSxMuQt(& z2kUN6I4%0%t5iqJ;U9_b8Ef`e$A?x&UAY^YB|odJM6El(faA0gXdKE==ZdrFu4NBb z9+x||snynFnehf4?uWYsew~|h{F9;}}S0A^(+sDkkdv}0_hyWMc14EvgU76Z! z=VDiQgkLtfQ+oRBj_2F1dZ+|z%uthh{o2sRtncgW{cD9bTi=TMcx6`mgYUm5oJ@K6 zvEsqkiVeBXfC+Lej{8)A2K|!tD z-v4qAkUsrhW{c!RNi{eC%_v?NOIjsD@=l!?ng6F#C%5zU1GVyJ3a!lE5 zx#sqktu^-CY=3^V$Ny*g|LxfB&_$&N0tZ0pwd{>;!`}A3u&3WQvcGFhjr#HHxBQgn zm+#$b0%bIZ1N||2{ksALcGfV?&$-j{F(c>Ip6U9o(cZ@UZf_O$xB0^mHA^ay>%5wL z{tv0-AnTp?AYHmcpEl_vty~go9_ZoYJhe}QY1Jjcr+QZn=kzTWS~BOsr_FQZ;??E+x32f{ z3Fe$ybgM|k?_-6QW$?Y@Z~vtH^sdprrucJKSJ4)ouCA|6YO~Ki`ttHJNBiN7>}+Qh zAx(dlwXdr(554W=oUtrYlyRrn#Yok8FL&|X7CsW-5WjxP3k-BbGcM(hW&cB}@ch$CgeJfeD`H`isyV>lc3!U39 z+`r$i>OF12;>FB%^WSUPoL-%{M&)9EfB)k3>-jfEtnr#L{k{CE&y(I~htKL3Om2Ls zzDeNn)amh^f4aXbT-|7~Yu({ZI#2()-07dby5@huTkiDtiAmOC>IVbw_8)z2_Os&C-?%gT|LhY3ttS!#%`cWPm~A;(E_GnbrG%M` zv*MznU+vThITv=!>vm?BG;?hyv}+e*eC1y%i=#kG*H4Reed@tCb|tI7+xu6nWSi~* z@#t++uRr}9{3!Ck`{S$6+qRxJuWv4HKK%5leRY;@T-B$-KQH(8CqypQXR>K)oNxP6 z*nnYw_20Xn#989{+4ooewEXe6F6YLt*w8qklP33~zpGBukLyUU`@~_Ed%N$@l7bV; zGk^WHJFdU0#MjwCV#P0q?F;RC;`eMfRdbdu|jyz6l}zYF=JW=mhZbtfV)ZBdRG56h}|mfF+x z4t>s+Kgu4TvueWb>EFIRnEHI)k+!w>6W>47)I9sx@WSn@ok#b^{z!3N8u9b?{QV90 z_x)k|_qMk@Ha)2K%GHMlcfWTy@c#J!@9p-}RkP)Iw`&R=yubgKkXi2SM%yNV>$mQ- z)c;r={^9<=KVpwMRoafLeK^}Ux8lV+>kAT{A#=)YBD*+VfB*fUbcfxnuvoP}zievW z&;3xr^XIbsf1cZE20VLZeqMY2HL1|wJTJafdEcE+u|H>3*s#S_K3iV#Yh(Mzd%N^c zU;nyocK(60+S4A*|Nn*UNK)m)PIuY;6K+($;NYA8Vd3`G%+}xD=%0Sx>Ul8S+4E8S z&Jx3SJ4;3X{hs|^dGc8&<^-R4>+ipIJ@7t!o^^m#`Qa6RCY~tHzP@1XR@VA|4=!(- zu=2Ilys9sXdwyKrTJe3ee)g|LYIDy%x-DOx{FV2#AP?KpY~#@Fd*k@){(TX?QTm|Z zs9FELdh@v2cbb2$+wYD1H!1qEiOv5Xi!e>iz;y{xjx z{y$e9OUOwdj-K!5`F!nJ--t`MW2dcQRCw|I@P*}REAG~Q;P_)F585i8YyEx7Qm??4 zz0a>*1vNrG{AzzK(ChE};ll^p@<-wNHof+He{VE0vI%%K-|BYM$L{p{u72~pbrTHY ztBQ2%{%%hHct5_L|K-V!C)?NW68wH=7nl5+`w@Bdr3)4QU0!W}c<%N)J@VgWb*8R8 z-n{?!QSTqm+V9@j`9Hz(?7ee*TTINRslL8yzUIK*?e{^`8;+KfHZ6R;t8r!P5qr}23_CY7a7?{r^#BMuAMG(@yEQ|VU31u|NkAUe!A<%#s#eP z|6iTnVPMnsuQ<5!^~;Ror~U2w`ps*4_ZbKOz3qE?`lE1tyXO0UpU&k9jC!{J&$Cb! zGTv|UmVLbUYxJL#n$~?iWc;JP{=dBF z^N%0ymM2{0)&6jNyPbny#J?}e{Ew&W+w@+y|FPwc{5CVwNBQ;tl=l6~V=sGaA98Qo zO2ww?yy#xxzs!AtYprjKJuug|@4s#z)6RWZx$k+U>dwEk_2+N6 zh#dFlpR)by@0u4`@eS5t_dCv;KisrMjE5~yM{Knc_i2l#fi`OAyRW}?wUBAkmvCX^NiY+-DDsP)ZNjWScbTR? z3`sqwYGpWS&*T+ar>c|Uo)$fL*?HYl_0y_#6E#Y$YvuLbZNv78t9lvc8pdzRIB_{_ zZvTw*jXXs=Wq$qs{qXb8Q$>5vKVNNeY-+>v^P6-;x?PVX8S?P)9onSxqsH#X-@1yu z_dXTwl+fy$xhUq{HTMs1=l(kSk|lS!o!dI=nweRbnCp67SH^{^ecBoxm_1+pz4Eor z5Uo~bcD@HcK0c1vl)`!I)-3@Zw$p!qPu+KJTdwl_^T|m`Ow7#8GiGS`zFF5b>)jQx zBVQN&IrW=qxp&#W!xqOnjbiYf8_W7 zcz?IT{@iDkdGhw^KksSUTYs=~&bjPY>awqWb=*(8yxf#`J;|9dzA-YdH0O4_mV2t3 zeCzksGj}o|gI=IH#iVt{^2e`k%T2bCa@L#Qo;gdR|JbSeN9^m)`tnw!-xU{aGG$nE zdkg4{tP-7wfVgc%FO^yjC)WHpx~xlIs(V?dx!o_G?{{{s%37A*mwMY{+2swn(!v`n zEcJiZIPR=n`{qu$fc-n`fI`!6GB!;WO07rt#y(A5>)X5I`L^f}$K2=>-k;*?fs=i0Ml zvo1X}$+I-*Onj_H%ld6^4;)NZ*ZTH9?|NLuu0GYhcb}%lzU40X+?D#{^Y8f~ zQ*ZyCpYPzG&VDO8dg{-W{MQ$*-pf0C|NY2~H91OA())1j&S*okn`ea!f zhun_WW_$jg{Ka)piecaVt>QCt_{?>pA650dJ6E>n`_Hyj8r$V-cXIBGVcdSN#<}w5 z!DRIh?c42EWYoX(0d;PAf4|?ebx+Rmz}1YfwE&LZ!cGSrS`&B~(%IX!PW|3@JOALb zxAxOmvlm>E+kb!WdY!FRwsJN*pE1^aefte$@vrl-2d>|)J5Zc`eaiH;JHPAI>`5$+ z+`z_gdDDlt{kta?zp$SCl4sG!OFTa=Ml6as_sB(X)-uJ}+7A}%?_ZbE@4Wc&jru1R za=V`Qb>+^lt>NAGtE?Jizq{YJhX*b`t|)t}d}VE&IR6fBQjcBx3*1XcMSzH4fED5-R{yUX5Op*y-=WYwt4=ZGoM&L{5z)^@~k>B?@q@KeP!HckC?d`J&6qmi?-VsXW1N)Y^542Y?L*$(suu{4DX9yTeLlBV&F;=7*|WW0SFF*vQ?bZ! zV#Dm>!XT6%=2an5e4b6O~H=wU%%?4%nPpD}yhImJ5R&%D>W z7I|F%!frov+IH70Yk&2vE2m^!Qj_CZBytWng5~ zRAA9FYnGIX5a*SvR~N2YwaP(8`pUTgjTR4;rV5+BRjahFT))0}F0lUcICgU zSac|HUi>L<*C|1=e@wSe{_brd<7Oe_W;Xli#l`L$laKSgxwBK)y-&umzTQ4)rO2k6 zYf5!)8I+}Mj#QcK`Q`if#cS8{g64A9#qKV6b7SM5`|o^js?|yD&iM22ANMBLPx~{i z|L0oooZcV1a{tN?^S4D-ojoorT6t;T)3+OX?*`Q#tW9_&FD-re-QC?E-|c>%bhwQd zwARMT+S<^_sL4ky_|odONkcZ+6** z`_D>Op0{^A&oM9kANM-Zr6yIAwkkamKVryVV6(X~(y-5d9^04g{}`j8sX)Z_=bulN zapBwL-=FH1(cC$w`{6_tp{=GCWqXAC9zR&L^?AbU^xa%7MQtT&-QUjX&8a=cRkQ8; zft(q946cjPoYTwsXT9?0iac-mnMWqqexCiw3M{=lhs< zyx%rku=^+z>yzN8FU6bvbMkDf)_8njXHY&VQnar9)hex?rN$p>(;k( zV_DUwr*E>f=xd(!Y8BH$BX!eh$37kH-jIC0?zQ~Os9910(ZRj3?0j9{?eA=pt^d6@ zUwlgCvs0-r-n=`Rzr;ZH$G&)#6XtJhuXI`G@3Y(A{eRO@?!e&C*1PP{N5Aa;CVRyE z{Z8jS&n@`Y?R*qu^MCnvCVvJ4o_@8Xh0mESDt7R4&z}A1x}IgeF5fm;(PRyVH}~o} z#OGFwVbVzx`4EzTW~u zTTOqa2bc&Qe8j5zFI_4EVBz96hvQClbCWPqVSBQjMT9V zqgIz(-^SXxwtHP?t1>uP&366&KtW2V)cBK4xQJ`uvSZIHW7leQErO!p)OFXc#+*3S zdNJnDVgIemQZE?2%+^}BnX^lEcGHojFH5|n9UsM3*?a6s{p0ArY{}b&kHTJtc}x#n*dCHdN!t*}=OT+hRgc@q_;^_}%lnItZA%jILx?q-%3L9sPwW=>wJ`f#&u*o>;PHk?BL3$1O= zpWZ(8_x2F$is~NOXWQTZKJm23V`-3tq~yul=`9~cMMYPvS>vK3=4>LRn>F8ZsnuLR z<(WQ8Q@s*PNC`-}1VZtlIl(q~IO8_s+Vl5Sp5oAT+$zW#*^7Yfgo-l8PKr!3XG zXx~1$t5>hCShvp2)s^+p$BK!(ZXvd2W^E}(ohe403l}Ob3DSI0w6m$w=eCdkf@g0v zmfK!=ZldRvJBP!u^7LNw*h4Qno&Gxf4PF-!R~0ww`m=vNTh1OSma^_WaH~i5_KyY2 zZwJ4Kd3?Sm^UlXg-`5Y$^JTvCGFx#W$}%)y;#OEpcQw2{ZQ&XylKN@Ky6%dcKPg$q z3pZpqayvcbn5G-2vTXgTHBP>zA6}l`>}odM+4bnj$&1BxGu&=}d~6(a{gvqH3zzTr zmn@5@$+IZhBI_+?BHpp4`9rP9T#-{JpA|`L>e!IIdi8^rWBxa`Jz{x3&suf~t7Dzz z4ErsT@)h&ize<}wjQ)PNQ`B25`R}o_FW$V|IPaNtU|+f4{Dw_SH!_~({kr4#HR+?j z&-Q+O@#^L5ZNHj6)GACqsZ{4=^2Xx8si)qC7A8qs^Ao)%hZf9}@_xLx-|k>@`JFD= z>hF&a>)tlBurboL{;wBvq375ymUp|JvVE+J&E;M8DRBMf<>KP&Y^6U&+|e@VcT?_g zU0hJGY0 zC*_sjZTL@5*KxBDIToHb!GCq%@kJcbk32L)oEB|k`^|q+I>4u8qmNjrsrr2V=W{o+ z?Ry@5yfC>|N&i6Ht_sCAcek}nHGVo$M^&G%KiV6=N2veb!^kh+`2BAFd)f58e_?*Y zguZt*P%CNo{`KTxo{UCnSk zt}rq#MV7DqLuLDIX=*y?djYdPik_W2?6y#5vyr7fImWRDB_-`=)$>h)kRiMUhSissGUqwiDi z{dUvUM3#atCEs$)y8r#F`||DEv)_h7oeDC1&sk?~j9BB)kms_=ZOY7(DHBenOz>OY zowF#(%=3-=U$3KuUqo`XwwTRMoX-4JQhd|ps?58WDi&wv7Hr&Va!h67Vik+&EX`Z^ zePbtGn0C%S+22A&?~|j|++#Ox%($U9`FfAAUX5w$rF~1cUHX{%Y})HxiwvT&+BLm} zW_|ke#kAkvG08L2Cg6Y3#pNnnmYGS+{}`dst17jA=ijAA)<5mq*qd={j+^e$!$GAp zO#XZ+%+l}oepp~(@BY(`bx+;BG&{XC=G%Kr-mi?^R&$y4d-KgV2V=BV8J2&XY^VOB z=E>XHInp`j4TO)Msab9~@tm(F+voF~HJe$Y`e$bUsnp%-JL~(O7u}7d+wK<|VHG>!zf)6J1kd^U9g=HvCtG*^+Ix0>!tZ%|cRZc7 z`a^U6o&Exi7W=*11*6N}IOTCAy{<6n@-KgXc(;75%}b*ukKSHIAwF@ArpF&8rs>8s zXzT41@D|f^un=iF&oY1C`^P)4-#aqf^y-f1r_CR(^44p5UHM~s`27QohjV}0Px#8u z_warFM~Qs}7k}<}`zt$O{)(fG*Ua|(cve*;RUq;9`0ms5s$=)o{#b8cFLFJ$((>Kz zziC&lUQ0MW?{7u!-`|foKNvf@>U1R^w^kR`mzne9JhyRyR%&Ug>b+kNlyh!wT%8hC z>{Ptd#8jo=;m&krAwK1qv+OsfZn_c@J}qbe>&g}DtakR@+Lx_=ZCFUlPqqQ z#=0n#X||~FEJ_O13Ru+St{3#E)cf1)FFRw_d0bKJ>|XJrd*AaU6Rof(>np8hGfd<5 zUAZ@Han?Pv;CWZXR{A$iW^&S!dg>JJnQ@x+>J_u9SL;+JXsMPwPMvKt=|GUsBQK`- zS?&2r-mUB0Y~KF1V`F3EYAO8E{%y79Z0`LlYeNi9|8AOBq}3}s`Pz?Ap}$4{C8SqM z^!LZxiDkrT!e325jzjVXrID0RniQ0`@>StNs*~{7g$bOgpIR2IL zthV_tPA9KS>DQI>Fr0i#fpco6ofeb6>a8cm)6cnUKD&7=Mc|72l{mdK^VaML?P}jv zGReRB)7dF6rk-a`mfwEe%x^_)j7YwA_wnZ^70yO3h)~JGXS zJyvgEzj=W5L2>uG)l)kcDrKuO{6EqUtvPG{N&LU$XwR?RWh7b>8{1W4HQWB?uMp+Q zCzYh;O5P4memRNh)vZ^nGObH@%51tRv*=>xAFaZ9KD_5YZ>)Qqw&wm0$t ze{lc*3+o^L_J6NS3Sab}QexFyp%Z5HFy_H;3D3T%HmZ9?oDVBk{91aQk>RwM{*k-e z?=*y-p7w}ef1lM$qu}J1nzuz=a!XAw-PGBn{%=F=u}`Tx9v{ozxc@6hT;*@uFZ_Ir z46~$Oef+!rZupe?iWHH4+rKsp59VB5U2uMS{-JH>%N}nnH-B>Z$G-mlZFOBB+*QG2 z9$zcE@Bi1|A73w@cYc0Zyx{yBH$K?#=huD^y!Y#Ya!7dCqi@pd4u0QPCofm~DUzqR z$M2eKs_`rt=hUZ9ejR0huq*E1$p@E@9=KqTwR*L;I*Y-ylM9lViZ?A@&Az|-ooY<| zRnZ>@ufIQTZ~xJ!&i!}r#FVTxPj+y(AM#l0H*e3r-0N~NMgO8g!b6p&N*$gx_4H?H zg&+I+Wvjm>-koK<@!{jO5#`sUWU{QKBI<0UjvnT}(|YlVgjvldQT=^C{r=tSm#Zq^ zS{uAf8dPx^m6pI-w>5R(x+^&S+qJ8cK1}N>Qdy`W`d;E=zo7fY%XPkXQT@IT!q+i$ zC~>}6@+reI==aOct=oQ8&J6jZven;7t9|=HwI@?tmQR`+bU#pW!P)bZ3g%w(pUAS! zWd4)vljWDPH#3N&d|Gozefa>xrP-OMf2yegBFk zXLPT`{NIz0du8TT&6_U%`tm2A`>C5FcdYA<(VN~sdy>JFYsqgG6yN#&chcj9Q#Q=# zuhkMVeR_G*3jLK8Gk?#&9jV3k@%NqkW{J5MGB2`K1?}3x+4}Zo%DRgi{gdr;jo+$Q zJ=*id=FwZD{i+N9lq5^52T5hln>u-ZvaqkT&zmVN`)rnZ)E=47xb1n**<}hBx3S0z z$0(dLFWu0&P&LrFzV5>Fo-6#@&hvgL4d9uO^s@$BIZd#itHs4|pq<(N$Nn`x(>P{^ zD1L&Ck)%!kSi0Aq_fWU6^{=1Czf&hK(pYZ2YaQRA&o(9Bz9a>Df9{#`zDn+p@sFjs z?+-ADnVFyUxS9L*_{BQ`{Tw%E&fZ+|QAy_gtCC>~D*UgK& zqW((lPTN;$^ThWD!)hL{yUpZ(ZN__0XZt9(7|SxwR+*Bo-=5v??^B!T)teaTZG0|j zFIR1|vxM5Bf3d&$9=$ORSCr~}@aC%a#=6JP4t&~Q`akx@^(vNr`|nCoxBGn8I(iB2 zS{EjgTDS0Z7Np8~dd2Db)viTn^waWVWmUeJEIQz!k|a7)Dp1mv@pjpvO};v^Dl;CX zeyG`Il_42Zk}CYSka3yH7cJF0n>sh;mR+vdw&{oGj7j%ZE}GWoW~=9F+fNM>a=Y|v z<&H_+A6FRYoZz2y_L6DVY!$D`Z#0+tW`jhoS=~g50Gwc7KTyaMJ&*c4o4tc8= zoVs(zr@STrGK`qUf8YLR>m1wO_-o>xPwO<7X>=(SNv&VK+}JGd{$6qM_15K=m<}rZ zVrSo2u~3I8`ofit7c4I8gsSZ+zg_&Lt4?HxB`P=G!`rPB+-~Mm8Xm8PSlsl!d);m~vQL%=@nUvxasoryv zY+Ex6w*1{uTHJW-m&?T(&^-%!mjCa3Iup2?yWeQIz59OtyGpVe$Tr>5YBW`V0$pZe;vWD`R&paLTqA#djZ0 zWE_0SCbZ99Z=0EQ*!OSz3+gjCp3k@a>C0Gi-~HJUzUS9WX6##j@#8x=9-jUOdpvKv z`DwT9&5hRecYjXJy#KS}_`JOl8&eF0wr*9uEcf=skpm9|^en!=;k^3rw_RNIcjhl& z`5#4puiN_K-%2Ic+gozk!}Q~mY&HMwvj5G**48#r%DQsW*5|)(?0nB~ZB0~T_w~8W zy4Gc)Pcq-Xax#%QxHCKK@b{W8-}qT>flkZsou8wByZy;FlX$Ria?Z0u4q7uNw-hhE<=a|0DPTf(L-VOc zN^yFp7PFjnmt)VV+kW%p@BZK2&z>(zy2p1*JVe6h^hVC=+>b5i3un)bDam8`qQ+Mw z|6^Z&j9z<=S+|c`bBn=`So!Mjha%pzWxlccXwdQ>azOyo4qeRE! zdUtN*vJ11EMhjFi3k8Gn}5?OVw(cXHah%RjYpJsgvH`ahby z`&@DKv6!#&(OpIJWG92_nV5x2*{&*6{(nExFQ4@P^y!n!rS2c?+0$P9=s5G7mw)st zpnX@NGbfK0{EXMIW{_#u@BL!DW|2nliu02CQ$|Y zQoRorR=+>+Nm$)8{7CYT`So97@BCP*&7AAew=`h>inG(jdtJJY749r4`I>OPG3?Ka z+58>zx9|JE_4kIXpFxW10rBD8(d+*vUHr;@ZC-ERxp$k6?RZ_4k+nC)_`HnBkbe*}9J7 z-DYkP+cFg8_B=lQ;e>q7G`%Q=Yro(Aet+cNwZlLE?f<@QcGsi$TwhbraCPlkcZQzh z)2`pU*`Oa^Zz`srp{e!x(AISEBa7PK@8_QA@sLfp_baD~$}5+~9S2Ke4}8Dq^7qWK zM=li~d%x~@`)l>lUX^t_UNG5wI&k;ep7%9B47DB^-l;o$)%E+j|Bpm>JX*x9mKvO; z)BD{#|KRuib@3DX86G@je|K!A_VoEVhoj#=`u2ML!AGsFb^XVaD}FTYp12{W>%nik zxF45qb1?qs&bOPe|DDBw|G)14XI;1V(!@jXOjmPmu4=BwvSVFle>++Z zS3LQ*J0RA!R@$y64&2uL+1D@9x-CohO|;J!QJ?vw($3JCmDl zpS*nW<2nD+OP?0MkeJ|CWB!%(W|qsfW%`*npPBc2+OP!&s)OnW~l+c zf7aTyFWC{Ar}L~fP;XMg_838%_4AicJvPsTU31&ydrNoffA!q?cK!>_yW0w#-+QW` zVOBRkZy=rF@%Y4(&9!2Sb04b*23u$RUa~WF!aUAx6489S)`dOex_c=;Pz2Jf0+E`t z{mb7U-5MU(xBu_G?S>XMpi#-XZ?n}6XL1qoS_9E!Vb+CqMTG$Nm4mYG1sSKJXz!NY|G)!}?mI`}``t`;`~; z9%)anuYT)$r|PZv$M^MLYa<qU-%g-OqR zyKgM-_WupLQ}@{P#jAJC!bKOZOmHaAx3By3TAl02lG)qe9}pFv+rPi+$7=~$--Y|u zvF)#Y=UP(s{gFpCJE&J$^ZxvM=l2H~+T7eOT)NV+Em`)*_51e5x_^aT&Xr!gcCmB+ z&v(u*q$OO+}{uL!$O?GiU+SfeQw8f4_YG@yzzXmCV=UDkcAY`+fh=i3~2~ z#fv?zTvL+aOME;nHzQkK{KU18@Wq=pF@?v~DBi32@4T9~`kTCyf4u#_XS?|qZm(zH z?X*}N6;|d#EU9@ z<=+(o!@F5~dn;bPEx&O2`h5TLEsKTw|KFDX_&|2Ml3f4d)yvs0X7KQqnp#|{lj*np z>}2akB^$)KX^7g zzV-iy>Gz%gKM)8?PR_{8a?zW9*#6I_?T-}B_}|C|e2WB2pRTDE1c-y!3_ z_e+(h^uM1U)jwYEw`oc37Jpb#&L1TuEzs%m;fnYA$Ir6Y&6-xG1#QSc2ca~C-G!D1 zZB!4?II?h&)%nj|ER*)VS1wAroHBdHw13OW0t`jP=Xfgl)y=;Z-nU^Y_eK>%iH1Kf zmrZ*ABir+d>eQ31A$Q`mvL?A~Q=6;uW9qt@HOpc=P0p~UsLAGcKVi1(YpTf=RxkRU z%Vb=&OGkh5GULa_EA;B_KiN3si}AS$f|-_4!82zK|51Uc)T${$R626<__W z)BCNfE^Risw(`Qv`qyfT!4(T#TL0Z zvF(*gZ+T|b+sLkM?mn(6eWs0Ti_WbyJN+f!m%aZXvDMaj$66uBf82+jtzNK0He`Q_ z{#pOODUS^LQzz-athQRWPszO*HbHyLZX7e78(q?~b6xZmv41`0pC@jc+UNYT zSZ4cahxvaUAEn<*bDep9#fd1vk6e#tvs=i?#NRr8@J*82z2CysD}GF9UI&ejfK!nP z?M{h5>>m7{w?TX6B8^jT3~#@Fb@Pu^t|)!SPM? zY`cTYa;-OPSjx#KBlG^9o0V~$*PHWopHm$7UA!pr@A3WrBI~q&|G!#p){$FP`uBIm zCU{kETF#LUc<#d;sT_;{|#e#YPX_WxCjc0Mx8`I}?D z?ftFpU9+;TgoG!Sn6w_8DEP5@ifr|_0|2kiO>o#5nqnkSaPM@z+yyf`v zrSyUG^8cB&9vPaLnH(sNE&2Yfvv$Jioj*>lpMT&{t8PKDo>g@f_pxK{(e_8L&E36m z#ZF1Z$%tH}rb>;Jkq{yYEe-SKyS*)Lv+ z=)d(Ui-)g&L4Lx9HSbs2{ix6`duQEn%tdzB?_Y*SR(cvGw*3E}rtjzZVrrmw@9+8l zU%Yj)GTn5~;Bg?YDfAiD}pu z_ie}L{ahSzZMS@F&)ePK7HqT&ydd6o_O|`uX|lTm!lRpKz0%_8?@6ji3F!%*H2+%t z2F~|6cY2;3t7@4e@aq@*gtXmhxl5`?CHTeL*VB)#%su|$ zalCEcsV*)PH6f35qZhIgIEvLF$uXYjuSmp^!=77Em$Djrx`LKVqI)V zgy(5Z@#OVSq@%>d&js#Qxu}sZfA+kq|D?Tl_%E&8`fRK36_3}Cm#28uO**n+&)zM% zTWVJ3&2BiaW;XRm))nzDwVE4enB<+!R}NWR`mvWSBQ8&0UjEX{^Je#_2szKHGh6=t zlHsx2*{}7px-}3)Gl&Rp+F`zvSXKDJtMHzdI0_?8l`+6l5>_KDtes!S zHrXs@d-B1FjgKx@F0F~| z_7LE>r=StkiY<%RJ@Y5&u`k*FRsldbxewynP4u2sJw&mJs>1G{%0{ zy6)uT)<<8P6|IXd=-PN>XZpOx?dExUk^7%lT9oZs{bJYq-;JNOJm$RFrMJubhWf;l zX@y%B-w@xEBi(#hxlx^c_q_Ih2Nl2Y^ZDK|3ocJDfB9pIl=tGTYxlm`l`G7oX%=X6 z9@O@(VrTQZ_O{Z_ZL(&MT5#jbnDfrz`SQD})a{<-ZqyJrFmHae<@rwuInShuB|ok_ z4*FqdU^Y$cc)`7O4Ti!Z`Z3p?%V+-k=+&cp{yXF8;)~z^HdQDdZ4R0uoZpnRTz^X7 zIX0G`ztkD$|^^UKr)9KqmOj07{Z8HN z16QUTe>?ez@1z^kyXAJq?~FBb44KfMGh^2Z{+F4XCSADxEV}Mc*@XW)6GDU{Z?o)o zd@54fPmHVXtI15u;Su_AtEDBz;CSoYNhhXtKl6$IwD0jF>*(ku-zWY3 z^Ce~<1PMG`r`Qs+;3C(^I`r$F2wch^kmOTo)r+$Y`?mbV8kMHlx zKhAGsWc1Bn*Xp!z&xyI`)AjoFR5wjYnkw==gJ*Kf;UK$L_F3GbNyYPT-19Czcuh_E z(w*na8)qB&&YzJ!cc%ZPh^PM^ABua&JnOhx-Sk^=T?&n++c$^AIu`GWX?hf~vM4i0 z`|FztNozmaetloky{2}5K`^6dg6x#(ed@Q^jLTQP{WCNB)nmH_^S9v%mS#&7PQB?-T;H z>wWz{Z{xgDQG18|PMKc7^jEy?hr<%r`ECeZCvaZv%abJiS#?TH4t9N~8o93JC_PpP zRM_w4T02Q#`m@O`|6^3xMY`>lZu7pL@i)XLfA!`mFYeq>>J80Om)9@ZBl&RC%*SRA zcQ$q_XU2c1KDKSazv;)c-p6O2yZNliq-@Fcl6!>@w+T9bwopDAH+%jM&3jvXYt~E^ zx={3SOQk>S?MVl2ne{D^&^jCH>2PXcQtiJrGtTVMpUS3jub{>LeN)mZPxYTy68w6X zXD-evvMOG^>c#WB7wkL{Wwmf_ zUu@=M(aCMcd8^`YEje&!`SQfu$9Vg%o77*BnYPaV_>9>$yViwyEmq0~4GzG9+BI;> z<%Y(EiEH#9i)1e~nfHFWjcqJK5?qJ{inwZuyu9i6*hIbNmdi2|d-3Hnje0H|FO79s z9O$w*aJ9z_?k_n?j-C^AI;)yl_J$Z7J?b?{W5WM}KxI+ykC)SSzStl$ajD9O&7D)5 zS&jtloV0(3$MkM4@6NR<4|TRq-hNOmXX>k`e{+Plu>TB|ie9EOt8LyipXW?lCr|f1 zx_=9g){^ID-ixgA*w;>8w)w04+V+0Scg(jvSNwTWIj`^9;kU-`bCaj_$p`C+F1YmP zVZjcKenI0|J5=UgI``YUX9tHB`10&$*Gbw?!m;rGMp~3G<9? z`~oU$7S)!LaN1w0lS*CtR`bQg!&9@oZ&)ion4$%pk^0TXJ%~S?Io0jJ{xS(;PIX(Ep zZbjEXzijYSa?z?wx5{{AWA9GBwK5`5&hSUcOlXAjQjIf`^?ww zHm-rs#5eC=x2!2sYtG_B2A(|LM=d9v2(nV0x~$u6F{_fo?25AiUKZRABAJ1K2@@<% zhiz98+3d&~6mlg+_;S!kG10q)fwKgs6jfX7$%&F%-+$ZpcQ@D8oGDeyE`OVTNbQiW zxN+FdyN*phdJfAD#jgCnQ~s>&ZO$D*v3Is9Fluj~+qJd%*D*YS4ek;(ge%kGQE9=5z{VXSUo_0KxY?W70v%s+Vn0=Ly z&HDDf+b@q?%lmiJqigdY$z;DS^S6c@&zp(wMBh@)#!?lZB zyVgvdbjGdbQ~FXdNJKp?IsV<2!EVmwZ~No4x{9=n9&5+N25EOK^0BtO?y5I)R<^N- zYhaozcv*nF<=ts}pV=Gl+$nP>=9|l#P)M|$I_#(+<7Oh({FtS?>KPM6>CChL+5K2I zPGacgKE1>w>F2*6FIPM)*x?ZIY*$`fOsa6c_l#XHPp%2s;Ceerc=t4+->i3^JE?kJ z$vCnvBWiX3hQ=vEmPe;OSmbsGDINzHM5=?->cP~zwU>%l_Z(! z&i}qwMc{c-^hv$qc%icwtCnoa`0Lmd9sR$^nrBkRg==o}+_I#%YI<<^uLD zZ|W=kt&xo@kN;>m@2s_szbkjo-Ye=mW7a*W)0-~*+^UvsiV&-Ja!;N`g7DlOK9t-=Uly(CBi&f&z^ps!~OYZ&EoaF0<-5A*alAg9CGyPm3u)xZhy|k ze>POkO;hNVpFI6nw{fuahuM`%z3NrH-^{nV-ZE&uos~5I%O8W(3p28RuQ_7xe{rLF zZQEp)Yix4w)tc6=p1RY?^;(z533eNGmIp`r<(u9+#AW`rtC24#c+||vC4NHc1|+7Y z++6lYKW~ldgd(lwN7Y;d?czbh+h94%so=ry;4iLbYq0Oh@@2*K-peOnD*9xp)iqSrhg7Ch|o~33*)<2dBY%4r>bR%dVgpbtuJM~w-bp~YJ z^Ymzn&HVGpLgA?D0)ulN=UrB=O*3Y=?C_)rw*9sY{<1q+?=}V!;I7Bu^Vg;FFDUSX~mqp49CkJPjA|_&-`xl?7~j3%NNfx z{xR--d(%*|BzEl?Gp$Ww%X);l4t}=v`IdjVstdaI*eG^R%$)PHV&b@T(C=vo_~X zTen)&)$;3%U%PJc$3#mDP88G++9)SJ@fM4R!^RU{LMnlcD&nf2ikue)OcV$f()HRF z^iXj7?5>F~N>A!}+8nuk{Iv1ci<7H&R@_#5H+jO5c|mhc)?Q(oT@n0>edSvl+4ug@ zdnaAE`DD7w#AjQdsB5V$O%2%ZqIC3=^gHG}c7JczqDc$HIK(o&o?a?coO*Qq&0~t< ze|I-9jA6F8w`s zw@IYG=AJz7obY4imnvnyl+R{QzW-zHzU5^zs$QzGGIX)*tFgJ^x6ht zOG}-tcc&b*cb?h|%a*1Wx>sN~pdNDJqu&BW6w z0(||7QHJ(@OD{oGM*gqf>RRBvk+b=XZJm{o?)fR1m%N)&XP*e)bofeoOVOVzVgH=p z7w-O1>Ura=|LJExErR||vhe&gQ-$kklDgi4rHk}F#|gDu`nQ!`^eEL3nu%nbhxA@Hkl>+k4nia>o~jbohogM*YDK#`gui-Vfp7t*Bo1C zn)a`K;MApQ_1WLRPnHj+pZ@7b!-0={mJmo zx4ydLPEqd5AI0tG9qry_&W-8tJ1!y~@wxEmaVAmTV)=7o+it}4)#rX*5+WHB;$I)! zxIrX+$xo>-RhusC+R1U>%q&BmZR_159Cl?sw=;Ye&sLk!o0?;Id(ZQ)pPx70T+(*y ze6sR-^%t9a*3JdZP%(){Y6l-Le6TavvXFbmfn_3~F4!WCt|Zm}OL=SV9`*^G63h;& z|G@e3GYg1WciQY1p+c#J zj9R+Q-T!)KocO$FkH%UM()#1^NmP0Xj&a`$jjTYR^?&;9ECVV7pigtLDYIdd{~9&Ecjxh40r zm(Z$9WkCx~^R4s6*Y;1-JvyOiK~q37`&sYS9W`rizIxo0aam5UX<6>nW6HgfL2nk6 zJ}cT;!($d;@2WIWsZdR{-tS2Ip0j3+n{{PH%h)?7=5B1xKf$;lgDr;LC^W?^}rp4<;N^&lr74qWTyR+8ud}qz+^h>JSXd zQ{XaDWT^lsBDdyVE zbk)(|Jh@{-`?T~U^WE+|-<9{TC0cLKRF)ZL(l0vu_ryiDsYoq*q&R!SEwy8lTH+>K zPQ0S_Lq~PPq?Yx2Vkdo=dOKSd)56IdzU}*ne3mney#4FcR}jav$I1kc)s1*Ij8wqKd;t}XNL;4Dz+ZwySIPa7U7M@ zZ#W#E(y2d&!(2UVJ9kU+H-M@ycH(%*;-U%3j`>^XWqRv=n3A z$@Y(ZBEOitUQl@IG;7!Kt(wXn4tbY6=g$^NwOgc=oqFmALydp)Tu9g#RSAA^UARc& zRLLS(q4%`J1>8LlTYhTStJ>o0e93-Tz!Sk>yEHTvhL} z>}a2fE{nJ5NiF9s$-7WCO?ta;e5ZsGWq zu_Za5EM-cVDl7{PR@hEHd3wJ7(;t2Jr{8k=J*(f?c-@lAPgUbR>*nY!+4f;ZX7#kf zk0$!l>&+H@Eo9vG<;~LCgU>gAvFzQq?W?M-WlYy=6IoelM`?*OCQpxuxf-rG5yko7 zh;!zoo$8+pKsiCgHE@dO#Q!fWW4jaO=UM;v-ybNFx^FQ&+C&_|(dO;9zI3ab3pkri zxhw(7W=8rm_m*x|*|IoE&T~S#ut@R3e!*umgu{H}wC))uY3bdY+~OC)!8S+4d}?u* z>34on-Kj!sxBsXe%w_6o^$oGm>h#?y(0$AIvu9bsLRE2IwyDQoKfSIx+v}&BP=D!xstrpo<>HhcBafS2l&qc)-fBvVbn!?+~xP|}coTaHnjEg zJ=0vv>~Qhr!%6%r>VIT@xfHYb+vk!Pfz!w5i{z^$W(sVxJoH#~>)|up^XB!ta=w&I zJ!Q1KHhAHBld{~8lkJs#t?uz}k-7DMkALpQxK9h$&J}L$zumcHVe({q{fw%6etLGx z)oY~xU))t$Iq5*vqVxR#nQI6+ZV6lFBAbZfBAvSm)O3j$&|MCKRG(C_NJ*yK0;Yps2~)*{~%%2yp( zD;*y>c?O&~Jaw)XDs$d? z!8tW%PsV3e@mZhBZasM9w1YpJ3$_+OuWx!w)ujC|Y(GZ{dCmHEX=CQ*iQgK115VZY zvbOvQ`Bs#(?CYiMw0WLR;Z?C(({G(Tx@?c`qz8T796vj+ZSlLDSG+0z!gGa{bIlSL zU-^IO&x{w}+iQBJ2)(|vMQy(>zxc7sC6gx1JYN`9rZ-(%fa&rdn`f+FHMdVauU;3l z;fb=`{w0^IGi%LM4A+>X=WZ)1)SE9p>3!yH6+!)e;XQVm%RZLav|X%BeE0cB^5@4c zuA74eC8nQp&Rv?zJ?pUJ=jOhh3x0V0eLYX$rkCBsIDfI|KMUV4-I1@|-RCZMdFeN= z)JwZwR6Lp=x#ZW<=bE){-i6bjZ?+ZAd2$@ILBbNzXH#I2S3JOfu$jGQ*`SF1wsk^{232IUlX@Q4?`b{Nge8BS|2qFZR(Oo{$s~rp=L^64?Em!d z!M??BpYPjzQ@590v)8xe_~(z;x7g=4nR+suz8vfr9q{)~eNd#?DarX?mV~d&GtO68 zDD$1$U%OK#H+SpVz z8J1VB+pPQat5WCLzD22*zB??enEl&v)8(?>ZP(jWlAi6alwN9-TbtaiKZ!TUO7GCK z!pJJVpq?L7k16Uc{q|V!!mf@*ci<`ASUbpdplA&=5+6 zsvVD&VrAg-!|XD5C1W5lG_&$kJde-A&FMSi6EwOO`G~}Z&zEyKl=$Stx!a%?#u;J0 z)(263^JaM6S{W1{-ko96^zPn2&!_zD&INZrnKg)+YGogtj}`J13(sAi&|@A=O~ z8%@PO1Qd$spI3Xd%*il1dIv|0P^V<$R8Rk-VV63$eX-rzzOD6^? zFTNinf8)s2E9-6Ms!Z9!*`MoVsa5r)ZrZ5=ndKQhtXC7Y*UL1j&()u@z%pUoD=!^^vM`6P+S*R?sbGuJ#Wo_pQbpZQs>({rx9Zn+bmS<3$3W;SJ3 z`5k%TkMBb`tIo~HR+}r*ogt;A_pH`&{^F7|vwwOdZ|&^9Bfo8@h)8gTwd(GrUrgFq zre=OteP4Ytedz=B?cSx+wPxE_XUO}ASMCP&$OWsO?NoX+amJHfk`{{ceX8dy3Iw>? zyO<~Hzb^ruWC0%kZ>{?jB9gjq!RuGSlV7d!`uJwa*Yvr2xd6CL8CBI9Nw zHapu`#LY%b_XqQ=MKy6NR<4`1antJ6t3DiVm(y9@7h%%%{?E_7D^{cJ4WQ%<D))4Wvle^#S zyx{X`c1YWk?AsMjlKkdfOPhXW`yX5J2cF+m3+4Xn-t>My+c2j_{t2^mXlQ6gPL7L; zkfzlBKTEPsvhU&ZRLETC{mA|ua}@vF%{OzzcEZnQpANqxK5BS^ec-OE34V+#up`&+U3?U~q7ATU%Sx>zy%tJ7fGr-dwI)apB4x z^WwN$I*s!q&OToMar(xYT`O}xZ@bba6@2u2txnVy4qaW{M>2~aMK^Cb*u3-D`pe%~ zI_JGK)m!uYJS(&O?@1jq`XZy>JpVT%Pu~B@?y`5nx8#Dw?rI$B(PsGhoNw*q^SpKa z=c}#kGOP01Q_3$?-?NkYp0n}VAHJ%4!77Hk*48ZekWzB8&N%+3n#C3VW9$EH=HGh! zo8&pM?LS`^T`b*d6u#m_lxF99(RVIK4Gp9ITdW1898mGSNaN^>UB9j@*tCf0{=WBm zALCR+ob;Y6nehL5F~|7)0df7^73%|W}d|;ny(bxRzmQ;&VvHWsx!6F$GbJGXy_iF?u3e7gQ;G3{wE$1JZg&=F^ zvxDjfh~-_2G$yB;UAwBdd_#?%!{SGt#l2kRhaVOk{9VLy`^!AvEvHUTIC6E5P2T?A zq9f;HGITqqHoe-&d2#37m>W@E3%qhCk+S=%L)9h;tmM&%Odn|I}*zLo$@+pf~cJEuie*N)XrLP6L zkFIg@x9VHjKWp~v!f!Xz7jN3M>4e?q+iDlMg^tXuxwCxRd9B0$PpD4wIS`Sl#9~Dnt7tyVF_<&Rag8(`=f3E#cvz)(*GDt}pfXehHdW z|L^Cujefb$>mC%h95>h%=wTtFXCb+BVhv&UL{!1d%ZaO5pTrhSG^b1ug&TS}q^| z;nwZj+&PPHxO|n-`!)GNZSw5!ZF}yt1!zpMcbvA|^l{U^XG*r7JSTs5bIsp*Va9gn zSK`VAW=>D1O%nr^AbpRY4x{?C!Zg-IR0F$i&P{ z?57Zeo4fnQ#KUY$F27`&y|Q-O_h(Z5vThRIM^~z`dCX>KIB;ug_Qs;8UKV}LF?#I* z8ZDq}LQYOny|F3P``?pq875uRrinc%vMebt7ymKqxEg1$x^1CF$AV23Th5x2GZ=;h5x_SiK2 zy#LG3&1-v~N!eeF@>;L4TuN(GnAf8gpM>e}fA8bJ|G8VP1{T{IU5j4q`W3Qp+cK>W z|7rvxm>oi0m-bDp^hixT8Z&!=#%8|?F|(QvHT?F~e>DH>mak*4=HHf7|9Yb2`eL&W zwetTztUms6|9^h_L$0sS9o#mz`q?cNP@7XPPm{pmfHE8HLF(!^mbeB{BWY9 zXGsYI6YJzVdCDr2Shkwm z^T^+`Zyzg#MJ-!vlR4*xOO)CFi}HFe9x+)@zOS~8Tj=T~tK8Ip=vS{^Z76!`m0~1W z^W$NArQw^S;_*E$N{vrXPk(%3;^g|xll<;Ht5xacjNAYI_m3}^{Xx+pV_RiX-{18) zQ*xW#RG0i`Pm-git*uwt|8djG3zPdL=Y?C{z0sq*`6q+;+mDym?XyAxQ^`3AxZDaa*xt_khL!WJQA~rCr4qtz4mTC5e%FoZ5ZX9u4cSSGH z`fIz%`r@522UnhGv#tK7Fwr9+C1uG9`4@YZJ@yeY4?d`M_WWa6anDbGWP;mX?{Y1k ze_TdS&y?v`k?VnVuOBt@+Z{M?fPq0lsPjP+x88wEOT7yp_nJR?Iz4{dv!@@AUMss7 ze{8y2Lhibc5i>nhHe_AZO4%Hlb7KSJ$rPb|?;n3Ut$+MbD|g{B$@GN#`)Uhh*gsat zJfB~0H|eCxu3fvhUYYNIdE=2%>}{E?Tg#Qs7tj6?Ud4Bz`qDG4G(9Qn!w(A_xV+d1q=QK)gF60@t*g$;@O$=FWm6|>^;Bu z1^;(Z`T1X5N?-2GzVxw3%}7o(bzQ*3twIMnV{M!sHr?Hv({f1h$2@*{sXy@4BJ#8( zF1+1I@yhk9N`c|r><129;9z58e>nGt)0S0>m`qJWU%YxL{Q3ITki(p<1{NlB_KWeg zUYOvqVBIz;1_KMDrhknK7wKO=yih>uweX6ylK$7t4LS}!oVZ9odA5|$i?{MJ|CKX* zO=n5H669(%u(0X5_m8pS-pMZy3ph$mO&J0TW|h7>B7Sz^gyv_**uH%ED*lA|*nXaM z>(;mgJKHKvG`RGVXVwBb*F|i zHZ-#F%8iJ7e)1Z(SgoWw6B3JswH_5dxg%5ci_Kt`*P<)muRbi0*m^ZoLPE;TLd2;! znK>(a)x_f1FJHbUrps3H;=-MlQxP)BH+igfSGxvQS;!n~TILoK9;z_A_~LEz zhKVVKGfhK7Gct1=G-M8CXtln(S68_F^`lSD8Ce+)zM-Nu_m3aAAi&n%_W7|Hd-066?ud&JSxdorlR#VXCi$WQm{=P-q>lxNr&r=gAdSIa#a_lij`{5<= ze`=(hQ(al3W=RQjyG=Zqa`EQv=8|0%bFN$sOU}`0_A%>r$>p6T_3B}zoYk)C34ZB* zKWy4s&-!*8Rg#eNT(o=r{x`Du+S-pY@^Tz(#GJEqdh-(ZgdKUz(e5nayG)?}=!O+b zIWK02G#^%e@lJOB^|QQRU%Zt6ubfsJ`*z3Nef{U&$*BY<|J>xH$liG?3Y08FxDr)n zy5!$?sH+R~nc4Sv!Nz@jyrrB^?#Ni}s#+s0YhrG)VEKM|(6ZF%Spxm87jN5l{5!bt z<1bnE-mjc0ud*hdeF|EUwo%wRvRLV%LDVd%fY3(cYBFYPFoVeg!kWpeHMVNOd4 zIp0Ow*URg@Zq86?nzqa>Bs5H6_SuEy4tn}BTnkq!Hr|>gb%4E!oz1}Ek+P~-ccNqP z;U9m_J-cxAy8o@m;zw6h)YPnTSsa*RBq{U$ougT_O!lYZeY?2UJzu!JUf}TJ#n*1PoW+b)+wPkugFv^<~Tq|rS7 z1D)yHA14%4q#OdT#6R`KvKBN#2x@rElgOL*&x}F)=I=0qLvX~jSI7zLlY2D8BmXJ#?m#Oi;W%gt_ z{ol=tb@Q?PU!KH!{>gc>VQz``+)1ZjKep3<8ei9YTj%cc_nE()7Yay8Nj>;&$0ujg z5u-Q#{N~!Z`OTKv}H+)z3_dl+u_M9w~Mdg9GzAA74OvH0$sNi}b7820q` zK0Th9o~}M?)~pF0DiEtBUjNDw^ zU;iDRwd7>3la@XkF*T{dQ~m4CEgKJpOn5bYp6VXG+c%bxs5|{J@X9EbE<3o=Sq)c!}NDG(l_`Yqn;QEfo1<}?q=Z}6;?VjM5{;^#=-Zd*HWn;698Sd(Fwa@?VDKL=XdKmrvUT6HDf0CdBFe5gW81|KaRgmjXy!vTr#``zN zir4RJ+*rcK+ZlDI`1aWhk1GpzZ4$Dtd2w*h+Wpn;CW0)gK?b*M}=` z^|>kSczSDf!M9hT7Da2Al^1(%F)>@Pbfw^H^Soo%=I(ab{cqdr^~Y|@=YR_7eP3F; z3-_!RpP3`JdYUe1P4uIm)7Kt4wKaY1vC!#pEz^#%Rm|((d@h2M!DHF653|$%&-mYb z=I8S@2iIP&bi9QMY41Z*Qm7o!ZyD70;&HKl~=W zuJL_;_l?<7uQt|vRNC|TVOq|Qifp^R%nvScpF6xYJg)8Axx6p@d`TypSXZoGeJuI> zo`!#olba4cJH}>HaeTVrB%ena)$CcTR&UI@DFoW>aPRIH&wYFJYaa&1)IGF%V_m|c zd{Skaeq7J2S6((h4{5)U-oh;)zSZR6y6C)?#}*mc?-?E>9KGcF;;sAmOVyzQ+0XM!u5oUz0yJiJ6$2K6q+= z|LDWyw?9js&)Lb9t`pz&-R>6)f8Ez@AO9OX+_|FT_{aYJzhoI6%>G^{YG40{e@De# z%O96gr!Ock;1Jy?VYO@5$2-~iObl9&3-6TwKD)yI%EJ>I`BI84bs}#xd8jmn->c(y z?<;-sn#Yn)uI@qJpC=pD3$88|f4Hdhc|t;g#MMyI8ynN@ujSu~xiT-pr0M^=iR&NF zuluZ$xBH#9gpAz#-KN^%58n39{_yf$?T*LGz`Oq*$KK7z%yTJrX0H2x=rm|~^nx{_ z-r|q@q}Lz);33rBzjg7dO+w{&b}-#8dwcBn>}?`{7+-=;u9>MlEiwMJV2V-XnuuKz zd=2SwmCE_f#m=^Jdme}J^s5yv`D-Dx^=ib<9L;St+oa#mm-x(Z;nIzU_4i6-l`eAh z$-Z~85j#37RC`0>XR$r|E3+5&dW$_=y*;M?+`2fK*Kb^sl^U(X*B$UM>dZ0gz7iqj zzyD8_-CuG2-4fw(Rf>FadCva#8N{}lBwuV2+w#`TA9Fd|8zy8szPGUn z)<28Yo-J{8%1Vm+RUagw%0202$BHE@ri-MUN^KXazxdqKP&hU{XoAajUv2-WC#$~A z-j}CwNcEFcl#FY4>(+IPUn_9`J@M^Q=95n;6Svm%h~=GpI=R+##)Mw63f|*vQJI;B zk~6o5)t)Gm=3!$9P~w<;{np!W4TaA>|6FkW^~4Di8eY7}_+Zoj?_V9LzFfXs-C@b8 zLK(LniN=-|76~4;8KxY7N-)_D_|HVi5@9dgZD(eG<+b(~*CZuuc|K()OD=~`ZjS8>Vs?AtZ-*CaM zRmXWXpIA5RB8@|N+u1pDqobk{jAka7NKLKz^!f9`%P%k7xzn>`iAqar>%qq#7pz;y zclYjH4^L0Wm>8K7E7=?~>AZV;IL){IEUu`qxODk)q9g~~h1<8gZ{3P=eZtEiDJjXp z&3$-l_VouJD?(WRX4Q57yZ!vLqX5g*?9A%PnI|?bx+cExjW4(5)lWOZYwYBsqNABz zu6?OdH~%hSS)>9o(QNj^j};fLTxq#=E2?7=NAtmkMT?Yn+|7&GRl+&1@w?rcFm1Pf zIo|EJdp~_Ds@NO%;_I)5ZBjgJ1v2cr|DM~NIMA74vrD?u=PzI-W3^|^Ze`r>8F)E-#o1qKR!sj{6ld-lY+b9?8_ zlbd7xyxvZqgXz+xOA}_z;@TU>zx;CNt5;b|dv+%p2(JHQzSpzqj@r*Z3H!pm?|9!+ ze^GPw(&VQTub-N)y2a&D)>p33^dg(dsVASF_ft`MT`>9Q&@51!4`5 z6bwnof0lk)ux@oP8}q&`zY?c}#vHoYJ$>q9cK<1f=eBrOq+GPgxwDnMtetsw`SeE* zTZ;ql-(b3Z;4sTvzxLM6=?@-leZ6AcSMEPbIu9$-t`^PNTOq1`j*W|Jvhbt#ZzRqZ z{y0|bpLqLT^Nym$ul#PR`zIg$W2rGSric0X=_!w8jz65}`Z=KPrPeoD+m$o!Wf(ko z={`O2rSs+uKR4IDc(w6iv#+&5@}-KNlc$f$+ud66M3FmfYsAhBJs&sadl9?!9QMe_ zOE*84i)LJYx^;DEqtfR|nnyQ$xBhU=eKwQQ&vlU-CAhtoC0gM>W#Yw&6E)S9CWq_jBD&VeSJzvlY+vftiXTrGi{hAAMZW*{{C+XKBY?qAuXYTw^m=fnRW1T zzs~VS;pK(@PHk<_|9jb8?eJ^qd(GT4H~!q|Avv+*`t>@I3*m)^7rmZ5_HtHh&)Ss)cf6zFT=e>RYu=-tCZe$>F4Xi*rwQ~-pPpB zQO5i}_s+5}*XLwT-cWIlhoh;1e|ya;4vStk+kOAu2+y$172@OT;WqVB6HWGU?r1sVqX+~`JZ~Ji_)dZlRv)Rem^|N z#m=Gf+eVw3w2rrr_3I-y3^&hj`kT{)w>Jmcm%~`&|2}jUKC6 z{ny8|eK&va;9T5YRCC{uQQvMSSL|Ke9W{T|7!vNRs9CbS=fL~>@%;Q7ZdQb{#RFS1n|om38sfyX|`w zI3o7u2yT04+3@O?m1=HD3d_Dd&jfRBZ57vL&iwmU=g^i%g%!1L-5DqL3MVChc(Y10 zVt1jo)vhWAhVJKQT%3cszscJ#JtIHwxuC3M$@8Mr$I|ERTUCqG5}r3E zeB3VO{cMVYnH5+5p6z-E_yPs%c2~LxKG%y4?R%cKB=PDc)*pARzdV>8%=dNLb`XXRQ<);)H*pO#XrbosoI-muU)1&a`j{w zYU$ctIu-4^!@K*$$z+@J+CMWpg**kP&I<5+UB8Jh>QT}sE314{Lp|NBrHdmbKV8Xb z{c^?bs6&QZ?Jf%CT*_VgIcPJx?XwqqG9J$QvwQ!3d70yi+S=UD&(G&Sv3t=XC&}_n zXN!u9MFW={f9&Yu!lI<46c8KRJ8hcSQohK@ND0Fv7MH-5%P(6lX1JuKsp*Ju>&5I~ z@SK#eF+xCCn0as9`YWB!D|@8P`PiBrJEv&7N9gJ6hrjZ^-6D3VO-OrkQ|eld2VZ`u ztiLMs{o;zRjFOpi-$k$eyK^Vz#@n(89kCrTdK^s+J9bz|@UVr1glLp<^79}6@$vD& zLeRA=2S3|9di+>WQnJ%H{hWr~xvZ^+vbJWOOW$hgd&^sUk=a}StABWNvp4mh+%@4* z_$B)c&O_~51)m-P+N?0SeqnDhpS>JjeDUW&ee3yP~hO94N7TGH2@16JKU19q;&K zUU`4w`{i5a2Rpx&^ZRABE6!Q*%5w$N`BmFbJZ{koe>-p4)9$OUe7Lu?f2wqTYv*&@ z;q-mJvi)fW|L$Dio!9d5dS8E0SJaCi*4E7{tO7kx8ycmb1Si_&gFikuKfY1ac`)IQ z{J$%&U!DJKed1!JWx;M+MyBkU%FE9w8SAnJ3f2Y2U43hHXT{2+hbCou?L993Oxena z>A2th$_WOUcO<@ixz)^ajp4$LTWr@49PYk)TKrL1ZEeE=sSouZ_kKT7=%XdYJo%zT z!Mi_KU+*Y-oOWP0liqe|>+kZ8j(K7|%+>+BZRINV+C9zxsV=heq~{4A>CUg#W$do) zd9Pm_IrrCnL&mqB1#`F8+HvmYli?J2%XHwN@bZZht%7cf&UTxmvcp#HM~zTT-25PS z%U3H8e2%a?uYWmvxhZHG+NJFN!YtTUy`tmR+1$4pwpBvLYQ6z| zrQg0hsJFi(ps<0hLHPMOWnERy#57}u{Sww@R$SB9vwxeb(e*;%Rn&yJows>=8JV&f zUcB4d+H=4*|C!01RoM9=WXft&S*yLE{twCAjL52)~&*?Zl-EIlA;AR_SVel z=i~VVLND>Vgz3)f?=OGDw_)O(w5UQsA2sD~veuFyzj;p$-4RmB%$?@Tzv_8U=i`qr z{~cyrbm!na``r804uTQP|159Zy4X5JuyaR&YQTZGx}US`Clv-QDtfcBefk5Bn>QI6 zO&`cFme0T6dwiN+$g?6pH>q#(_M!?K*#3NWl;aK*40CahVrIFnD_1XfpPFrY;`FJ8YzLPd6A6RzVua|8CK+H9sKx->$%@gizPG5d~_;st_Ahkwt(qthv-}w^a-A!|Ra_($3Kf!l* z@7^1ms^y>g&1c$sZ@>831D_+z^3Ck->``_|;QjG7Ff@4ePS2xD78ynu6l?w4QTKTR z%Qd6?wYNJiR$59-oot$M>%|EUA04S)f4jTFPr`q_`FrETOSv<%4O!U^&yBqzA8R9j z+nb+-V-4eh*Pj>e+7@TL>gbF;GBz8N4FBz@GZv08e#fYyJp$0PXpH% z2NVAMJb3LY58LCqkCkgyTgooi%3D(ZM58}tU)CevtyUMDQi3vExw$hZPL8r-n3bfl zD`%_5%_ybNs536xVtrXwsQFC2?Y3<3Yjtj~tu9NWl=OeiJdjX&`Iq9+9YxkBe_hzW z_10pwKTF6;Ec2bctb_6Dn@Q8AwSD+dux0Dk zg?skMi0j84`T6Po@=YhswpsVY?op*&lY)l*C&Q?W z^{kooR(qH6E535>S6zQyIwg5+U66G9r$Qrn$xUa!Z1%Kj+IDNtr1O)N3i=)ggon3( z`cyP!`t-#M7c$zMS5{JD64#44Fw;04WZRdoUlomvf;uC38E)RZ`M`p2x?b#|latj8 z-`p_VvUTgh1Oo*tD=Uu|deePx&wt#s*yVEB^;gW7`bu`c`249**WUBCk8g)Bckj=o{`J?p zuU!lKVAJ2y!m@PDjT;djlUlN`uhYy`IXzK@)6~>dz*X?$$B!DCnvFMe!uIMfRrqnBcoiat_$noQgSFYq-x^$^U(Gw0nSt}MtfeCZx+ODu|=X(44 z>bt8YRl8&=gITNItaM$aws<9Tqx8%RsT01-ezLk*mi1j?ZFR>j!&~<+W|(=Bot_#_`T2i&)7sUNhZ}pv+O+Hr z)mQG7E3o3cqfj^bvBi%)`}EKJG=#N)zVrWQR)`Wflwcs?{M0cf{IiwpG0|raZ_F%S z^}Kdc%dTT;Jt{5T)qL{KK}j~po;+8&lywl)D1W;7Z^Z}e zbGta;>zu_P*TW!0QqN$*Zo{ngwM=8NFvnUNtRU^}NjzG7~sY-h%1BmYbLs9m+aja(YdSW!H~B4h z4!h+sC4P_5lk7IHYsPa9HJ>Xj`+mTKLn~9QPq*dtTRx#9r>|TwS1?z$eGpL{Zmt)0@4^{jhI2xK z4ViAwpCx?%r#$Pqe(ZXus8byZ^UHrZeNf|TR?MH|a4CE9!li3%J$T-JthjLfe*cU{ zjk6CE(^QTef9Ue_=K>ps12<>Okn`FrK<=C^dZE^fao zHuKy&xg##FTK~ECFl=|P&D(WHPNK#7@BFzFSIrb-$h&T?psg%wHJ5LZ#-j6i$9EiJ zdQtNI{XgS%2J)$*(@o6R>?mB#R(SDZS8RLNdG&{Hzs~;n^s08^)|PJ%D==V+j61ilT`kFTZ0|?cHLE=Zl{KFQ3TvKPq!z^E z%H@#y#H2{XJ1WM+E^#|yn?zbIU% zwrkq!mDgV#vKJE>&IOw`A|S*xhZXr|TbnTI4uMrDG9C`(eh! z2eAT`^E@Xl;aFWc&pjkWJ zlak=&x2n0bCrx7VoD>iqE}rnZtBcEHQcF)y&w_2CVPR}r3^g@5)erxD(dqT( z^Ut}X!;RaH-`%fx;>T*oPe0p40$q;t);vf&zeW-|-o(!!bNuI3K0Y;#1Otih$C@{- zdsbp~#LYdq?xe|?SyrB=y{0xi;dvq2|99V&%h9*(xO!Ub(8H347fu>yC@Up$H8D)S z*rBJDwMok6{NtZjwN3XI^lpl3`*YyFa@ULZ^mo@00a$PTe+nfK<$JB0vwL3VTim!igs(1E=o4=XY?TrfUU2|n( z#nYqdg==4l>4n4{_vO8~qsMP~b02d~S@nsM^1~mEpHG-1(*OR?S#FE^pHh19>z!hQ zPjA@wrN6t=t+?9#gvqymbt%i2KI-vm`QgAOH|NKd@{7Et|J?gLn2x{vur>YKih0+$ zYc4SRSvjqfdOP>-tmit@3QE3YxPN*3?j`H-!jAr4NA1ML@8%u+dobVwpG$4H?enji z7bSYwm@DS;#n=8SJiEu@k!$nf<))t<)g>v;>-ZRAW@-w~&8cjuGl zwKWkvp2^&W-yVs^>GvY$8j7`%A?&aoYrvKNS@`JCqu;cGbSs8D~^BUc9(N z#A(U>^zs9bKPuR%v2EM;@a+9tZEAD&2X&gB7JvA+_x3}vtLD2qI=ful%ln_r5p@-` zHIsHzQ(v@lEAPXHiJ;!cm&Gav9S2D63>wTDE*?kAriub`KkK)$cdX>*ik->U+v9=M)s9bMNK`Qw=VQ zWi*THm^u59h3KeNR+cwLV; zb9c5mYZNN{+&=4s*V;b;PU@ylI2M$I6#TR@H8km*B@w+&U30?Z_0xYhZPV7gwPZ2l zWu@~0PCAhe{$1}+6fRLM2>v}=Z1=@nIUfPHW$)j=caMye6cQGmIB62o>Z@IWi`@?9 zZGZgeXm{7zih1p~-?n+!uAkJpt*x{k|U+$ebV>{&-910&z;?A1zt zdb_)u6*xG!x$nH0`%ZfO_0>J1TMJjDu^0KQYW#_iS=!Dgz%1P3~6P`bqac*wzjdt8=|74a}$*TFykqF7}Ki<4))20dgoR(i+xNV!5)m%P7K|u~~?q&s!Q+K9ZzL{fY zA;ah5=GOGsqNTn4aDu^trAt*8$YnKM{P(X;#=4Bh)6>(#-`_nYMWw5&Yr?c?ZJX22 zA2R+hXPOwp>HpDd!x#cu?iu+l7q*+vFV?Mk;@KwMr^#xQIVY)T3SN9_P`it1THOJvsbsFZ;zS zx0cQ96I;G@OX&gaUlRnRn~zO9@cK{u4yRxa&qa?d_Utc=4hXpwkeaRNDYVCK{wD3W zcNI8lPJF7FRR2AC^U0FysXXj=1+yfw{L&B{dqT+f8wl3EuD+GKVIn3%*e|<{_O7W3*K*@>`DHwD5G!R zzGsb(&TMOGHpl)=pT!H8yjhdBSB0~FQl)a$-X9ge(>*$R53abAvnFmE$0QaRi#o37 z>%;go`S%_;EUdK1;6Z(7hjY9_TBC1?{stYGn0$n#qhvF#;#K8sY}ZHUCYw; ze7tA1M6Lh8k&TNtW}Nf6Vs4iF`Q4=jylh=upA0r;nCLuAyYcJS#q8J4IVCDmv)=zW zb8cST9J_i>fBQ{5^WRzbJlj^*(mr!zg&*fHS-(50vK4MEarUicHhaf&_x`6nnQvbl zk-wJfQsl&>)+5 zzlx`LnZMi1iNdc+1u81`-ulktIqAW-iUhMC@mUW`ZCv`xs-&jhZr*iFZHmvljvFgH zu9)AC70I5Iy!`aUnPx)8={^VFIUf(X%)!JTc;(yoNh~{T@@BBdUAy?Qg!%jGg=Y)< zkAu!_d6Kq7QPGU8_DV&nK^q^q-S_)=^QLuaf4&-~9zO@2HVSU9vD42fv(CGACF%CMy)QOq z=C3fV4Kkcpk;0m1Zt~!I{yy6!UsqmCI8guZ#e6p3@^6P+_x$&K@pYbCw!q z{Ry9bD22rAYAUzCXYs@;bxGe5?fCy(Hj6syfBvlJ-PI|5{_~HAtM5CNq^R`G(K)=# zzkKzw>XMsDXJ*=!p7_epQ2($0KX>*2xu$0iS*k{COOQJkyQ^obb4GAg7S}bKO)@`k zMsgU>d^ox0#fvwG9tx-4_!gNtp(Dvc<;c;buZO(@LoB$ieJEgX$d8vlH*bH#*4O3- z7jLxt3$ilChv!<|Cc)==8TmKFg=IVCYoCjD#Od$*z22VNYW|!l9q(&CXFp&UjFzEcCOp^GbOD`Yv13i>ldtE zF24Wg{OzI7#n}@s-nkiJQ*O4as_Nt9_`hzZ>)og69XiyWrl@s@tKZ$lH&^yr?#;$i zt7a?SK9=z3=V9;=%)gJ7Ygc;)PM!9^SM14;8avfpNh?a0RCI~BO-jAwq_LG_cFMgh zrn>}2b?%(C z)#Y5&H}%&#|Mk1iY&jBV(%iY5eYe}T^x$COS+i#+Zj3NUJ0sE3-mYwIEq#4mEVlsD zrLsxaxwi<+lkwgZ5R{wi*v(s9R5W4A6cK@=p}KqjY}c7E{WzCx+Ec5G$-R9=x?M>J zY*dbK39~<4s_=GISp3hwY`f-P{j}ioMXCI(z;`GAJl(RzVXDsM=bsm@UF*Bk&d$zm z$%&A)wM#gH-`-gfxL80~c(Ii}`)u(i_p@e;@Tjet_F8rMWM$LS+a~>P75jQ=pZCAn ze(Lhe-}+ti+}C#}p!v*fx#^Qs7A{=Kc&_oigiBz{*)-?y@aaMIy1P#*J>?WuJCL-I zWl%7p`1kS$(x@WAbq& zEiJCf%E}!jFM}@Fw!cyT`By56MfZDa+~eI!o9^12Z+>3cBX4h~arW=OeRKBcUrwD+ zrucq-O8lj!#9wjCRqsqw@hmMCRM?>Z@~8TIWpjZ5?Pjrt$$x#f&t11$>ToT)`#1Ke z&rWBLU#fMur@ZCQk~jZfm=x7zJ#E=FJ^N?HCz;y+KmR1W&N}uXK`Hy#1CLL<$sd-? z>Er(SNu?QDcYU0GD4_gPs)0n0W2M8jtCLg?zAR~eUaHu7&g65NpKEcn^eHX92M<|` zKb%vKp88sKKFfUnCWQ~pPacW?=!$#4;nX#!2bD8?-Ae8_FA1A|oB8p9bK9~$?BQc; zR(#@pm3jdsjto-4PkgzW87RtLo*CcapU~{QiEO{mr5~7q2!8r)w9yy2E

    fwv`-|yT!{Ysq7REAdzAO1b^{PV({Yh};ozO|@%W#Xo$`tWAx>4yb73-<0x zyYPB$o_UgzlJhb{i7zj>1V8?)yKwn-`<*jeejC-db-9Z;f9pP((cpLd@V);>--&5= z#c^2GMQr={Q)SDR@ePoJ#qHLzMH{nN@i+O zwSUXz=lCl_7s?%)3Q*!B65&Dz&jU$`e~(>|y9N9J5V_RS|* zX5W?fj23a7;d4y!`ojAUkG%Xm{b9k54`&vi{kZ@&KAkojD$=I>1Pg3o2L zSyEEXmv-EdbBWTKRr$h#?_rv8mh`MYl~sG0XG<1HbX~ahvS{%mFV#1E>T>bhII_+2 zoQtD>-!<#}7!IwujxmF4u89Kj-7hD1hn_#FFID&SrRk2!-D36so9nrM$~pzr*evs% z)$r=})>)bJBL8aqd**%qK*9y~JqN;U%1risd6HH0_3HbD`!-sp%$;BJCGpH0D^8i? z2cH%`_Bq<>7=J{@KF!4Fa**lmA6K8xJGAex`^WkF>zLm)p0HKvYscxn3lL-v24*cTLbNPj%}!KPn+&!_Sk_SI}WZpjDI+87M#d=%%^l&Jpu zeRlhX&0icYe0_XeOv%(z(%SobyUy_plcZlylFq(oJ9PNW46{t87RPHIryzpv}Xi4zKm2UhHn(U}w6)E%znM))@P)Td2#_1hv5s#~`)lTjh)g=98YSR2&6Dfc ziR2{$Q^b@nJ__D6cT2+*n{{eOxI`OgwTMNXd=&cYSHL1~)5PszwO2ohvd`nbbe`>` z&DC=&|N3q-opPc_BQKS$n{{mK2J-(RX~ zCmaYnyDzKb|Hgx`wE&L-w|>j+Ee)FB{d{4X{aT}piKemfmCBrzdrk?qo$S~R9vTz0 zo6n!NS@Pq@kE{MVb@QEkypZKlWMm|0f;Ku@T1#77u}euvNGKp8Vnq~Rrn+R*9xv|5 zmnXhtRh~4PlKbes%5CW<+*blV*FGsMdUv6C@|`)2+XQ3vURLMd-`Bft-MR%EMY4EK zJ@uJo!kL(uxTET;)~wmH6+MO2{N{9YbaXVlj*5<+IA>1JmoFs|Yr|a6=swrHK6B6U zl~=beU(UYVf4-ZiC#R5*kOBvjja>gT)2w|BHp{lITbldyYgOU9JC-|Q)-CwG+vu=sM(r1<9dT*y+VcGR%#v=2{0lV){{%&CPYS$d~ne4Ii z!fLM^+c_)N>1OQN_7nS0zW7pNwf6UnYrCzUJQufe`jKF!a9Tz$Yu~5OkP-RLHIj-S ztOG7;^VMA7s#Sh!!DqMrJ$GRZ4;!S?IyRq$FClt{p+wK_=Le(0t84A9n3*Z6E9)vG zWocXro-}dx%)WB-oYuAH`|hkMIWsG$=kM{;3=Dex?A!L)Em2WrbKSXY<9F+T33EHS zudlmb9DPPjS?6J5MpowD*EX}FZ%?pN^8CE#WQNO(n=QYV?bc7Wxbf>(0w;g7s*R8F ztBkZ)9(VS{mS5KwJLcxTaP@L_zU9JJbNS-y%XqKl-tByK>(_%Lify}9JPUTk+^BqD z5cl`hXNidd?QPEztbf+nZP`+uRQ;0CM@wq4)~0V&wI3>MJi7W_pDQe??00YZC%0&N z^c^OBZp3)L|lEUYia`(cOrbBab&VH78UcYk7GQ9|oO8cD!TZL4EyB3PKocGPR zd+~1bn=c_IS!Xuyn31vL?mNfdZ~cAuA7+$Y@9Y)S^vXhpXZ`i|UB}esXsmbetIBFP z5#=^X#bS=1j76Q0E30Kk&xS?2ueTMpvc4#{*s%A@g9*=`e%iTtW7%UfSCKWYvB|<> z=Vw~J*><9|w9>|+%KJ9~2*xv4#VwDt8WelBGtod*_txpVK9 zhx#+T*m!fp=L3m0`>Ry%{j;zziVgPGc6 zdm`W7xb=H}I4W^4JxWfV;&J0IpZcLQX)Y0mF5b2N(rcf0XIF1*d*7p-$HN}<%jfS~ z-s>q*|8xUrP-us`+?rC;$Lps{Up4)4@O)jJ`-%gF22wl`M)_vb^k?-4?zFt|<=yOx zhfnJr=ALr1c1{e*z}%60^YGxFasE52voLWqo{H>`(@W?!BiL z2`~S&D|G#vp0!-m-yz3Gq*Uu z`uL6gb=!uo=RZ_Dj9$NRef;0u0#P?CLwwYPkBK}v{IKLuhQWjPala-dUA9+^|8=dr z$z?mJ@Rf+2&|W%wd-CaX=b6rZwbp#N>S~jD-Ou+Y&UrK+et9JQH~-_szR?MrzdJ8~ z957>gx4!*X3!}?HAN|+=(G?PY^s)W>_12n=VFD~QpS90Fe*f>Id-J;3bicVRch2-A zZmoRzr#<1q>%`Zuoo}5G@sY4*bN8Ri=k@*Fap?^+yNc${pWIsi_ulFaH-CNTegDs3 zMcv+Q54+z?7JBsYmwsK>lO-+|v3hTGZ9Bf+F4L$?UAp{H>+)*}A#r?lANB1I%$mM$ z<VIlU z&2q}`DX{->>HglXx?bN4zfATuS5$mts(Jr3zu|eM$@VReCg)lgehHCuxyZd&A>pC( z<_&32jeI1mrTlGnF}+`R+hC3O4)q?{-ueH3uz%=Ks{1$FJYeOgyGLH{|DhQaJSi|Z zx_|zkSLPX+`RxZj&oEAw+V|&5){>sG+sVb&&+mVa^o$W%kx17qY&E37@=Jx%#Q6 zle^qip?4RrXZIF63K-|1=r7F9333&DMTc@WOV6DZeIMc-%0Dd&!PjeP_IH_4M`meCwTc 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 um70+bDQe(Ig7r;o7zRKomOf!w^2s!smSXG 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

    dsg6&>WA8`5T)o1I=kPYZ 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 literal 0 HcmV?d00001 From 48735bb606cf4bf622c024307660fa81eda5facd Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sun, 6 Jan 2019 19:51:59 -0800 Subject: [PATCH 027/114] Back to Gradle 4.10 --- .idea/misc.xml | 34 ++++-------------------- gradle/wrapper/gradle-wrapper.properties | 2 +- 2 files changed, 6 insertions(+), 30 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index 1a0fbc3..320b3df 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,35 +1,11 @@ - - - + + + + - + diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 881a778..1c0396b 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-all.zip From 84eb0b30e16602710da87ff7f263baa6c5e747ea Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sun, 6 Jan 2019 20:00:29 -0800 Subject: [PATCH 028/114] Dependency updates --- app/build.gradle | 6 ++-- common/build.gradle | 2 +- dependencies.gradle | 57 +++++++++++++++++++------------------ notifications/build.gradle | 2 +- viewcomponents/build.gradle | 2 +- 5 files changed, 36 insertions(+), 33 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index dbf9c87..a459efe 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -24,9 +24,9 @@ dependencies { implementation project(':notifications') implementation project(':viewcomponents') - implementation 'androidx.appcompat:appcompat:' + versions.androidx - implementation 'androidx.recyclerview:recyclerview:' + versions.androidx - implementation 'com.google.android.material:material:' + versions.androidx + implementation 'androidx.appcompat:appcompat:' + versions.androidxCore + implementation 'androidx.recyclerview:recyclerview:' + versions.androidxRecyclerView + implementation 'com.google.android.material:material:' + versions.googleMaterial kapt 'androidx.lifecycle:lifecycle-compiler:' + versions.lifecycle diff --git a/common/build.gradle b/common/build.gradle index 9072c6a..59634ca 100644 --- a/common/build.gradle +++ b/common/build.gradle @@ -19,7 +19,7 @@ android { } dependencies { - implementation 'androidx.annotation:annotation:' + versions.androidx + implementation 'androidx.annotation:annotation:' + versions.androidxAnnotations api 'androidx.lifecycle:lifecycle-extensions:' + versions.lifecycle implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:' + versions.kotlin diff --git a/dependencies.gradle b/dependencies.gradle index e7427e5..28a58cf 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -1,37 +1,40 @@ ext.versions = [ - minSdk : 21, - compileSdk : 28, - buildTools : '28.0.3', - publishVersion : '0.8.0', - publishVersionCode: 28, + minSdk : 21, + compileSdk : 28, + buildTools : '28.0.3', + publishVersion : '0.8.0', + publishVersionCode : 28, - gradlePlugin : '3.2.1', - spotlessPlugin : '3.16.0', - versionPlugin : '0.20.0', + gradlePlugin : '3.2.1', + spotlessPlugin : '3.17.0', + versionPlugin : '0.20.0', - okHttp : '3.12.0', - rhino : '1.7.10', + okHttp : '3.12.1', + rhino : '1.7.10', - kotlin : '1.3.10', - coroutines : '1.0.1', - koin : '1.0.2', + kotlin : '1.3.11', + coroutines : '1.1.0', + koin : '1.0.2', - androidx : '1.0.0', - room : '2.0.0', - lifecycle : '2.0.0', + androidxAnnotations : '1.0.1', + androidxCore : '1.0.2', + androidxRecyclerView: '1.0.0', + googleMaterial : '1.0.0', + room : '2.0.0', + lifecycle : '2.0.0', - rxBinding : '3.0.0-alpha1', + rxBinding : '3.0.0-alpha1', - materialDialogs : '2.0.0-rc3', - rxkPrefs : '1.2.0', + materialDialogs : '2.0.0-rc7', + rxkPrefs : '1.2.0', - timber : '4.7.1', - junit : '4.12', - mockito : '2.23.0', - mockitoKotlin : '2.0.0-RC1', - truth : '0.42', + timber : '4.7.1', + junit : '4.12', + mockito : '2.23.4', + mockitoKotlin : '2.0.0-RC1', + truth : '0.42', - androidxTestRunner: '1.1.0', - androidxTest : '1.0.0', - archTesting : '2.0.0' + androidxTestRunner : '1.1.1', + androidxTest : '1.1.0', + archTesting : '2.0.0' ] diff --git a/notifications/build.gradle b/notifications/build.gradle index 24fd449..5cfdc84 100644 --- a/notifications/build.gradle +++ b/notifications/build.gradle @@ -16,7 +16,7 @@ android { dependencies { implementation project(':common') - api 'androidx.appcompat:appcompat:' + versions.androidx + api 'androidx.appcompat:appcompat:' + versions.androidxCore implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:' + versions.kotlin api 'org.jetbrains.kotlinx:kotlinx-coroutines-core:' + versions.coroutines diff --git a/viewcomponents/build.gradle b/viewcomponents/build.gradle index aaa0ab7..abbff09 100644 --- a/viewcomponents/build.gradle +++ b/viewcomponents/build.gradle @@ -18,7 +18,7 @@ dependencies { implementation project(':common') implementation project(':data') - implementation 'androidx.appcompat:appcompat:' + versions.androidx + implementation 'androidx.appcompat:appcompat:' + versions.androidxCore api 'androidx.lifecycle:lifecycle-extensions:' + versions.lifecycle api 'com.squareup.okhttp3:okhttp:' + versions.okHttp From de36a2f5e639532b2efb237c59969787cac4ee03 Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sun, 6 Jan 2019 21:29:07 -0800 Subject: [PATCH 029/114] Material Design 2 esque UI and a dark mode. Resolves #37, resolves #38. --- app/build.gradle | 1 + .../java/com/afollestad/nocknock/AppExt.kt | 59 ++++++++++++++++++ .../com/afollestad/nocknock/NockNockApp.kt | 2 + .../nocknock/adapter/SiteAdapter.kt | 4 +- .../broadcasts/StatusUpdateIntentReceiver.kt | 2 +- .../nocknock/koin/MainPrefModule.kt | 32 ++++++++++ .../nocknock/ui/DarkModeSwitchActivity.kt | 56 +++++++++++++++++ .../nocknock/ui/addsite/AddSiteActivity.kt | 11 +++- .../nocknock/ui/addsite/AddSiteActivityExt.kt | 3 + .../nocknock/ui/main/MainActivity.kt | 62 ++++++++++++++----- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 9 ++- .../ui/viewsite/ViewSiteActivityExt.kt | 2 +- app/src/main/res/drawable/divider.xml | 2 +- app/src/main/res/layout/activity_addsite.xml | 15 +---- app/src/main/res/layout/activity_main.xml | 29 +++++---- app/src/main/res/layout/activity_viewsite.xml | 15 +---- app/src/main/res/layout/include_app_bar.xml | 30 +++++++++ app/src/main/res/menu/menu_main.xml | 7 +++ app/src/main/res/values-v21/styles_parent.xml | 8 +++ app/src/main/res/values-v23/styles.xml | 9 +++ app/src/main/res/values-v27/styles.xml | 20 ++++++ app/src/main/res/values/arrays.xml | 6 ++ app/src/main/res/values/attrs.xml | 8 +++ app/src/main/res/values/colors.xml | 12 ++-- app/src/main/res/values/strings.xml | 14 ++++- app/src/main/res/values/styles.xml | 53 +++------------- app/src/main/res/values/styles_parents.xml | 48 ++++++++++++++ app/src/main/res/values/styles_text.xml | 9 +++ common/build.gradle | 2 + .../nocknock/utilities/rx/RxLifecycleExt.kt | 58 +++++++++++++++++ .../nocknock/utilities/ui/ContextExt.kt | 30 +++++++++ dependencies.gradle | 14 ++++- 32 files changed, 517 insertions(+), 115 deletions(-) create mode 100644 app/src/main/java/com/afollestad/nocknock/koin/MainPrefModule.kt create mode 100644 app/src/main/java/com/afollestad/nocknock/ui/DarkModeSwitchActivity.kt create mode 100644 app/src/main/res/layout/include_app_bar.xml create mode 100644 app/src/main/res/values-v21/styles_parent.xml create mode 100644 app/src/main/res/values-v23/styles.xml create mode 100644 app/src/main/res/values-v27/styles.xml create mode 100644 app/src/main/res/values/attrs.xml create mode 100644 app/src/main/res/values/styles_parents.xml create mode 100644 app/src/main/res/values/styles_text.xml create mode 100644 common/src/main/java/com/afollestad/nocknock/utilities/rx/RxLifecycleExt.kt create mode 100644 common/src/main/java/com/afollestad/nocknock/utilities/ui/ContextExt.kt diff --git a/app/build.gradle b/app/build.gradle index a459efe..bb5b985 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -27,6 +27,7 @@ dependencies { implementation 'androidx.appcompat:appcompat:' + versions.androidxCore implementation 'androidx.recyclerview:recyclerview:' + versions.androidxRecyclerView implementation 'com.google.android.material:material:' + versions.googleMaterial + implementation 'androidx.browser:browser:' + versions.androidxBrowser kapt 'androidx.lifecycle:lifecycle-compiler:' + versions.lifecycle diff --git a/app/src/main/java/com/afollestad/nocknock/AppExt.kt b/app/src/main/java/com/afollestad/nocknock/AppExt.kt index b1c22cf..4f185e8 100644 --- a/app/src/main/java/com/afollestad/nocknock/AppExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/AppExt.kt @@ -18,9 +18,18 @@ package com.afollestad.nocknock import android.app.Activity import android.app.Application import android.app.Application.ActivityLifecycleCallbacks +import android.content.ActivityNotFoundException +import android.content.Intent +import android.net.Uri import android.os.Bundle +import androidx.annotation.AttrRes +import androidx.annotation.ColorRes +import androidx.browser.customtabs.CustomTabsIntent +import androidx.core.content.ContextCompat import androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY import androidx.core.text.HtmlCompat.fromHtml +import com.afollestad.materialdialogs.utils.MDUtil.resolveColor +import com.afollestad.nocknock.utilities.ui.toast typealias ActivityLifeChange = (activity: Activity, resumed: Boolean) -> Unit @@ -50,3 +59,53 @@ fun Application.onActivityLifeChange(cb: ActivityLifeChange) { } fun String.toHtml() = fromHtml(this, FROM_HTML_MODE_LEGACY) + +fun String.toUri() = Uri.parse(this)!! + +fun Activity.setStatusBarColor( + @ColorRes res: Int? = null, + @AttrRes attr: Int? = null +) { + require(res != null || attr != null) { "Must specify at least one arg." } + if (res != null) { + val color = ContextCompat.getColor(this, res) + window.statusBarColor = color + } else if (attr != null) { + val color = resolveColor(this, attr = attr) + window.statusBarColor = color + } +} + +fun Activity.viewUrl(url: String) { + val customTabsIntent = CustomTabsIntent.Builder() + .apply { + setToolbarColor(resolveColor(this@viewUrl, attr = R.attr.colorPrimary)) + } + .build() + try { + customTabsIntent.launchUrl(this, url.toUri()) + } catch (_: ActivityNotFoundException) { + toast(R.string.install_web_browser) + } +} + +fun Activity.viewUrlWithApp( + url: String, + pkg: String +) { + val intent = Intent(Intent.ACTION_VIEW).apply { + data = url.toUri() + } + val resInfo = packageManager.queryIntentActivities(intent, 0) + for (info in resInfo) { + if (info.activityInfo.packageName.toLowerCase().contains(pkg) || + info.activityInfo.name.toLowerCase().contains(pkg) + ) { + startActivity(intent.apply { + setPackage(info.activityInfo.packageName) + }) + return + } + } + viewUrl(url) +} diff --git a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt index 9cc5a8e..5df44c2 100644 --- a/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt +++ b/app/src/main/java/com/afollestad/nocknock/NockNockApp.kt @@ -20,6 +20,7 @@ package com.afollestad.nocknock import android.app.Application import com.afollestad.nocknock.engine.engineModule import com.afollestad.nocknock.koin.mainModule +import com.afollestad.nocknock.koin.prefModule import com.afollestad.nocknock.koin.viewModelModule import com.afollestad.nocknock.notifications.NockNotificationManager import com.afollestad.nocknock.notifications.notificationsModule @@ -42,6 +43,7 @@ class NockNockApp : Application() { } val modules = listOf( + prefModule, mainModule, engineModule, commonModule, diff --git a/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt b/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt index 4e061c9..e1b034c 100644 --- a/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt +++ b/app/src/main/java/com/afollestad/nocknock/adapter/SiteAdapter.kt @@ -37,7 +37,7 @@ typealias Listener = (model: Site, longClick: Boolean) -> Unit /** @author Aidan Follestad (@afollestad) */ class SiteViewHolder constructor( itemView: View, - private val adapter: ServerAdapter + private val adapter: SiteAdapter ) : RecyclerView.ViewHolder(itemView), View.OnLongClickListener { init { @@ -94,7 +94,7 @@ class SiteViewHolder constructor( } /** @author Aidan Follestad (@afollestad) */ -class ServerAdapter(private val listener: Listener) : RecyclerView.Adapter() { +class SiteAdapter(private val listener: Listener) : RecyclerView.Adapter() { private var models = mutableListOf() diff --git a/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt b/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt index c5567c5..ef8a30a 100644 --- a/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt +++ b/app/src/main/java/com/afollestad/nocknock/broadcasts/StatusUpdateIntentReceiver.kt @@ -37,7 +37,7 @@ class StatusUpdateIntentReceiver( private var callback: SiteCallback? ) : LifecycleObserver { - internal val intentReceiver = object : BroadcastReceiver() { + private val intentReceiver = object : BroadcastReceiver() { override fun onReceive( context: Context, intent: Intent diff --git a/app/src/main/java/com/afollestad/nocknock/koin/MainPrefModule.kt b/app/src/main/java/com/afollestad/nocknock/koin/MainPrefModule.kt new file mode 100644 index 0000000..654b76d --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/koin/MainPrefModule.kt @@ -0,0 +1,32 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.koin + +import com.afollestad.rxkprefs.RxkPrefs +import com.afollestad.rxkprefs.rxkPrefs +import org.koin.dsl.module.module + +const val PREF_DARK_MODE = "dark_mode" + +/** @author Aidan Follestad (@afollestad) */ +val prefModule = module { + + single { rxkPrefs(get(), "settings") } + + factory(name = PREF_DARK_MODE) { + get().boolean(PREF_DARK_MODE, false) + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/DarkModeSwitchActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/DarkModeSwitchActivity.kt new file mode 100644 index 0000000..dbdedad --- /dev/null +++ b/app/src/main/java/com/afollestad/nocknock/ui/DarkModeSwitchActivity.kt @@ -0,0 +1,56 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.ui + +import android.os.Bundle +import androidx.appcompat.app.AppCompatActivity +import com.afollestad.nocknock.R +import com.afollestad.nocknock.koin.PREF_DARK_MODE +import com.afollestad.nocknock.utilities.rx.attachLifecycle +import com.afollestad.rxkprefs.Pref +import org.koin.android.ext.android.inject +import timber.log.Timber.d as log + +/** @author Aidan Follestad (afollestad) */ +abstract class DarkModeSwitchActivity : AppCompatActivity() { + + private var isDarkModeEnabled: Boolean = false + private val darkModePref by inject>(name = PREF_DARK_MODE) + + override fun onCreate(savedInstanceState: Bundle?) { + isDarkModeEnabled = darkModePref.get() + setTheme(themeRes()) + super.onCreate(savedInstanceState) + + darkModePref.observe() + .filter { it != isDarkModeEnabled } + .subscribe { + log("Theme changed, recreating Activity.") + recreate() + } + .attachLifecycle(this) + } + + override fun onResume() { + super.onResume() + } + + private fun themeRes() = if (darkModePref.get()) { + R.style.AppTheme_Dark + } else { + R.style.AppTheme + } +} diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt index 9e91397..78ff9fa 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivity.kt @@ -21,6 +21,7 @@ import android.widget.ArrayAdapter import androidx.appcompat.app.AppCompatActivity import com.afollestad.nocknock.R import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.setStatusBarColor import com.afollestad.nocknock.viewcomponents.ext.conceal import com.afollestad.nocknock.viewcomponents.ext.onLayout import com.afollestad.nocknock.viewcomponents.livedata.attachLiveData @@ -38,11 +39,12 @@ import kotlinx.android.synthetic.main.activity_addsite.responseValidationSearchT import kotlinx.android.synthetic.main.activity_addsite.rootView import kotlinx.android.synthetic.main.activity_addsite.scriptInputLayout import kotlinx.android.synthetic.main.activity_addsite.textUrlWarning -import kotlinx.android.synthetic.main.activity_addsite.toolbar import kotlinx.android.synthetic.main.activity_addsite.validationModeDescription +import kotlinx.android.synthetic.main.include_app_bar.toolbar import org.koin.androidx.viewmodel.ext.android.viewModel import kotlin.math.max import kotlin.properties.Delegates.notNull +import kotlinx.android.synthetic.main.include_app_bar.toolbar_title as toolbarTitle const val KEY_FAB_X = "fab_x" const val KEY_FAB_Y = "fab_y" @@ -62,6 +64,7 @@ class AddSiteActivity : AppCompatActivity() { @SuppressLint("SetTextI18n") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + setStatusBarColor(res = R.color.inkColorDark) setContentView(R.layout.activity_addsite) setupUi(savedInstanceState) @@ -133,7 +136,11 @@ class AddSiteActivity : AppCompatActivity() { } private fun setupUi(savedInstanceState: Bundle?) { - toolbar.setNavigationOnClickListener { closeActivityWithReveal() } + toolbarTitle.setText(R.string.add_site) + toolbar.run { + setNavigationIcon(R.drawable.ic_action_close) + setNavigationOnClickListener { closeActivityWithReveal() } + } if (savedInstanceState == null) { rootView.conceal() diff --git a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt index 4f1f9e6..04e62c7 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt @@ -18,6 +18,8 @@ package com.afollestad.nocknock.ui.addsite import android.view.ViewAnimationUtils.createCircularReveal import android.view.animation.AccelerateInterpolator import android.view.animation.DecelerateInterpolator +import com.afollestad.nocknock.R +import com.afollestad.nocknock.setStatusBarColor import com.afollestad.nocknock.utilities.ext.onEnd import com.afollestad.nocknock.viewcomponents.ext.conceal import com.afollestad.nocknock.viewcomponents.ext.show @@ -40,6 +42,7 @@ internal fun AddSiteActivity.closeActivityWithReveal() { if (isClosing) { return } + setStatusBarColor(attr = R.attr.colorPrimary) isClosing = true createCircularReveal(rootView, revealCx, revealCy, revealRadius, 0f) .apply { diff --git a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt index 0c9bc7d..17e9341 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/main/MainActivity.kt @@ -17,38 +17,45 @@ package com.afollestad.nocknock.ui.main import android.content.Intent import android.os.Bundle -import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.Observer import androidx.recyclerview.widget.DividerItemDecoration import androidx.recyclerview.widget.DividerItemDecoration.VERTICAL import androidx.recyclerview.widget.LinearLayoutManager import com.afollestad.materialdialogs.MaterialDialog import com.afollestad.materialdialogs.list.listItems +import com.afollestad.materialdialogs.list.listItemsSingleChoice import com.afollestad.nocknock.R -import com.afollestad.nocknock.adapter.ServerAdapter +import com.afollestad.nocknock.adapter.SiteAdapter import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.dialogs.AboutDialog +import com.afollestad.nocknock.koin.PREF_DARK_MODE import com.afollestad.nocknock.notifications.NockNotificationManager +import com.afollestad.nocknock.ui.DarkModeSwitchActivity import com.afollestad.nocknock.utilities.providers.IntentProvider +import com.afollestad.nocknock.utilities.ui.toast +import com.afollestad.nocknock.viewUrl +import com.afollestad.nocknock.viewUrlWithApp import com.afollestad.nocknock.viewcomponents.ext.showOrHide +import com.afollestad.rxkprefs.Pref import kotlinx.android.synthetic.main.activity_main.fab import kotlinx.android.synthetic.main.activity_main.list import kotlinx.android.synthetic.main.activity_main.loadingProgress -import kotlinx.android.synthetic.main.activity_main.toolbar +import kotlinx.android.synthetic.main.include_app_bar.toolbar import kotlinx.android.synthetic.main.include_empty_view.emptyText import org.koin.android.ext.android.inject import org.koin.androidx.viewmodel.ext.android.viewModel /** @author Aidan Follestad (@afollestad) */ -class MainActivity : AppCompatActivity() { +class MainActivity : DarkModeSwitchActivity() { private val notificationManager by inject() private val intentProvider by inject() + private val darkModePref by inject>(name = PREF_DARK_MODE) internal val viewModel by viewModel() - private lateinit var adapter: ServerAdapter + private lateinit var siteAdapter: SiteAdapter private val statusUpdateReceiver by lazy { StatusUpdateIntentReceiver(application, intentProvider) { @@ -70,7 +77,7 @@ class MainActivity : AppCompatActivity() { viewModel.onSites() .observe(this, Observer { - adapter.set(it) + siteAdapter.set(it) emptyText.showOrHide(it.isEmpty()) }) loadingProgress.observe(this, viewModel.onIsLoading()) @@ -79,20 +86,27 @@ class MainActivity : AppCompatActivity() { } private fun setupUi() { - toolbar.inflateMenu(R.menu.menu_main) - toolbar.setOnMenuItemClickListener { item -> - if (item.itemId == R.id.about) { - AboutDialog.show(this) + toolbar.run { + inflateMenu(R.menu.menu_main) + menu.findItem(R.id.dark_mode) + .isChecked = darkModePref.get() + setOnMenuItemClickListener { item -> + when (item.itemId) { + R.id.about -> AboutDialog.show(this@MainActivity) + R.id.dark_mode -> darkModePref.set(!darkModePref.get()) + R.id.support_me -> supportMe() + } + return@setOnMenuItemClickListener true } - return@setOnMenuItemClickListener true } - adapter = ServerAdapter(this::onSiteSelected) - - list.layoutManager = LinearLayoutManager(this) - list.adapter = adapter - list.addItemDecoration(DividerItemDecoration(this, VERTICAL)) + siteAdapter = SiteAdapter(this::onSiteSelected) + list.run { + layoutManager = LinearLayoutManager(this@MainActivity) + adapter = siteAdapter + addItemDecoration(DividerItemDecoration(this@MainActivity, VERTICAL)) + } fab.setOnClickListener { addSite() } } @@ -119,4 +133,20 @@ class MainActivity : AppCompatActivity() { viewSite(model) } } + + private fun supportMe() { + MaterialDialog(this).show { + title(R.string.support_me) + message(R.string.support_me_message, html = true, lineHeightMultiplier = 1.4f) + listItemsSingleChoice(R.array.donation_options) { _, index, _ -> + when (index) { + 0 -> viewUrl("https://paypal.me/AidanFollestad") + 1 -> viewUrlWithApp("https://cash.me/\$afollestad", pkg = "com.squareup.cash") + 2 -> viewUrlWithApp("https://venmo.com/afollestad", pkg = "com.venmo") + } + toast(R.string.thank_you) + } + positiveButton(R.string.next) + } + } } diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt index 8f82296..6b233f0 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivity.kt @@ -25,10 +25,11 @@ import com.afollestad.nocknock.R import com.afollestad.nocknock.broadcasts.StatusUpdateIntentReceiver import com.afollestad.nocknock.data.model.Site import com.afollestad.nocknock.data.model.ValidationMode +import com.afollestad.nocknock.setStatusBarColor import com.afollestad.nocknock.utilities.providers.IntentProvider -import com.afollestad.nocknock.viewcomponents.livedata.attachLiveData import com.afollestad.nocknock.viewcomponents.ext.dimenFloat import com.afollestad.nocknock.viewcomponents.ext.onScroll +import com.afollestad.nocknock.viewcomponents.livedata.attachLiveData import com.afollestad.nocknock.viewcomponents.livedata.toViewError import com.afollestad.nocknock.viewcomponents.livedata.toViewText import com.afollestad.nocknock.viewcomponents.livedata.toViewVisibility @@ -47,10 +48,11 @@ import kotlinx.android.synthetic.main.activity_viewsite.scrollView import kotlinx.android.synthetic.main.activity_viewsite.textLastCheckResult import kotlinx.android.synthetic.main.activity_viewsite.textNextCheck import kotlinx.android.synthetic.main.activity_viewsite.textUrlWarning -import kotlinx.android.synthetic.main.activity_viewsite.toolbar import kotlinx.android.synthetic.main.activity_viewsite.validationModeDescription +import kotlinx.android.synthetic.main.include_app_bar.toolbar import org.koin.android.ext.android.inject import org.koin.androidx.viewmodel.ext.android.viewModel +import kotlinx.android.synthetic.main.include_app_bar.toolbar_title as toolbarTitle /** @author Aidan Follestad (@afollestad) */ class ViewSiteActivity : AppCompatActivity() { @@ -67,6 +69,7 @@ class ViewSiteActivity : AppCompatActivity() { @SuppressLint("SetTextI18n") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + setStatusBarColor(res = R.color.inkColorDark) setContentView(R.layout.activity_viewsite) setupUi() @@ -156,7 +159,9 @@ class ViewSiteActivity : AppCompatActivity() { } private fun setupUi() { + toolbarTitle.setText(R.string.add_site) toolbar.run { + setNavigationIcon(R.drawable.ic_action_close) setNavigationOnClickListener { finish() } inflateMenu(R.menu.menu_viewsite) menu.findItem(R.id.refresh) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt index 2504966..ab0a6ea 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/viewsite/ViewSiteActivityExt.kt @@ -22,7 +22,7 @@ import com.afollestad.nocknock.data.model.Status import com.afollestad.nocknock.data.model.isPending import com.afollestad.nocknock.toHtml import com.afollestad.nocknock.utilities.ext.animateRotation -import kotlinx.android.synthetic.main.activity_viewsite.toolbar +import kotlinx.android.synthetic.main.include_app_bar.toolbar const val KEY_SITE = "site_model" diff --git a/app/src/main/res/drawable/divider.xml b/app/src/main/res/drawable/divider.xml index 9be83b4..7561a3c 100644 --- a/app/src/main/res/drawable/divider.xml +++ b/app/src/main/res/drawable/divider.xml @@ -1,4 +1,4 @@ - + diff --git a/app/src/main/res/layout/activity_addsite.xml b/app/src/main/res/layout/activity_addsite.xml index 8567019..c02c176 100644 --- a/app/src/main/res/layout/activity_addsite.xml +++ b/app/src/main/res/layout/activity_addsite.xml @@ -1,7 +1,6 @@ - + @@ -157,7 +148,7 @@ android:layout_height="wrap_content" android:layout_marginBottom="@dimen/content_inset" android:layout_marginTop="@dimen/content_inset_half" - android:background="@color/colorPrimaryDark" + android:background="@color/inkColorDark" /> - + - - - + + + + + + + + diff --git a/app/src/main/res/menu/menu_main.xml b/app/src/main/res/menu/menu_main.xml index c73e1ba..b3b1727 100644 --- a/app/src/main/res/menu/menu_main.xml +++ b/app/src/main/res/menu/menu_main.xml @@ -3,4 +3,11 @@ + + diff --git a/app/src/main/res/values-v21/styles_parent.xml b/app/src/main/res/values-v21/styles_parent.xml new file mode 100644 index 0000000..5015af9 --- /dev/null +++ b/app/src/main/res/values-v21/styles_parent.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/app/src/main/res/values-v23/styles.xml b/app/src/main/res/values-v23/styles.xml new file mode 100644 index 0000000..c1a8339 --- /dev/null +++ b/app/src/main/res/values-v23/styles.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/app/src/main/res/values-v27/styles.xml b/app/src/main/res/values-v27/styles.xml new file mode 100644 index 0000000..c4efc7a --- /dev/null +++ b/app/src/main/res/values-v27/styles.xml @@ -0,0 +1,20 @@ + + + + + + + + diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 1927c7b..d4e6453 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -12,4 +12,10 @@ JavaScript Evaluation + + via PayPal + via Cash App + via Venmo + + diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml new file mode 100644 index 0000000..0df2f69 --- /dev/null +++ b/app/src/main/res/values/attrs.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 4e7d9b6..778e854 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,10 +1,14 @@ - #455A64 - #37474F + #FFFFFF + #F5F5F5 + + #212121 + #212121 + + #455A64 + #37474F #FF6E40 - #EEEEEE - diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d4be0d7..be8314b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -13,7 +13,8 @@ LinkedIn

    Nock Nock is open source! Check out the GitHub page!
    Icon by Kevin Aguilar of 221 Pixels. - ]]> + ]]> + Dark Mode Dismiss Add Site @@ -74,4 +75,15 @@ exception to pass custom error messages to Nock Nock. + Donate + MNML
    was created and is maintained by one person. Donations are much + appreciated and encourage continued support. + ]]> + Thank you very much! + Next + + Please install a video viewer app, such as Google Photos. + Please install a web browser app, such as Google Chrome. + diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index d1319a1..8c4dce4 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -1,27 +1,14 @@ - - - - - - - - - diff --git a/app/src/main/res/values/styles_parents.xml b/app/src/main/res/values/styles_parents.xml new file mode 100644 index 0000000..8dfaaea --- /dev/null +++ b/app/src/main/res/values/styles_parents.xml @@ -0,0 +1,48 @@ + + + + + + + + + diff --git a/common/build.gradle b/common/build.gradle index 59634ca..8472928 100644 --- a/common/build.gradle +++ b/common/build.gradle @@ -29,6 +29,8 @@ dependencies { implementation 'org.koin:koin-android:' + versions.koin implementation 'org.mozilla:rhino:' + versions.rhino + api 'com.afollestad:rxkprefs:' + versions.rxkPrefs + testImplementation 'junit:junit:' + versions.junit testImplementation 'com.google.truth:truth:' + versions.truth testImplementation 'androidx.arch.core:core-testing:' + versions.archTesting diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/rx/RxLifecycleExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/rx/RxLifecycleExt.kt new file mode 100644 index 0000000..a306aad --- /dev/null +++ b/common/src/main/java/com/afollestad/nocknock/utilities/rx/RxLifecycleExt.kt @@ -0,0 +1,58 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@file:Suppress("unused") + +package com.afollestad.nocknock.utilities.rx + +import androidx.lifecycle.Lifecycle.Event.ON_DESTROY +import androidx.lifecycle.Lifecycle.State.DESTROYED +import androidx.lifecycle.LifecycleObserver +import androidx.lifecycle.LifecycleOwner +import androidx.lifecycle.OnLifecycleEvent +import io.reactivex.disposables.Disposable + +/** @author Aidan Follestad (afollestad) */ +class LifecycleAwareDisposable( + private val disposable: Disposable +) : LifecycleObserver { + + @OnLifecycleEvent(ON_DESTROY) + fun dispose() = disposable.dispose() +} + +/** + * Wraps [disposable] so that it is disposed of when the receiving [LifecycleOwner] + * is destroyed. + * + * @author Aidan Follestad (afollestad) + */ +fun LifecycleOwner.ownRx(disposable: Disposable) { + if (this.lifecycle.currentState == DESTROYED) { + disposable.dispose() + return + } + this.lifecycle.addObserver(LifecycleAwareDisposable(disposable)) +} + +/** + * Attaches the receiving [Disposable] so that it is disposed of when [lifecycleOwner] + * is destroyed. + * + * @author Aidan Follestad (afollestad) + */ +fun Disposable.attachLifecycle(lifecycleOwner: LifecycleOwner) { + lifecycleOwner.ownRx(this) +} diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/ui/ContextExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ui/ContextExt.kt new file mode 100644 index 0000000..5b09b3d --- /dev/null +++ b/common/src/main/java/com/afollestad/nocknock/utilities/ui/ContextExt.kt @@ -0,0 +1,30 @@ +/** + * Designed and developed by Aidan Follestad (@afollestad) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.afollestad.nocknock.utilities.ui + +import android.content.Context +import android.widget.Toast + +private var toast: Toast? = null + +/** Shows a toast in the receiving context, cancelling any previous. */ +fun Context.toast(message: Int) { + toast?.cancel() + toast = Toast.makeText(this, message, Toast.LENGTH_LONG) + .apply { + show() + } +} diff --git a/dependencies.gradle b/dependencies.gradle index 28a58cf..2f05d0f 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -1,39 +1,51 @@ ext.versions = [ + // Project minSdk : 21, compileSdk : 28, buildTools : '28.0.3', publishVersion : '0.8.0', publishVersionCode : 28, + // Plugins gradlePlugin : '3.2.1', spotlessPlugin : '3.17.0', versionPlugin : '0.20.0', + // Misc okHttp : '3.12.1', rhino : '1.7.10', + // Kotlin kotlin : '1.3.11', coroutines : '1.1.0', koin : '1.0.2', + // Google/AndroidX androidxAnnotations : '1.0.1', androidxCore : '1.0.2', androidxRecyclerView: '1.0.0', + androidxBrowser : '1.0.0', googleMaterial : '1.0.0', room : '2.0.0', lifecycle : '2.0.0', + // Rx rxBinding : '3.0.0-alpha1', + // afollestad materialDialogs : '2.0.0-rc7', - rxkPrefs : '1.2.0', + rxkPrefs : '1.2.1', + // Debugging timber : '4.7.1', + + // Unit testing junit : '4.12', mockito : '2.23.4', mockitoKotlin : '2.0.0-RC1', truth : '0.42', + // UI testing androidxTestRunner : '1.1.1', androidxTest : '1.1.0', archTesting : '2.0.0' From 1569871524f26d84290b4c3b7532dabf15d5281b Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sun, 6 Jan 2019 21:33:54 -0800 Subject: [PATCH 030/114] Cleanup --- .../nocknock/ui/DarkModeSwitchActivity.kt | 4 ---- .../afollestad/nocknock/ui/ScopedViewModel.kt | 3 +-- app/src/main/res/values-v21/styles_parent.xml | 8 ------- app/src/main/res/values/dimens.xml | 4 ---- app/src/main/res/values/strings.xml | 2 -- app/src/main/res/values/styles_parents.xml | 4 +++- .../nocknock/utilities/ext/UriExt.kt | 20 ------------------ .../utilities/livedata/LiveDataExt.kt | 4 ++-- .../afollestad/nocknock/data/model/Status.kt | 2 -- .../engine/validation/ValidationJob.kt | 2 +- .../engine/validation/ValidationManager.kt | 7 +++--- .../ic_notification.png | Bin .../ic_notification.png | Bin .../ic_notification.png | Bin .../ic_notification.png | Bin .../ic_notification.png | Bin .../nocknock/viewcomponents/ext/ViewExt.kt | 8 ------- .../js/JavaScriptInputLayout.kt | 2 -- viewcomponents/src/main/res/values/dimens.xml | 1 - 19 files changed, 10 insertions(+), 61 deletions(-) delete mode 100644 app/src/main/res/values-v21/styles_parent.xml delete mode 100644 common/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt rename notifications/src/main/res/{drawable-hdpi-v11 => drawable-hdpi}/ic_notification.png (100%) rename notifications/src/main/res/{drawable-mdpi-v11 => drawable-mdpi}/ic_notification.png (100%) rename notifications/src/main/res/{drawable-xhdpi-v11 => drawable-xhdpi}/ic_notification.png (100%) rename notifications/src/main/res/{drawable-xxhdpi-v11 => drawable-xxhdpi}/ic_notification.png (100%) rename notifications/src/main/res/{drawable-xxxhdpi-v11 => drawable-xxxhdpi}/ic_notification.png (100%) diff --git a/app/src/main/java/com/afollestad/nocknock/ui/DarkModeSwitchActivity.kt b/app/src/main/java/com/afollestad/nocknock/ui/DarkModeSwitchActivity.kt index dbdedad..64d9d71 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/DarkModeSwitchActivity.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/DarkModeSwitchActivity.kt @@ -44,10 +44,6 @@ abstract class DarkModeSwitchActivity : AppCompatActivity() { .attachLifecycle(this) } - override fun onResume() { - super.onResume() - } - private fun themeRes() = if (darkModePref.get()) { R.style.AppTheme_Dark } else { diff --git a/app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt b/app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt index 750173a..ad5e2dc 100644 --- a/app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt +++ b/app/src/main/java/com/afollestad/nocknock/ui/ScopedViewModel.kt @@ -19,7 +19,6 @@ import androidx.lifecycle.ViewModel import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Job -import org.jetbrains.annotations.TestOnly /** @author Aidan Follestad (@afollestad) */ abstract class ScopedViewModel(mainDispatcher: CoroutineDispatcher) : ViewModel() { @@ -32,5 +31,5 @@ abstract class ScopedViewModel(mainDispatcher: CoroutineDispatcher) : ViewModel( job.cancel() } - @TestOnly open fun destroy() = job.cancel() + //@TestOnly open fun destroy() = job.cancel() } diff --git a/app/src/main/res/values-v21/styles_parent.xml b/app/src/main/res/values-v21/styles_parent.xml deleted file mode 100644 index 5015af9..0000000 --- a/app/src/main/res/values-v21/styles_parent.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index d08eafe..4c19a47 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -1,10 +1,6 @@ 28sp - 6dp - 4dp - 8dp - diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index be8314b..190a536 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -38,7 +38,6 @@ Next Validation Next Validation: %1$s Now - None (turned off) None Disable Automatic Validation @@ -83,7 +82,6 @@ Thank you very much! Next - Please install a video viewer app, such as Google Photos. Please install a web browser app, such as Google Chrome. diff --git a/app/src/main/res/values/styles_parents.xml b/app/src/main/res/values/styles_parents.xml index 8dfaaea..95447f3 100644 --- a/app/src/main/res/values/styles_parents.xml +++ b/app/src/main/res/values/styles_parents.xml @@ -43,6 +43,8 @@ @font/lato_bold - diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt deleted file mode 100644 index c46086e..0000000 --- a/common/src/main/java/com/afollestad/nocknock/utilities/ext/UriExt.kt +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Designed and developed by Aidan Follestad (@afollestad) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.afollestad.nocknock.utilities.ext - -import android.net.Uri - -fun Uri.isHttpOrHttps() = scheme == "http" || scheme == "https" diff --git a/common/src/main/java/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt b/common/src/main/java/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt index cacdc92..c74ed4d 100644 --- a/common/src/main/java/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt +++ b/common/src/main/java/com/afollestad/nocknock/utilities/livedata/LiveDataExt.kt @@ -21,5 +21,5 @@ import androidx.lifecycle.Transformations fun LiveData.map(mapper: (X) -> Y) = Transformations.map(this, mapper)!! -fun LiveData.switchMap(mapper: (X) -> LiveData) = - Transformations.switchMap(this, mapper)!! +//fun LiveData.switchMap(mapper: (X) -> LiveData) = +// Transformations.switchMap(this, mapper)!! diff --git a/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt b/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt index 4dcc3a0..e6294ea 100644 --- a/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt +++ b/data/src/main/java/com/afollestad/nocknock/data/model/Status.kt @@ -55,5 +55,3 @@ fun Status.textRes() = when (this) { } fun Status?.isPending() = this == WAITING || this == CHECKING - -fun Int.toSiteStatus() = Status.fromValue(this) diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt index f5235e8..22c0951 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationJob.kt @@ -66,7 +66,7 @@ class ValidationJob : JobService() { val siteId = params.extras.getLong(KEY_SITE_ID) GlobalScope.launch(Main) { - val site = async(IO) { database.getSite(siteId) }.await() + val site = withContext(IO) { database.getSite(siteId) } if (site == null) { log("Unable to find a site for ID $siteId, this job will not be rescheduled.") return@launch jobFinished(params, false) diff --git a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt index d24d4d3..0452f49 100644 --- a/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt +++ b/engine/src/main/java/com/afollestad/nocknock/engine/validation/ValidationManager.kt @@ -30,7 +30,6 @@ import com.afollestad.nocknock.utilities.providers.StringProvider import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.Response -import org.jetbrains.annotations.TestOnly import java.net.SocketTimeoutException import java.util.concurrent.TimeUnit.MILLISECONDS import timber.log.Timber.d as log @@ -193,7 +192,7 @@ class RealValidationManager( jobScheduler.allPendingJobs .firstOrNull { job -> job.id == site.id.toInt() } - @TestOnly fun setClientTimeoutChanger(changer: ClientTimeoutChanger) { - this.clientTimeoutChanger = changer - } +// @TestOnly fun setClientTimeoutChanger(changer: ClientTimeoutChanger) { +// this.clientTimeoutChanger = changer +// } } diff --git a/notifications/src/main/res/drawable-hdpi-v11/ic_notification.png b/notifications/src/main/res/drawable-hdpi/ic_notification.png similarity index 100% rename from notifications/src/main/res/drawable-hdpi-v11/ic_notification.png rename to notifications/src/main/res/drawable-hdpi/ic_notification.png diff --git a/notifications/src/main/res/drawable-mdpi-v11/ic_notification.png b/notifications/src/main/res/drawable-mdpi/ic_notification.png similarity index 100% rename from notifications/src/main/res/drawable-mdpi-v11/ic_notification.png rename to notifications/src/main/res/drawable-mdpi/ic_notification.png diff --git a/notifications/src/main/res/drawable-xhdpi-v11/ic_notification.png b/notifications/src/main/res/drawable-xhdpi/ic_notification.png similarity index 100% rename from notifications/src/main/res/drawable-xhdpi-v11/ic_notification.png rename to notifications/src/main/res/drawable-xhdpi/ic_notification.png diff --git a/notifications/src/main/res/drawable-xxhdpi-v11/ic_notification.png b/notifications/src/main/res/drawable-xxhdpi/ic_notification.png similarity index 100% rename from notifications/src/main/res/drawable-xxhdpi-v11/ic_notification.png rename to notifications/src/main/res/drawable-xxhdpi/ic_notification.png diff --git a/notifications/src/main/res/drawable-xxxhdpi-v11/ic_notification.png b/notifications/src/main/res/drawable-xxxhdpi/ic_notification.png similarity index 100% rename from notifications/src/main/res/drawable-xxxhdpi-v11/ic_notification.png rename to notifications/src/main/res/drawable-xxxhdpi/ic_notification.png diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt index 9af6367..feeef85 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/ext/ViewExt.kt @@ -34,14 +34,6 @@ fun View.hide() { visibility = GONE } -fun View.enable() { - isEnabled = true -} - -fun View.disable() { - isEnabled = false -} - fun View.showOrHide(show: Boolean) = if (show) show() else hide() fun View.onLayout(cb: () -> Unit) { diff --git a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt index cf7858c..5d32e69 100644 --- a/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt +++ b/viewcomponents/src/main/java/com/afollestad/nocknock/viewcomponents/js/JavaScriptInputLayout.kt @@ -63,8 +63,6 @@ class JavaScriptInputLayout( visibility.toViewVisibility(lifecycleOwner(), this) } - fun clear() = userInput.setText("") - private fun setError(error: String?) { error_text.showOrHide(error != null) error_text.text = error diff --git a/viewcomponents/src/main/res/values/dimens.xml b/viewcomponents/src/main/res/values/dimens.xml index 005a1a9..c8a9342 100644 --- a/viewcomponents/src/main/res/values/dimens.xml +++ b/viewcomponents/src/main/res/values/dimens.xml @@ -14,7 +14,6 @@ 20sp 14sp 14sp - 12sp 12sp 52dp From 44d31dd5c3ed23bdc6a12392692afb03d99c676a Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sun, 6 Jan 2019 21:38:27 -0800 Subject: [PATCH 031/114] Theme tweaks, update notification icon --- app/src/main/res/values/colors.xml | 2 +- .../main/res/drawable-hdpi/ic_notification.png | Bin 998 -> 0 bytes .../main/res/drawable-mdpi/ic_notification.png | Bin 661 -> 0 bytes .../main/res/drawable-xhdpi/ic_notification.png | Bin 1347 -> 0 bytes .../main/res/drawable-xxhdpi/ic_notification.png | Bin 2069 -> 0 bytes .../res/drawable-xxxhdpi/ic_notification.png | Bin 2927 -> 0 bytes .../src/main/res/drawable/ic_notification.xml | 10 ++++++++++ 7 files changed, 11 insertions(+), 1 deletion(-) delete mode 100644 notifications/src/main/res/drawable-hdpi/ic_notification.png delete mode 100644 notifications/src/main/res/drawable-mdpi/ic_notification.png delete mode 100644 notifications/src/main/res/drawable-xhdpi/ic_notification.png delete mode 100644 notifications/src/main/res/drawable-xxhdpi/ic_notification.png delete mode 100644 notifications/src/main/res/drawable-xxxhdpi/ic_notification.png create mode 100644 notifications/src/main/res/drawable/ic_notification.xml diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 778e854..0b6c863 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -5,7 +5,7 @@ #F5F5F5 #212121 - #212121 + #252525 #455A64 #37474F diff --git a/notifications/src/main/res/drawable-hdpi/ic_notification.png b/notifications/src/main/res/drawable-hdpi/ic_notification.png deleted file mode 100644 index 5c51b0b8834098ee99a9e9f24a8d0eb2e73e5f53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 998 zcmeAS@N?(olHy`uVBq!ia0y~yU{C>J4mJh`hKCF@W-u@?ul00s42f_*J3aD6XsXE3 z`qepAD?&Qh7A@K`fvw2lj7e7)Q*}oR+amVPSFWl`HQF5WSzM>^=m_v^YFs3zq{XSl z(YvWLDA3#cRM3Q=jCHc!-+F)B&nrIvr1|&DqVsasw(sA2{oZ_wb1ugv<)oOqI9~fP ztz%rrrp7GJkj}WAS)JiOQ+p%xf${@>4~!Ew*L!#EV(DQK5maZ|+<3b&xFc>$Zkki{cE?zo-M$ohgpoFpJ}>T z!JY7<;k#ra)L-UXYcoZ0+T1bsV*edFsqcs`lhqVft5eU-*D)T*{LWd=P{;U>#gFYA z%em8wzL&;x$HXvy+OWj<6vJEQbDDD-t=Z4*z47*m@ds%Jg zxzK!I@&V7xk9r%VDq=6iAC6N>s!4nJ=SiESRHSUVS#g9ahkYS z)iVu;f67W{4D-Im9yrEWuEOu@&$YvF=ZU)!s_*8VZ!F(*)n4z%E=~Rvt_}ADSE?Rc z(oo&V-Z0ZQ$4g+AfIZVZHZzZ3YhQ_!9?4*M-Ei8v#Bb`!um^RXY3~;=5ei5!T6Y|Y;9%PU&c9;HlH;<|JL4Xna8Kb;~ueXHuZX1H{P(# zW536;&EwbB7bZ%6%xO>l>|Wl|ek)zWIxlbA->EkZmo-dx6HR5^VcqC@b7uUmx2k*Z zuWDmEb@N@?MQ7*S*P(~M6xbH9CIlI??zrl^j_;S;hm|V+RhK*SlY8d-HMI3A9dbCc zt^di?D_4JuC9r;Y#1JvpQI}uTXsg-J6`+WX{IT#Jca);_Ja@ao$Id)AXG<*SGcLN? zDP`Ty(J$=(bDfd*rS{TexeS$CZ*atzKlzf)ANN4}K=YM5$zl6-zrSx>_59}AX4M># z6~`Jj1*@g}j$_)9J70U8m$(9^ZtwWuRA%;JvWkAr+@<0R zI(A4_=*)M!*ZybH4HliLPsH7_U-D=uy<@xf{8kjto2A)}OL%hyOPNFj?@jb&yeGB# zh^t-fr1B5PE{R?cKJb`#(T`WNUi^K(N_)Zd#-F?ld$nHnu~qG5to&QRd$lt?LU`}J zhCf*mq3y@|{XBiYR58z*;Tjurug$QI+h=mg2F4F{4LP!cn;XJEO^xb#IX7dUN^y|( z%aAM09D)ydbWes}_1P<5!5yKN>94J_@(y>v^oCNi|BOKnN+xp+RErrH7#KWV{an^L HB{Ts5u=&4% diff --git a/notifications/src/main/res/drawable-mdpi/ic_notification.png b/notifications/src/main/res/drawable-mdpi/ic_notification.png deleted file mode 100644 index 610685d1bf8870855060bbd7813ff5b838285822..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 661 zcmeAS@N?(olHy`uVBq!ia0y~yV2}V|4mJh`h6m-gKNuL8Vmw_OLp;2J z8b%j8W=QRnk*#~b|N8CU|Ng!I^E9Xayybbz=RfB?7ynF9JxRvUcZ2M4o&)#ZPp;s5 zul6%JaCPWb^K*x`?kK#l^5N~tGUmPoYltJR_OTk}`$UpYY z@!hm}72hFU=f(XhmG!L&yAH3i;w*n;C9|PLZU2Kvn+Z=YNB-GAFEey*&-TIxLaphF z_K)YN*xvLyBNWr0o@VrW@BXXRNA=$HCl|gekiYz)*K?knazy{x!}qp7P|WfE^gL&G z=vMJ_$KM|QyG8E0%FjZ@gHN18*LrW-y=vEO?Lxz<+O?kR9|`a25})*D)&qC_O22mT z1;=f(T>94+I#0^&HYnbkvE$wI!mC0_`F@)cby>bYe5bh4x|Y|vKtgZUtT*>mzOQLr zF!%E-#g9v`rFbpg)~$Wv(SD2Eyv5}PNu24A&A$AsZ)~5uXY-L?{|t9;T(N3fcipbb z-|k+{@z_+l^-n6ttzf_T!7rLs-X<IOVe_H?K{QNn4_kUemUi-TG`i7$_;=V<{GkFx0uCenm@Ueem z|HfLzyp4GqliAzCb5Rf6A4Dgpe&GDT_+i_B?_aA|DrYlxbgXTBdB7w=YlFN=Ig`MF z;|IJCBt3}qynmfBm`g$F&B@>f;|5{IW{K%Heuy_5Z&ypk0p*}+SZ33 zSV|=dnhrBth(+Wd`L|m2r^x@w2L*OOFP9tBk{N_g++>|- z;6CZ(Qh^5J7jqBnJaFuQ{sH9!vXiFqZ?;gXS@Lbs;X^7Lisvn=-)>%;W&ix{4=v&8 zhjUk|{I_#dI<#vY>p3rl{fzuf;oiR%3LMzauaxAUp#MPGbJ<3_&JJDUoj;v^{%~)N zz34gfwrrbPUu$z)WuVKONvfx~Jm>QVhkX6CCR$qX+ZWZ!Bi1Dn&iktEURF+;cI{#` zr-RE6lRUq}=BqY4o-MCumt)PF^rUHhh!>+vi}u;)4YpoeOTRa1Uwb*}o_=s7>w($> zt*KqdKGf`6^7-_aFvbsIYIBWZ_ntqim)33H$h*n@g|~y~6y51htj&W~F;uWwRJMp+ zUg9__@ZO0xdx9?c+pgJWxuM$3&RxA&HgM7wG4G=L7o`sHJSa@~@X5+g-s9Vb?ON*F zeWIRKeg4CG^W;~lSEp;1sRZX(GsMXXK4&mr#=f879osXnqS-gRl#;j~7(M7x;R>I< z-J|G{*3?S^uQ-{*C*Iz%eQFB-S5Fsw)Y8={E&-9yeR-cT(=q^!?#6 z&;6z6nDvM@OiiC!#r$B>1L+5K4-`G;x$sQwD2OWvD*0A=uR?go+N_s%A~{08p8NkX zZn1z=YJ`i$;$3G;E1$5R{ZTsUPn`NC&W4Tx+b5TpksAv&9>GqXtm!uqAD!zR#3R@J)YjoCc zZE&fW<~ybX6DvJmzbMl1o%n=r-P9{Lw{+Y-`|=!P=~E?7-)mprUS?(B-}UV3R=FK9 zle{N|U1DvRyvcE8_6Z)(yqqXcafUf-Y#MH@Y*USAX6KvTe(l1>cUP}5tWi-~cU~p5 z^#9FCbFM^rhco=q{MOm^cIj=8`qx^2TcTKF)fqmC*tC9NpK#ed=grScI-bJIghG2{ zzxkyz2(`HD|MPe;^I2fznM$t2ecuIg9K}zr7WY`rFso|g*gTe~DWM4fzioEY diff --git a/notifications/src/main/res/drawable-xxhdpi/ic_notification.png b/notifications/src/main/res/drawable-xxhdpi/ic_notification.png deleted file mode 100644 index dc4957d3a213327cb2ec68d6d8ac36cb66850dbc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2069 zcmeAS@N?(olHy`uVBq!ia0y~yVDJE84mJh`hS0a0-5D6z?|8a6hE&A8om07DYpCe4 zdjHQhmu$`p^QJVnE?jyu#nDW|S0M70d|-meEXPbw%~ZiD%&Zf8#TsYaY`L&zTHvyq zHUXK7&!%4Px_^9M!S7x7E#Ft4tGoZ2{eIKozmNC5zn5*F{&ws2s%y8@-%M=fNa45Z z7QDfHL5O>%%z{8e<~-gzLOVDMm=8QRdlG*jzR{j(KWiOp4BsD? zA9f#XAGCY^v;4~Uf-fL6R=z^wL&1ZE2b>$KnXkXwA;I`Z??dSWr3X$AR(t-tR@f)& zT*|m&RUV&>ScOc11M`y8H<-m^csHD9sypXh^z=aa^1@5JQ~owCXJTjC{&r!&a>I2D zcC2%FYtm#lxYeHyEtP*@@Ic^!-&`@1rv~=Sc06eyn}*PZn?6vS8JvAUg(`Ez){5Yfj0t^Z71H{X72+mxAu|ugU4Rdgt4los>St zuta!w{d3m;w_k|=;QJ8#;Q0al=p}!|53Km1^IRmQ<7F~}F=3IQYyHTGZo^fBM!SpBctNWruU#0B&q>zyR!0-TbxmR$Q+ybrTEW$R_1TfkN$xI?FNnsH~y)M+L04=x^f94)fni=!xYQgjca$MLUE8dn>g zv6ruye>`1i`?+l%p*uzA^Vuwqym853nP!#Wq~$$~9tAz3V!6hR7rpMW&DnbH+RNUw z(3ukUycLog&QF>XTwYW#srVR!$|rqBKZY_h+uClivRyyVNt{}^s$@snH>*3h&Dr1l zXcL{ixmI@D@paL$s~(G=-T3bl*du%t? z-f=7L_Id1n>-i!@F*}!oTNziaa%WhdQ+-DvfA`V1i(ThVIr1Z0H&SxJvjSE(_8ook zk=cygab{Na;vbHw*QEe6SJv*UZ~%BQ6LmA_|x^7%17>#B*NU!5M@O;+C}Wm8`<>GH8x8)F&% zN?lNo;4m@z$DH7Mn&Vc-ty{Nzqn938ar@BX)?=klI#i507N>|d$XzYkVEEoEf7bTg zl%L}28?&rDR-FnCiaNaKRM6!5wa55G7uRi{aq+u`HV(wG9>9pE>K@aH-evO>@uQ-7OxqD!Dbh>hOts zH6Ps9Cj7Xj60}?Ux)xdngnAaA5R)i*)v(kig(Fqr?5)x#_H6s+ zxV`{mWpi;T^4 zXFLgIo+thFgb0HqM_p0E=Vp=i+U9vKZl|U1%DUbB7A)<*YlcIh+ELVS-+Hn=jjoL=J8&)!GI+EQ` z5u&`i?7_9ZdVh=AtY?0)d%nJAzRhY`X;IFLT=~nMM(my}`*!;S4$X5|66TOJdn%2V%3{BoBp2Vh-qKrdg5u! zq$lrhH=O+Mvon`rYs$4_CCTE|{N}GW6@GVe|94Jh+y0#HGkgJ|k^Ak1DqOSA#cV4$ zSXs=x>UZwE)XC?$0z!ATuJOIO+&IjRWsgRu>Gzu{c@2H+eX+@<>MDl&X8EQuuUNI_ z>Fr(H&uwLs{o&|&ZZ`MANQSJpyM&^OF1_x0AY-9+AtwFMPKHen9S`kwZ{M@>Xq~4H zo1b1W;}@v|f7VRjV|Ma&74No;IXf9%`7ZK3^f!m~N({rzCAneuyw~*J{BN`K4C{r+ zx1aLYv%dZG%3(dH*|C}23(B{=*g5^581G(A%bjOfCrrJ1@vJv@Sbd7n>%7UQV;JrV z{)lSVGi3b9yCGai|EaIuW`-wPt4?(rx|c^xtUYggOmfMoISe-+B^5mHJs9fxuWEkj zui9gNHqs7fyZ*%X^P6#%ty%X^?6{)mo4DD&X{;+6pY$)dG1YL{#)F$KBzpdNI4Lr< ztU=17Df!pKt0!H>6V^=5EIh9I@z|F)n{*j+*KAs~XQ$57SFN^=o9&~n1$1w`e{ss9 xYQqAaQ@6P;NVsl)ebbgf*RhV@!JFZienzfM`g+4~TLuOO22WQ%mvv4FO#q-{;*kIV diff --git a/notifications/src/main/res/drawable-xxxhdpi/ic_notification.png b/notifications/src/main/res/drawable-xxxhdpi/ic_notification.png deleted file mode 100644 index af4779b62c4cdf2cf60767ce3cbc3469627d9878..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2927 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 K=d#Wzp$Pyj&2%&X diff --git a/notifications/src/main/res/drawable/ic_notification.xml b/notifications/src/main/res/drawable/ic_notification.xml new file mode 100644 index 0000000..df55b3c --- /dev/null +++ b/notifications/src/main/res/drawable/ic_notification.xml @@ -0,0 +1,10 @@ + + + From 1d2b79d5a3541a4cf99d42e406360fd45277db5a Mon Sep 17 00:00:00 2001 From: Aidan Follestad Date: Sun, 6 Jan 2019 22:40:27 -0800 Subject: [PATCH 032/114] 0.8.1 --- app/release/NockNock.apk | Bin 3590460 -> 0 bytes app/src/main/AndroidManifest.xml | 2 - .../java/com/afollestad/nocknock/AppExt.kt | 17 ----- .../nocknock/ui/DarkModeSwitchActivity.kt | 10 ++- .../nocknock/ui/addsite/AddSiteActivity.kt | 42 +------------ .../nocknock/ui/addsite/AddSiteActivityExt.kt | 58 ------------------ .../nocknock/ui/main/MainActivity.kt | 7 +-- .../nocknock/ui/main/MainActivityExt.kt | 17 +---- .../nocknock/ui/viewsite/ViewSiteActivity.kt | 8 +-- app/src/main/res/drawable/ic_action_close.xml | 2 +- .../main/res/drawable/ic_action_delete.xml | 2 +- .../main/res/drawable/ic_action_refresh.xml | 2 +- app/src/main/res/layout/activity_addsite.xml | 10 +-- app/src/main/res/layout/activity_viewsite.xml | 16 ++--- .../src/main/res/layout/include_divider.xml | 2 +- app/src/main/res/values/colors.xml | 3 +- app/src/main/res/values/styles.xml | 22 +------ app/src/main/res/values/styles_parents.xml | 16 ++--- dependencies.gradle | 4 +- .../src/main/res/layout/list_item_spinner.xml | 1 - .../res/layout/list_item_spinner_dropdown.xml | 1 - .../res/layout/validation_interval_layout.xml | 3 +- viewcomponents/src/main/res/values/colors.xml | 2 - viewcomponents/src/main/res/values/dimens.xml | 1 + viewcomponents/src/main/res/values/styles.xml | 3 +- 25 files changed, 47 insertions(+), 204 deletions(-) delete mode 100644 app/release/NockNock.apk delete mode 100644 app/src/main/java/com/afollestad/nocknock/ui/addsite/AddSiteActivityExt.kt rename {viewcomponents => app}/src/main/res/layout/include_divider.xml (82%) diff --git a/app/release/NockNock.apk b/app/release/NockNock.apk deleted file mode 100644 index 21235a5caffffe6e1ff3264b81ff3dec15923d5f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3590460 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ͥ`}QZk*;5v5 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�&40UkPc!xRAC_pU;Cht#A@0eS!`+WQNHgl`zcS;JZ}*?}P@=Qcn)~%f zo!j%(=C)?vJ#n((dR@o+rSn=JhgKYn+*T`Ux!>;1<8zzJ^z2XHV~_6rc};o$#h?C% zwgx}9=ea%Qv+lyPbI;egpZqy_;o5-thDX#l=xp3vxUOW|-*?Inb8O1X&8~6(@=<$K zyLd-`rP;m9MP~C3+u#0nU3Esj<*AtmcZ7G&k(v_OZnPcL1}ZXJ$2q6>qs+a-Pn-CY z;tqF|Kd4+Nma}~EiI=~`-|bhh11*R#yS3+$dD5Bt9nTM#C)IBktQDHadfvH?@lkI1 zgMT`YR6iJ1u%24!w1+K@{eIIg^F{x3rPu0jRo*ZC^n2cx+=8U)-?hQ^x6(N-`{nn4 zG>|(!?S!OTyl&t2#|I40lna&4bDR74RN-Asx$E@;{#wV4%@*%4>;APw!JhZ0Z_4lXyV#VIQ-%(L&QC9kU{prJ%ueon- z)IRic)9ITs=cdoS-jdAl!=mQYb<-pYKgJhz_f`j-cq=hpKbk2<$s{M^wAliMp8 zA07P=RI&4Ow)1c0xaOi)0{IQ*2Y>&YF1wmH_w}ReEpNFkV>LFjgV#cd&%0if`}^+) zoypzt;@{jW)>&U(ds)8q<0@n8Z;uOfu4n!}5;MIxUgEyl(<5>m*XNi=&i60<$={y4 z@N!-7wAVI!)@x=8*SSCYmHvY-;g(wUKb6Zry%TreXelIbJ@a@0QKTdZkZW-k0+)virE!Z2b}S z54UfquhCy>o4DWq%#j**vzwnk2+w%WWAiTN%To0>mGdU4e~{L=vRTIR^SPtO)z2Tz zdcL#b8ROUWuQ&ZlpOgJp<@(Ryhchlu{Xg4)&$?cHjq>yNZDnqEg95gz#pLUkq_&lY z_xzf&@SJGJ^GD@wS39oH>%PBA;a-8>yn_xi*PeLUaQ-*P^Qw%`a!IH=ez(?}J!{q+TIU-Y5^;a^x&wBy^Zs+& z-0uJ5_Po9IFZUza75GKk;oSQVc3!ZvNp71XIK}>0RbAWtH5+|wnyp%Y z@SN(j=089Cpz!(4kIy{${HF4U$&-}1?dc&G>OY;^{4e;$pPL11p57|fusF5y;4bao zM%H06>wI_qnfmb775yAZ=?!sJ_36L&ae*?mbkewChugV>0HepY4wI`*7}lludD*-jm?6g^{YhC8mp}d@P-s@-48u^ZUk`%1BDP4JME#_ZoXk9jG zkL*v|6ECgqzq-&or|!pt%{Mp4J$)4^@JR3ZlM8&-k#!eao_^m^u_Ai5boaE@uahPi zN1x+(cJ<9Eds7|mXQuCpx}J2d%bz3mtL?O9tliV1a~!qjD?66|yI17)XPf-5d#uwY zzu04OFbh<~hkUaDB%I5oIqPSOW-~F$94N6^ShdWxW`57rd?0I#d)32yfwAtxU@az?T*u#JhePORrw=8 z<27$>d~UzCIaAJ1db+ff`?Ot8=J5#mC*roLr{f+jTg&tM`csqEjax1~n;MXL`Iv3S z+Sia%b+w$+u^FQx4?3;66{+Rz3|G4#QyE%_6fAFvR%R-<3 zw!hxDZ}U3Yc~|^Zr{T5wV7ndv<7z%gPKoTOxZ`@F{rCIj_7ca+#OpQQaL?J^URpSD z?eQh;Yxrcp->Uk4UweM+d;Xcf-%n~UeZJpY?w7yZtALJA-E-Ujg}wT7>jJ<2rj2*& zPyap^&|bUN|Js5%I#&`uxP4BnxSYOC=j#f8=2IWs&;)Iq$r|-ia=Rr?S4=qicRRPU{I~mhd-Sf{e0sh8U-8DZ>rI~PE}Yl#`@J;V z_xt8K9JR-u{xQjUEPngji~X?`?k~2#43q!=_E5llqbm!AKCjw)W7*xNiqA*4^=?;O zF8nd>3IBoii+2B{n>PPt|GV(^&$o&HyKDZh-G0GbP4N4D{n>BNN9;E~(YgANSzPOn z{M>#2eg|y+%WHY^+~FNoC+lW+e#<%E_t)Uc@u%&%ii^2^FZR*CT<@J)#^ZAL&-ReC z*Tw5|#sB@*d^qD^z46mK26BsP{?DDVLGJJNKqqOj#ea-+rvEqd(zstQt*W#5zuBob zH>#(6J76ruN@w{`R3BE|dr=iBe7k1sFypZE6WN14L^=Ux@qm~|EX`Mo0jIQx;m zzb82VQ+f1n@4|?d_+=-LfzQ6aK zyY_RTg_?_{fPCIT(+|WB%bdv+WtiAPwy*u7i-q~-h_vLV(_geX~_^iJh9tFN`zuJFm&#%C93VS3i z4{M~0SpM6azL59t?$d`XZvNFc=ls8|SbInP`)h9s^>39iT=r9ZcYm?z?dSH6`->j? zSR8-Sp5KK>{{EhO$m*=iOv(D~zn&|;yT9M0+V7yz^yIxIH@-#mWd5yg zN&9X2DyB{5zu&@}KQ>gdK6`rqr}1t7f0=QuMav4$#Whz*PCLCnJ*{jnfAaj+KNqbh z*3UkBdcVA~%=RDOlh4F$ezYke>OWum&En`MSMIc?I@-MZ_U6W`4Qpf5k~4RIHb^Ur zOZ(lI_dM~=i_~b#eD2%gj}Ctb{9#ce^!4NW6pp_~_D@dSwsu*rB=-fof3+N&PnY&T z^@&e=E4KRB&Xe`J>2i<$ZU4FXxwyTte~G0%-($s3mmmK7{&n;9+`R2|vm<*yXFU0R z|5p31pZBkv|Modcdi&q^kJ8smhDG=Nzgwko{D0oxYX4x{UB#jBXSxx`%&y%0uUGx8Lg?+w`e@tgoQBGu z_k+*(^`2ONXwR;|y8NwQ+5byFy!qJn3D2SShyTo1Z9X0qYqoyh{@Z)n_HC+AJ+@cz z$&dRX=e}*!d;NUzjO#2lT&JVEGShEN-_ZYI|8MT!D|ejMO_!@-%6(dYTXfs&9rM$V zuX38d|IWF`L56Gpzx6-yegEH?vh5G2X2}1a-8bQWWA5eua*5m4%5AUBW_$K@ek1?o zu>Jjy=Lg1IZ~guJSo8MYr2D(p9^D=Dr>h{QrSfO`66ZY(h5u#VzxgS+hsE;g^xJit zFI8ITt=fBMU86}%-tGL&pR=88=iZn3Wp?U~`|K}D_u8L+I^T3ouKt*TT}<9}v9>w! zqJ7Q*ef8_~chs-T|MpAh+G&etPv_5_{dTg3y8P3S!@DQgKmH`om%Pk6tWxF6cI~31 z{m8pTsXJLGM1MFR-1;|a&E;QZ zuS6~GwfXxb%y0TE^8e4JH~VfM^>*@GF3bNreRA6O>=|VlLdP@L{co?$7XS3u*lF`` z$9MbRZ7iN= zZXMx^&xLAi7Q4*1c;3IAO$9c=jYY2l_tj5J__piC`!{tlwx`w{-t%WO%jV;0Co=aP zI`&rWO!kGR`M31Ntb@*r@|^rz``Pp75B8fIe|9T<|L*gB((l(o2mhM;8a@3tTkZHM z?)c4f_R!4u^{N(Mq z^ApQ0=dbO*{oY3Jeep->r_Lun-u`{BX#d{!%Ae_K;_ay~xBUF|*0$pDlAZVOnV&iy z^YiH^%`@6-O{4VP6Zgt2{raf5FGxCX%JKZZQy=GTu}n8p-*P@sDmv(i>#F~ORcu8Y z_r!g@Z?)e4EW6s-zcYlN&F=g8ENP$Xx!S+t?axEST;*PEj(B|a-@(xNM?tFZ*fZ~p zo44*)h5wI3cltA>pQ^6v|IT&wcy-$?WACp&=iaej|A~EPecqAh`CrpFrQ80@`yB9J zr*}U4>AycJckH=#);###{G~BE`PVm9=wI2C^Hu-MUy0p;`&>^y+FQB#s;>9xB9mXo zF20g}fAa5V-N{A!|NhF{`+R@GyZ1ZSOfTQ@sb2N_^$KUd8-D%Q%A_7Glc;g-W+dEy}&3~>l;rDY(?1)4M{5!tlU!Be;yUmub?2rE{t1vrt^6q8{dHLz zAD`BE>W=rjPKYk1rv=6=f>&MF#&m|+` zk7`~1omIhE!&{^KDxj;f(m!POn&W%SPW)H!zh;zo;M+dO^E-b1F`im~chQNRhvJEG(-UraKb(GW^~3N3=7+Nl?rR&a zU;QBbaQ4IN2llt`itYaN`oZ;s^$hFV{|o$6{?Y&N`r>o;j2z7gwYA1ZF^R+102G+#Jp_SXMjFW+mjy0hs0*2?@#pU>aR zzxwau@7!D0e`Mw#-?BZs=j**S8&5yK)41#I!dpPk4MkQ0CFUIkrds?kp>)?~7E{FL|nS!@j6KZrk=d^NZiA z={w4Hnb_T5`1sq=qW?ZWHZH6&=hL4&eP?EK_@Z;d{t>o+i|-z^w%fX+ew}qio3)=D zM{1bM@yXHCxl@0AZtDH?YgR_i_j^lz-Cy~cX@B3lLsfgcuYaiB!}@w1>+$M)>~S5h z9`D_&W_2v%;@)i&guh+ay%m4`#NV$UCKz8#{3&T~{{6X8;w{~*$zrzJa(CuG{!w*r zan-NV^8Rac`?qVoyPmxI+T#BE-B0(1e}CNeWUkcw_s-}3{z_~AZuUn1)<#`>o_dzc zWh-jr>t!tGeo%j~zu~{o(?4FfcYlvhj;;>6J?nekn#;=r&RzbH{=oJ_`or@F=eK`9 z6z_01?uuc5|98db+doWyxc)$V>wdO+*{A={$+xf0=l_-K_4B>jEmD(63X7p)`sI#Z8#g&mi9oRmA;_IFvtrwP{mJ#THE zua32uuCpg=>+|CqKb6ia+*rJ==;EF8+dj!#*OWVdDgPaL@xOfdyP2}P3$*w5{oSq9 z6<=I8W&81GFW#Gd6fFF@RnYs0X|$!N^@6jT^V?&$UDK|9cw+Iq+sFLg6&!Ea=$*VZ z+xBtNf344FVty>=I=?=-(Ej6}<9zOaO&-OXyVnHo`7Ks{=f#gh$2$J~*DrmlQ)%$1 ztNpH>LfM}~+kV?VPRif;Gq3E=l9O-SW9pt-ozJM7#~v?uwAM0wm*t;|tya=F`|*+0rZ z%71saIePWC*!TDB$9LO3{C9WzX6toDUvFzo5sFP3eLCGOzQu!=JDiJ+n?XcR@U3Ayl8#>cJ2HB_b>ln z@Bjb*ynp}a7yXyJefKT<-TmBUofdmklBPwUdwzHSp1aC*n^hjMdMn#K|1tlD^XGeZ zH+vVZi@);zk)(Kb*~j%;ZQmKF>s{M@?ek&TOL;y2;+}15o?@w4e6Hy9?)P(QpV#bA zdbH!QVDYy3mw!5M&!7LfU-nkn_nz*rI{iP^{Fw7N>1nE_{^_Ih%RkPsJbtF~VlMyA zckdU7y->1_xV?+HBsq1m8pXCVe-gW2mi`M=3o}BA{zGhx=M$wU@-b(+1 zYOb%{FBCrCbe-MvGdC@kpUM>%&-~T>%;om<=jG<^F>i0JJvKFZu6SYi_4VsYKK{M# z8naC?>HM*d{W;&>+)iB2zG%Pr?zeBAS-R`qIo50Zws_sV$**30eQi1YoMrj*j@i@Q z)(GB@k^9L1Xu@OTb#wNbyX%yFeOY)$tM|p@d8yakY<~82h;McO@^f!-)$=X8-oEU$ zy!hjlA+Grs)sQ34Rw4 z?{x2Q?{e?#KB{9FZQ~a6$ii}YYU1a}c^CgBUfTNFEBt(A@#7@P^y<1D&fBH)g`c^- zefV$uv-{~ghvu||D zUc6uTYiZx)-R?5>c8?CPtDkH7y{9!k?{($1JLTW|ejNX+v`;rKLg1t6cG>ywm#se0 zU2*KAV7=nLmlX^DSEn9{@6zx1FSh)s>uRNU`pY`mJJ`EaA4whWmiZj!ZsTX;ct(7B zmwK0aC+j1lk12&aBQ(|t_zU}spBLypI`xrO;noPHb%NKsULOf6+`GfkCRj)KywG{E z(?@+Di5V999%+4~_h?UFb=C{HA6b7i|A=L( z;PbBA9fgm!Jt|Au^Fz0g{iDstU7MB6y39MxySI1vK3e-|^`qsFoTZiJ!sH6K7b~fC zS9kswc%IueL*bo{p1|%S%a5iXoqpu}QO}Rwh3&=4_ktI`efX#2e8>6j{etl#zmH5m za=%NzdwtjXPUfVWtb*dPf*1Rz&+|UQeYE?C*~jUR)*s3Hn4gr^`$|`DuhpZwTch4( zEBV#?zpY#Q>4@;r$www1b^0js@&A#uk9;5XKGuOoVm=Cf4BY5kId zR^F%l?n`j5ebUMuaWN%}xBZ?S%KuUEqu@uwkC`7OH@g3MG_51}k^RwL->ChMvXlO< z6|C2>Q`@J;*Rj4kv)t9j!6raQ#JnTDOZ5Bd`i|%$^4`l-N_6+!cv%CxNk@M3>~q~<(snn^7>fwk?CV&si3@wywL5V zr@fWq6!XNgk7yrVePsI)`>yu+!XG&dgKdKDELVE8?@|5v{vY;*N1t^p@A@4lZy0*V zKSl+XrrA4RK05eF@sWRCM@4(Y%#AZ+eFwzoe?WO67x}_u(M*#40SnmIsJJG&$_*jf>IY#;mnFnKPGSL z;C|@+VyN`7necuSk3t!LNeM@1U=CscA&h&2SqeaKP|Nhux^eF11*GH|7SsTOt%!^R3 zi{Il1isOItEB5{n-srf;cTe~mc>ehNNc++1N7;`We(d^T{gJmY;LqM4%YLvIdenIT zS!|)RPx+r`O}LEUec}IFeVz5f|MluL`nu&i<+~?8+JD4ywbD7!?ShYw=6Bu~D;Id) zS>09Lsrkq;X;(!@#flk_{>vUC*Uu7z3cjYfsKKCJoiNIam^9R z7oB|+6sCb2{dKOEZMgT*s9t89RZ?rkyo!AljS-r08gVLdI$@pDJEnJDef0E^=%X}{ z4>vmgnYrWktd8UBx@Uw)edH)~sHt~8!kWJ7U%Km_=so$#N6J20KNaj3{J&B2(W_!* zy9mLJ{&OttlMaezO+PDm`-u8c!;g=obmMbf>gV479JSG}Cg6?G^7Z{Ye*15=%M1A3 zZQiB(==_n1v#-ke3dW0D=k>mLuU`T3!vCW5Bf0OoB-Hgp_=PSXZ9eLJ#Q7-CM*~o5 zj?r1i{q&Cf$0OT1ULW;+v@@x-V(yMdjU7iH?LQhTAM#(IT-dyG>Lb}lbCW(f3r_E- ze6;eBkE8f6jA+{;R*+p#`oRCheHLWA_ZLck1he z`1gB%E&iLgIluj0SNP)t2J9>ZQB^?p`c>YoKqu-C>kMJMa-4hlOO#*BKcAKWA;aB!?LbphM>TgP|wrOQ_s^s z)_q@SzwSGQbHe+T-)X#4QR}eo{(O`*Y0-{=JFa&^eT2$|%f-J7Og?IRbnlV9M@2sF zeq{G(U(%`_^LKdMiT4ra7vP5`^reqFA9*It{?YJb!H)?y^z3x(lrWP^6R39B=wIXc zXYG$oH}v-@?b8C)dG7P%K57(hoS`bGo7Qcaw63COhl@?v8R356esO<+&qpCssESeI)p((nk|SxgFlE`bes9?G8U3(d*sPM~sgeebo7wQ@A)nZ=Q0V(0Nhq zBcG3aKFWQ>>!Z_0rH@G)z4o~53EAVbMoeFPy?}YQ>7%KSLLXgCT3gZk!}g=$@mV|F z_0Pg-usCAQT`F}qjn!vKW=|?I%)rpt{A|=lkx(hyrDc?fKiPzp9VNF4{le zGswF8eAjtZ*Z=<){`(j4$7Rli|K@MRKDOQ665G-H$oJ9NN4iOqD^^#`uGoF*_hGp# z`;WRG`ybtYwBbkJ5A~0CZ5I{s-LrnQu-g42s7NmW73wxYHeNA0X`Sv!={DH*QLs{- zwQARUocZcf&E)=$9oGc|Yw`_U|E$~5zhgb9sMHhsE`Iq4^AYBw%_jSq{_c&@3Hfs{ z*;KCcEx3$coOFES#S;7L_x-!>J_>$x`H?ZGTlr(ok3BcE_bL2ys|kD~94}O_y-(*` z_xcWS6Zg^URsV1Q`Yrp>|IzM89Y4}P+J3Ap4EfW2YWJ6xj_Gq3{9Olbv4_O@@4Mw( zqi5f>KW4$N?)9C_k6u4|f5iNVE+qv4#TFrMjgEr9dSCp6 zswN952~B8V3S#ndIMAfT!XoJGqQoWU^`LfMW!?JvT6<$_YwPH|c{@+uV|nNPkMW13 z4F~_h!yhOt!Z!d>B9f-y5IiYAp5PY zHX;57|F?GL2gV;FEd=b?=f7|Nm{Y%n|67A?qW%r(Z;iEy_BZ7D8qOa`f9UW-rbdph zN&kTOL+=8E8p(Z3?FYgi23YX$wXZ)Y`1fgzxs7&St=M0#J8Z=p_p-c{{$O4qe6RKU zgW4Yq(4(w#Rq zY_0dW+;okpx@o%Z6)VmD*Y1aAiEa9|M))eLr*c-br!H_djiHy=69k z%6;*K^U=@SZ^WFwxM51Qsq^JS*Eo*f3Vmdi%KLh!?yPBvdvp1}q}{eSKf!qI%vF0g z|0~}9^h8);R^PI-ZvS$goOk;t^W?lEh;aQE^W?niKbzM{Q|-_1I`d0p>GR?{pStrk zQh(Rn`hR`xnkmr@e^^h%cYHbY|58xiM$==zrp+$3Y_E*?^>5)8x1Cd+w@RPlS=%=K zZtlvrQ$Oj}<}56`q5fO8b-wmy9rG#M-+uiQv`_TSf|v&~kEXwUd5WoeZ^ISyh@Z2* z6*+v0cl`JIgnaKG!&48VwiQj;CUZMn(>)`53cv2`Dau>do^rh=yJEd>z^U!LUbSzV zF75MK65jr_W_HSn%B}6OiRL$KoxicZd(=M@=hsSJd;CvOy>02fkJpYfZ`!-t z=zNXRkzI4%x2xETO!`!Fcjq7X#7y@1|2{Do=(Xo*38U_Lzkkh*w6b5NKYM@tHSy~j z#%t?#{X4yO^%~o~IS#*#PF(t)r?tOp|MF`>+YiP>%+mSCmw(Xy!F;cm<`#d8r!8B% z?O*bKxB2@`ug!h+d574#=GPC|Ub|&8?i75<|3GbrWZuTS(5Ks?>bERQ-!N%D^Y+N% ztKVW?7vEAfpS|kuiV{oVKW_wI&o$6~YTqIs`LukQ{Kw)cr*_See7})@tF*CcE_+@4 z*5-Hqr#!wj95wX%wDS+2)^%;)H*?i~%IKE`*oH6fijkkaTxWCMjDvhvw`uGC(l<{1 z&F+0<($Yu0ON;L8e64ynarPB^p;h-aqd!`w&N=U=bzP%vZ?1pu)RMhblk$#c7f0A$ z`NP`t@IgBYbI@TX0MU$3%>MSVgHiV+W9x;dYCu)|6F?Kx<`DN-u4h~kKcW)D*v;8 z^ctOyS|jsBC-B_{J|3^XFBQwSKkfR|@O1u!H{aJA#Y@YH#Rs2yUaD@l-umOt$DbZ2 zZq3=&TP(D*`FLU2hu0O<9o^5oy-mhmL)`Mb_HB##%O1bk>bJel?`vJt`TOc&?TbyiOD*fqPb#^d z<5?aox0&Dl*Vdeyc1$lPK3RUPdDY$D59;pR|LY;&F#lllwe4S~#a(+k=cTwZ^Bcpx zt0ui$Tr_8~pTjosmYYteBX;Grui0g07_>%E^;*kCuU~R9$}gW5921^2|5D(k$<`Z} ziJ3OormUT(dwc&ag`W?5lh`U}^x6Nky>{i+Inl}H-LeVxKbUIQ^?mrUc=?ZILF+yX z+PrsPbA9XkKW`FW$0vU4u&QhPx?`7}`$NMYmT$jz&Hj7w*8RiN%CCIfB(^uGVQNu) z#NDjl;$QB>2E5x=uv1@P`o0Gh;wjy4dk+Wc`D*@_U;g>e?G)eKD&4}ipko`47s?%9 zJAd{0|Ajs7{n4*qrQ2@$Z}~LOyEEwAcZ;w5=C(ooS5N=TD%E;wY2o+RGyG})wY*bp zw*uB*`7Ty-TRrXYQ?Knixn5qKFn{^uiad+Afo7NX^Pc#)Rp58))?ANm`-LY}EmN>{ z-WilHFs*7H*Xhb1Q{ygAT6imerN*);D*H1oy<{S_ge zk2@HuPyO=k_-6~fN9$Yf*F@I@E`4fa`PXg^pX~+i zT8;faJ7aFQmMGdV`fGjOs=x8R=9Bqt`W346T}6{pCvKW;d|Ugr{z3b|cf9i@S`_E! z#J`?y63^~e{c!oI_iLX|Wy~%0I29XGwdHAI+45~hIzMan?{mMC8Xt7(`RnR==B1m> z-|RfK`PwVFllsA8S-YnHJ-5ptGfVuTeB8?XJ^g2|fBU)QkI4Qv@4ucd%lmJ6YQFQ+ z^Pg*?m&{<^elTX~x>}b0okyK2*#AA9_G$5+N&k+Yf0nVIh}Umu*yX<1y? zpu6q-vTq`ve`_p0QuU#5>FJ*=Yx@7NZBYCqtvJ^v@{K{{Cu_yKl4Y)S{HglIzf8Vu zt7R+kpIkIAGw59R7XQqPe>~a~B%T^gVf}W~{W@WZd%Mcqt}izxY-v8e|BX~d&z{V`v9a^-SJvsx zoO=H4`z!N)=6zf@eeOc_UlEe~|Kyo|WvmOk9RK0;zwZgB8KSdt#io35UMll{nyJ(C z^KW%y`lBu8NB_7}{L9r|dw#f|yY}jrTbVY+=R};kuJqr*w*JD8U1<(Fi$DLJJdgd~ zpL^Txg+4E5|CjnVy7v5^)4NW6a^cIqI9v1o#%+rK-FDW0*!xaC@4r&nJiDHK+wVTD zyuK^R{>F-V77NvP-`;fVY~JQMVP3y0ey8cbF532K<8htl+DY?R(|<3y6Ju}fzFu%b zNzbNrrM?cQYFB=-T*a1Jt^Fd%?ZtUzSq`tC9~D3To$%&4pQp90*X2(Rm3KZxM|_(- zM{%F`y~Q6-O})2fVeON&r~B?4FD{xtuU*JIJL3N54HvJypHejM`&!dAhifOz>-wU( z^v?U=6@BlD>!l_X>9gHDzE&=EkEyQ8@txw6{=RQt@<%$cY{j>T1wB9hPu==jPxqW&^L@=$rb+LYKDJ%*=VV@3 z-*18Ee+9nU9QnszcwgsNZuNGL!m2ep7H&TAcFT*$GWxr2x@+x=EXkbj`aM!<&zgm* zn!bM!8{2V!Pq5oW-wu=uv;+D*jem>pg-nLgav*w*!b^7a;SE<*YH?6VR&Nf&4 zzIpKUy6Lh^JMX8eJHIQxd810{`~I9v^RRWxSAI8Y-+A-yG{L-^=l*V9>HR`i-^M%juQBIhTGpy-e?~(ewJHQ|e}Z?+&}S;d|(*pR-EjSF@-5Emy#4)~~j{whi60gzSeSa*O&7be>s2M+3#k(sPyIh%HQkd!fuK7mbt#ZWbc0YV|yqdlG^9t9e zZPgLZt6wIo?l)U{fBn&ISK^Dje=TY+wY2}(HD60O^v@dK=QnLmT)Q;?WJ3B3=95-c zv468~t=HT7KGIzKuhsJWRW;7hkCJ20_0??@e)DSjC;8SRv5Gg>%gv3S6X(Cx*l&MM z?W{-Hwl#XM7w-MK;*J}Cc1H9A*ZwD;E%wRXisgU1&i(v$Q=O+Jse888M0^U@Uc5GY zs@`+8DW@GR`}q4`_l8u@YxtVz9DA)kx$>{YwCnxJm9jhBQl5Hj>-{_>=v?z>_8m8O z{W3nq_RHZZ@9*7S(~DOd#s3z+7rbv_@th}LLZ1qDpFMrb#z%SYwyhKWztzjH`*!l< zHHE*;{@?zy`+e%3yzspKQ}N$R|J-D-zO_eo!ne0vo2G8jKa{g@+BC(d>J$7g{eAfQ zlSs}Q^WgK9$xCLx@cqh^>Rl^z_xiG`Ma3C2roKI!P<+E_dgU*%kpJ=ACTmsK#e3Io zdTMF@d&$2&moCHwoO-@db?fi=^-u19_x{xwWY@1-Dk=Wyn_I#DO)KkyZu;0S)w!~Y zJ+*%MC(XSxH|@OVbTi_8$6MA9D~h%+jqgJ2C53`8H3D>yGbN+`2pQR-}aHyq0*a)VKx8vfI0ZuDcyS@y+mrzw55> zSkL&b$tK5@%gXW#`z}3~c%3%+E9a@QU($J&=e*^@=E>`Azp4H+x@Ob=u=!W!FV@-i zx-RUI+4R|>BHJ~c`?@28)&*}{R(h#=<>xm%yAQ0}ApOSgt9__{4$tfZ>64E(p6aWr z)qh=-_rdd@?EWS9xjH9L4a(=g5j?%HQa@&X+?P3h#hY7iRiu{x)lKF9E6ML&c=EJc zRO~6KYZXiWJN?REKV|pJ^Zcb9Yv#7!UAZ-U*Bs%RM=ln|N2YBr`m2BGANQgotpyW5RoVt?o`2gN zazEs0_pj-NZ*q5U-yE@Z_lf!b_x`I_i2hr%Mf&gFH(bYS)?b)QN!FPe$id-O*^v8UiU*|WL%+sCfyO#M-&OWmqpT(~aANRd{+WOwIZ@r7FDs0osa?C$ATzYEr zGEM!3_!RapJL3u!V|b0%56w-0Q@Z z_20UrYu6n9*b;wIR&(UIN);XeZZZu;)weScto!p`&~pS-4T zKBN1x{lcR}?yW21JomFNKluHjfc))aKc~n4xvu}So$1kS#g8EoeaYt&N^@CWKHqWd z{nvvEJO>TVG#EeBv5+oIGQ0Y|Q`Ej+cz?t3#O*1Ce(8nlg68@AU6(!Kwckv7zWTcQ z#nbQR-h48(X!b*~9iczh&0DQ=#m?nl+4?vC1ut1A%nRDL{_{66yRdunXRU4jQfhay z{>=Glk-s$Mqu73@{%5YcIZq}bJzJ8|bADsI=HoSY@{4|QI%fWNd8+f5JGCuN`^dcw z{#>5bJLKoCJ%43?kekK6vqHT&8~H7#zxurMrsc0X`Q4{J&Gi4IAF%gxf$j6e-!@y4 z<=+11d21gZzv$gvxCz< ze*E1XU*&pMJ!*1KhY?fuKEHh;3M z+^P3@)#hSu4k)GJzd~!SI?immT_aO$DOrj zu01}q#=kzM^6~uP-e<4tZdFuYCZ`*8Huo3y>TvD5Y) zKhkNFcYmS%6}!^Y|FUgzcwe&@?4C4_Keci1-syL9e;&|&`o41Mozr%n^V`yEHq95D z@YiVS&S{~ibbnoqn3*n|y6~FF%V($F{<`ed^?bw9O^cs7S@K@LEHv%&3I=U0{u$pk#9ZIE zVSiEk)7Ym8r+=U7|6-h&IenVq+qG+C7Vn*+_*Q0);_*t!pX)zVC;U48>gNqs`)7sG zJk_`DyfyzaJ=``*yoA`HImC9a!&9|qoKef#`m;XR`f5Y*qMe;lUELrem|N1uz zOu09HsyuPL_Tk&dhab7jSobAE^u?~XOTYaSJh-iJpVZM)JIeKs?X5O^mwNtt+Wjpt zFLYl{tvwQ2u=Uc@FTY&mc@Fc;pHi)L;M=w{ZI-99qFyhUGFwcjyk$wv)(sJ|R*52O z7_$#$JPq*Xxzw+zYWH^O=ep>~g!xR%wceD3{? z_mlR&fAD?9dzo+c{eSf}>^EFl^!h(%?DuyQmE!Ba1@xTwdr|#G`wdOmqrP*GuDyF? z@t=PS_1=5dc0GR)YMl;zP(uDzTD9t)85Wy-0ULvT<++PZ`?bu^Smz7tM$L!r|c(p z+~!VU9pBGdtGk(Zm+5SHu9f*`>5}K?m7lIVFn`MFFRO2y`~2m&p@03HU;FE)uvX0s zKlORXH;dT&Q%^}<>#jTbKU(v1&2dBjx|sa6*ZDlEe`)ovtb4iRUeNy-&HM5F$^YJ4 zeC-c*zLck|^HXh$=Hs#+3V^T z{+qqEzQK0oyXTxe!G3?Hn{8p}t@oRx@49K3nNHi(-vvVT?iQVe0@Jfs>s+~|XdCJI z{iyoS_QZ+vmwwE3xb&APsIFmC=hwp%-W;#bfADKQk9SpR#JAh4rriH|;oqy;8^OOM zufDtdfoJRYsk>FM9|;~#$hHnr~7rlaRiy_eay==Usfv2v}?Tl-J0e_3HX zDe~u@I^VZH=e_zL_TNqa+eVT0DNkkhYb~vR@Mmqv|45ntI=zR_U95ZlwY!Ra{f*$A zCk1Doop*h8y7w-<%EoWM*O~9WF37Xl^_7*_%h|G-aocYE+dJP>_xcZ8quN=?e6ruU zp7wv-9RB4addzv_neu9vCnS5~bL`ZY29$=`JoZSwZJeJtEDf9m(g z7W0okJ-X}9fAMMm{n@J}^{cj2UbqFK0CE?Z{)P=Q&THtBc@%iP5rF6 z{`;y|Gu1v>tzRSEclhJ;gQ5khPf8!IP`e?#Sf(xe4p-zM#Sy^Vjg==4XridI;EIC9l#tBLzxZ<;6iTLjcbT{hwR)5OZydC|Mpco%q2FXg=P_k)A) z&2#%-r_a7V@z3%^?i)hen)D?2g%h%8aNIsnw!zk?>Es6HHyvdk-v7GURjPWQPj-XQ z8lKe$I3ze%AIjQbRdPrpg89??U;nTC5Bz&FH@5D5q5J=6`QKW<`|aMvertGo#%bE4 zNVVO!KPm4oU$(x)hkw)DGt8&6JK>l-oUc@nt|CiQlFWvul`YY|~&>9YT z$J`YejbRxF)?7c5vqNTGgZ9bYHumNrYdGFsaJ=`pkV%JMd&2jVr>`D;YkK6a!TcJB z@0q(VUHEoj?+4)@ns?a0A7=hwTp=LW)c#N~!ohCIk9n^W?j-8N_1=i>ECp8r0gR${w4p;~m+ z^zGpXziHi&bNtzVbW`r!ty3e?)ScF!8QQ>x|eCcX?Id-)7r23uC`_7Bef!FPDlH-?#4SLSZ*a zqyG}FzyH6PYVuyb^{r`w@8VsBS5I5@ZmgTOEnxSe!ucSyavt-9_u(e*{7v5R|K1*b z>i^;?zeRe>K7F%4JZYcru?N47KKOMspmJZGp@w|(>+drZAL~y0UoU<7vEDZW8z$}t zffYP;eB2K?D}+A%S5N-=f8s{atflm~*1rn>|7%SCz6e#o`JFotRRq0|-q$0z4}wwm(zwP7cGGs*q(e$VP4$&YQFSg zwLg1!#VX^vWxwq@@i|)OeEvrMd!qIA@lSrPQ#+RDJuUju%{v+|xG|C# z6sAf`YWFp1dUfjS_L$2?)~eKd#TRD9-;B#uus-(Z%-MI_LOyKJ?Okx`dBw%kyXGW6 z%sKJibnAlOR(>zd|JI$XH$2d17SHWbyLifPUFj*lz5P=xqe?n-uhj9JES$&dU35Rsb$^}2ZXbN(@OZ*Bw=EyL`rjtVJ^C)*TiEyXkKMwL`;u92cAYw&+I?~fcj5Wg zisw#yiWTqe6nG!gQLcByTKv&m?vLl7!f{8H5lB@bjzYB6ZBJHj#Z{?~t4tq-W*=F7 zts{J`;QA=#I1~w`N1@nIh|;5AR1~E2C`jp1AQB2tdK94a$R86)ADO$Y!#Y>6{Fc(Y zEv|PmyLVg`D_k!7$gldy+;1J$Zw1S5DZks|ekZek$7Q)fbJ~m{iPxzb7o0 zGH1hw-yzLC|IW2B-mEh`Gi#dH%{6C(X4Z7t*H2u;p4TU|UE}HdEpy@+!w*$|u#=J1 zmg^PnKgjy^Xla4%oLj*){J#<%G@qY*`Nr;1(NpfWspqmc7&^`UuYD|G?SaFmYW{1x zm7eCRv!8Nn?hz_RH`Et)%zgGlty_27^@YDJCcTor6#1ko*y7*k-%F1< zpZ&10?U!{x*Tt~8^<1*$=>ea1w=dZfuUY?I^6=Z<#QfXbNveO-bvI_^Zmi0^DHj{x z)9U-+@+qd@0sTK(-M>A)KezCgdR_h0Q@Q=3_CZp&-0vQdHQ;~OvirgD0`oKN)equ+ zbZ%Pv?M(NiXBAVrUQf>ADKz`Asc5dn+3TvJU^MmC=|bh+H7^pUXYegO9m)C9%JJqq z4(0hW?VoZ|Uj+QzRBI#qd}&JAoa8Cdm$pykT~o$iecO)D@9T+gbG@b)>;G|yOxV9B zXZ7EnFZvs9D1V)*@wC`T?)mAb)jyWpOSH2*$1(qk^(pn=y5Bs1XZ^UTdMmo_=D*%e zTg_}0ezP+L>6vM~6tPg#czRrEuGo~n%e2HTJ~tKJF;vtvw^e!R^Hk*V`w4T7AD*x! zec`UWW!p@2o@%Fg>^(n8SfhUD{I8bt9(*rYIj{QEwp(WutWVz%obqM)6PGFTJqjC6 zZ~i_ts7~pWzst{(RrzsiEadfCv>#?kgvOT~WVs==t?_L_`3+~y@0POHt?$mrxU>9o zZS(KnDP?;uPT01;_xbBwoACU{JF8~DJ6uvEbTxeaz8@?(ERPeTZ!ng%+y2`>fBN3V zwo9ixPn$F`@e1FjO?~H8cJrO_y`?h+1{e$uk zlj97pX+J%#c{?j#dH(O@GLAn7)Q|6U`~K2)UidmazXsu{U-r0k$|kDckSuEiRqdb! zNs02%HAsO)e^NJO^W0*7erSz^roD049M<&1tObH+T5cAI#_(Q00B&^KH_U#Jwu3dV z_4b4I0`@b_)(`V$@P7xj4|mARbxi%dFVuTYNHnM+J8J`94#)f!|AS^9ep@}V{K0(Y ztxg@s_QU-T_#&1rxA-PmC?n(Vx4150!tALQ=4Ue&nuhe5OI51uchUTN*5t_Y%ntYW zmn++ok1j2cjNvYRpjTuylTrNes;@_1UEoZ9@OXn_4qx=4Zw8!dhxIn7Klym0zQ%S%1mi#~ZZTE@&?&l2dWX*ZC@Xw5cI=$sTzVnpqdCGm% zm9o6ztzq5f-_qpyhnE)jYE zJ$>mvo-6Yke;EhVv%Na+@Ygu=w~qPl0~;Mm(yAhU{yDSclknd+xxdRx?xs)lPC6QM zWBck8*Hgt_&2Igbws2qMihMBh*@e=*cbwPU2;MTem^X5HzTQ#c!^(aEVmCHV`BdBU z+1u%nV%P7_7y2r1)XUlSH``45-xTz1cKhFF!T;t&6zaY4yk4z1Kfd&%^N!fejKz~~ zmfkwOXP!ad_8G6VkH40?T)eUCRjk+j&322Qr%P_rKU}=w%#0*Sue88_=6Pka9*6JZ zyE(;9ShH?v%)=PDqw6+3KjQI^{bbUH?GjCiGZ@nkMHZ|xy1YX!Y5B_U{?mi&u4@=- zhy9rma2+2vZP zx2aDn@0@wQ^v#neueZ$nEx&)tY>s-B?Glf-JdQTa)wX{=@sa1Rnr9y@=B_(z=6vt_ zy|%)4W>ps7G`?pt|0riWw)))sAGP&b;s@V2EW5Jomdjliama z|AdrOyn31B`ubDHI;yif=O4IRnDncHfe7kH6p6+`nRbg938?*V?zKvFD1P2xi%z50^32xplupmWwAc{^N>? z%m2mIUAeIJa-8Sq-*t2B9P0YM)#Zhls-yH(hqQ$(FuY)w9Pnm;9>Ub@clKlONmL zZPW5!CBN-Uvpf0TXWoHAzXulT0q;4lR5Sgaf8d|`%RfKs>Nx#Be{a?Z+-V>cF7J|?R5>(50@9n z|IrEiW*r#*>TN{)rMa(9m*t5+U;pCtG3(b=s<}U0gCleJKUK|k3qAebt8)Ec={?gA ze_g}nU0Jv8+@-@t%V+}UUTU;1(`bnwu$GVHGTmCDp zd+)mHdosWG{o{Kk$*-L9RkPB1{qu^8I}$$ZT5P}QpZvzZ$Nzs)mN9)<7q{%~@#Kg# z-!s+}SZMz5`Z)RE--n@((;qXgKb%qX{zTZk;y-WF;|o}R?u~vEex|;>U+DLtTU(EA zukL!raM3O9`Tq10;reFthwnd#{gmGS{9@=E&gzNgy;sY^wY&>wzq>xa;v;xBA{{w(9FU*55PUoqfmj-;(pcZIvHL2x!OU zD8vO_+ObZ#`nKHF;594Hl-9kP{v}`W+q^)0rZ~u4r_5Z7Ty0?{^X5lZzShYBQ zC-d6APOn$@r*40H|JRZ2&5u%k$gMw}%6C;SKQ;fh{OQEf&yuRO{ffTD>jhVu=$d*; zpPFi{?DJ0k)M2g-N?V-S*L<1Z_RZ#PyyQ!*|C%3F4)qxQ{MotSv8dM4TEUF)P`mk2 zO2-Yi#fMLO#4p1zzwvz8)S}W~T}PRZoDzv&b+OFb{~}lEQ-kN1?L6a`{SLZ2Wk<~1 zOZVAa`%YgyYc199ZF#oPvWw@6P_qHcVFTuKEt?;FzH(0LiMiu9>n5E)pX$4L+fMuL+RKFzn&(}8jc*lbs_t_Qw%m8m@L6(N3U_2O==Kgh( z?`;GQU;4qsCv|GqoO<6>-CK8GPO?v8i%xjHfBLbRM(4%SkIj5(u%zZvjFj^2?+5>W zSnz4vUdJ^{ZeLH+z17V2XffNS*ldlLg>#R7j6KR3oBI36x}rIKaVy);Yx6x1?YG~) z^{DxS*&lR&n9X5PKV1G`cY(8fq4H0Qd6SQy*VUc|F?Y)eZA7m;Pq^qe_08qY%-Ot;ukaCKK4_4y?5)|-ZTHi zZr<~Md;P?nCqJyar#}Cx`C0R`&zv7qFFpO!xz0Oz^Tv~}H=CHwp5gdv`|Q9v>0Nba z&py-opSf$Ex6)DXtw-b&1DOpME&P!eKJAeQ|3|$&{@WJ3-eMHwv*I+HOn$)6X+NNBcNX5D_>d9Ui*?ar@V`TvIK(RBr% zisxml+w}jX*!#(E&+LC=Q-8JZ)aPI4JWKA+lhsz!yS^pG>fH8;k0O5*_e5Au+nc+d zNjX8KX4$$O%hydYf91K0sb>E^i%pv?gzK2sA99aP`QI^bg?w1^HoGLticR}7cqaVS z;+wKX)+#~g=EXBbW>3B@ezD6`$$H`aS6(kUOOH;y3z{o1Iv6?asMu}!Nq5h@dzSv^ zds*@1r$;3|a>kwKoPRlPSxVzlrc{hKuzV-Y}<+SjZ73XK4pCSIzqB*1bbHqnS@r^uj3(nu? zuBj^!jNzGnU}=HmnU+Wc>2(d-54Cnkt!vDFXte_}3SS`nQ)uq{X*y4=Z|pH7|T-F!}y}iM&%gX8q;8*Rua`wAae#re4S0 zy0#|dM)2FQN*`9+pqay{e?X~1Fs{k|(CH6ce>me>?GI;v5Rc$le^}^;_8!LiX7fbN zKeG3l>JQjI%&lOD)~OF;EBNoV^Cw7x21?hi%4iH*;mkbi0^8|>vL<~puHWxJP3Mnx zV>vSMl-arPLutINe5o%1@4NE-)LVWwvQpcY5f7k0u7(m;@i43N0|b!&CgQ{ZvwQ?LX@smTtDs^JnMJWM3Iydwfoco4%t-fCKOap1XcI^kJ{^$E2E8D@eu0`6qQ~rRj!3|%Y zg9dZhVI$$%Pm9mKJXw3OZt3Zrn%$)qX4=X!%O9@)z_!i&%(PFvn^f;gyi_~2x9^$9 z{#ARj{R7t(^t9$r48G8(8M5B<<;pw%uZo*bdY|~)q`0js{IbvXUF$Eu*!gwRd*%PN zmsfwf@BXjE>Rpw&^D7H+WVR z9`rGGw!A$jH%j>^%DDKomWu{#c5IImm~RM}HTfS(+hCc)8SN-b8^|M7^sbKd5*QGi0&;Kn|slL4q8qc3LFoA}` z8MR%#{=$avBv`W#%rcNVcEAG3uGkH{IqbI&FTHv+_3F~UGd9&}6HMRTgo^vmgJ~yS> z?QHq<`-|xOM&XAtJ2*c5O7Je&KmAgL>1N~EFXl{9+;{lD_@rCKs$H=Ub0khn-8y4Y zC^j=yFZ^$qS&ZY;?XI0WKREA@tz#)aV6$|gXh5y@+1t|u=DyeZ+*fw@@V*6mpG^It z{-rWLd0p7!hg+Aew0)lX^0%f8OTS}$z!&zVe3KW}Muaq}X%LPuQQOmEJWwc=pP=!zUkwpOXIeE^cG{rKd9d)+|TQdF}L% zKGSuLc}wkV$?T_(-y1wFx3;$6yY&5=&1dJ&VJz7h!OBOo3)igMJO9kKLbhESFU8$E z_d4|1%*AIS<;u3FF5I-}>w<8bB_)<~?Kbws=djKGy>#A9ui)AJUz|={pP9=YJmvP; zSg*+UHs|jo+HraPPI5|;P0h_dJV7RXWze;}c z_Z9ml$Aw)peDEb}*L>DziN{!22bAGe22tnsI-6za-+{+$+zQ{qgG}YEtgs+$-W>#r)z2S|KIB&kx2s zJjDwC{a)?R+&?+#@wfX_q*J_Kj&WI46ai@dahOaq1q1CPw$ub&H7}$ zQs4LIToKr`T)p~Hkoe3`)+>WSj=Iawe`U(sKh~PtDrHaBOKoe=P1JtT^wEHETU#e2 zORLP_u|Ck3!T#T`Yi&gMr?(dvwGW=!z}3?*af8+xw$;w+Jx!({pJX3dyZ-F@v+7AV zS4}(hr@ZpB_0|2g?th;#{HwO9Kfg*lt|$5P*7;NK&t7c3>G_#Ca+~(@|Gzu$(e=3b zOZX3&{IlNkbM4c%Pirh&|I7J5{~HtWs#>(KCHaK>in_S_-`QWO&;PdhXVm@;CtgR2 z&72-$t^e_U@v3g?YI+$aLwjWgk~>1#i+_1_QFeTZLrWT$t>{pn}A)sCW#->hT6*NAw~1Z%qwjnd{+)i7`dMr}`?2%sxnZB`jlyrP{_wxmMP_%` z{`3EOzMS`ncdpsl_M?dR<5Q_er%jJc&+gE_E)c&?abFCwgnozqeuaI1ntpuZe&lUP zDLP$xWcuq4{p*79>y-D!xYz9L`%xtO@u}4#6p1Mc`>2lobp0q|{`i#b(P`cz)1^D~ z%?0A~6!!gT`%xtP@u}LQ)4oTh&+gDS7mUwS+IPpLM$?tvXlLrZ;J=^cuf*3M``<3~ z(t69^jkl6?*05IIWt(`T76iCI7A*`>!tacE9^uNhwXU zJ|TClm&LNm_d>T7rd^%>MW6RbQibfa15GI(CFWd+d}Vu=_i1&<{=@ZCFZq8iJf~5b z8!P|K-}ph|=dCwSmEMx+zp`CqS=G^-aX0gKhQEsK{u43($726&_nYc9y5H`RJ7T*l z&U(u9Gd53iP2X3Z|6;lCgLm!o2mBvw_At!n+3;BAGE>m~rwgu>t7_cNZh5l9bn2#c zM{G9-RLkvSh;Pw99R6VS2lv#*+SrIYhyL>m7j{1_o%~L@?ymcvUHv~w$J-W|)WIuaHJ-@(zIfZ{y6)8ow zE`O>!etZ}B_+IhRedi$_{X>yZKC<7vqrP9@zntPfTce)HPqy%4FS6Cny!x-)qXZ}*~(G%q( zC*3R7KM{QNRQbqh_m1iP0{Zfbadu97YFa8ze%j?Z%lFZ;qiThd=W?4L@-5(gvLkb= z=bbCLLgqK2Go~`;H(yS;?rW4IWY0VMh<};AO+fIr&$~R|+{rjOAKvUdtXiNM)Aq|k zZ}ZvL9{(KRTJD75VvCPHVLT@wf`O+OZ%H_Pm`{i`?BoBve4)vP+rPcM3 z>LwX`^|?nXA(OL53piuArXTcKdSq>p+4SOF(L6g-t99f4UkpoF|9E0a?2^}-$1T5A zFZsimv;To;zGK|}^>fzl?A@RKsqn{lzdiRG8*=K6G|c$CY^$3$)rNTZaGw0;o%k_5 z&i|6y;|{Kjc-AfJnQnzMzFpn$IQ&4N_JzN;3#L2{IZ&wez(TZO4wr?W>#h76^FpRM z9G4$TfAC$pu=l0rvO^mUc>g_0i#?Yp=UKlxXT`_=;?MqkJS8DrAOC!dxymo6pnv%m z$~r&S{`i0UQt_gD?rl>OQg0{z_StUXzVr5`$js|y8r^U0KmD4tt@T*y($kekwSR7( zSkL~`_m9rk$BczSb7Urbdfl8PC?hE3uBDvw+d1f;PNeAf^{d`4Jof%>_~JkJCO+D$ zQJ6o+V#Vr+E6uvw!X*yunqzz?C-t`3Q|GrEqEE$^pZ?ak=bwsgx#X$kxy4i2b>gd+ z+}SRtdHtyNzDHC4Y_q$$ey{(h-G{y>sKqRt^83h3`PxnUqux(i_j&(`{1@Vnr$$cW zpR$RM=lS)grG_u-{t8YgS*x%*JGN=kx%TA`Ei3Fap4Y}#-pC8QUO4G!*K5t|q4$!X z{F>dWy5BTMep;21@shp1Qy8Ns6;0H&biQ@dap%EnhR&~~SN52l3y@ipw|e0`WA&az zzc=Tp{NA#*NNV@NZ^eDft}gi7=F+9PHPTsnzE0Rng`bD5x;$fD-}Pq&{QmcK!^LeW z^4jk&f2@1SXm)Ic(3GO~2j4%Oo>0Lhrv21rQQ`fhoKL%tNX$Mn|Hy-V#~)Z2{;_=a z-`uAy^G|&Hw$GK{rc@k{q6eR_6Jw} z4+}eG+gId&X&LZgSk7zvblppYxvlvYqtr;Ay!H zA8dq{>tFs`cSZ~k1f#>W3_uC$E& zZ`Jw)hi~=D3U4djBhQv;D|`*-=(^i9$v)=imbE$>Z~xgHvAc4vb;&;N4HhcD-*R+U zKVV#Xcw@iabpP8meU)+(?ag!4|Lx!ZqCEOm(A=8Xs7rt6FRZ!yb92zG)BD`sX0*P( z&vkwG)U|uhJ^}@$cJ}J?-Zrm#-R))kpN3aQyi9+5asRQ!^}X)HxWs5rFTh9frC-VG!zkKb-pLxw?+aB)l{TmX!>i?J1 zZw!B*OI*{l{no7~8!I$HB< ziHoi5%6Va4neNB`znc7Q!}^JHHU3}SxaPEFNaQ)QoHb9P(>?atIe+5aWNf>9`=c9n zX65OHM!m~--Kbhow}SiJX6;L{g|)katXF;fm4D)W+vitpuW#~R-z^PciqR}wyc?v}ufo}GJgMzt?9gV;Ij+0+MB_G>=d7>7=Qp1}>}cZmQ}c-0s?zoGn_Mk^ zwH(=ZO6r=?FBzU?kNrPy+!e(>$CqQ15x?b)Z=0;{Pk;GG?|SM-yY0TuF2*hU#Qkf7 z(E9jodlP2AnD%M5P0qq?hqPZ#^_pHh_0znaQZKjH1m(^4KlPS-gZ|B5?Kci?`}st> z~QTrUEbKZNSjs8)&HunTZ8?OF?=MzDDRh{NdPpXXTddpXR z;NAxPH|&*hT~8}lhUXgTA5C)v%Vn+beYW(*%>uqT+|LjGEI9c8^m*4x(A3<`0?QcI z@WZABx-sn65AzmCKdD@qXf|_t5^O95v8wQM&|#2?%MP1A5U~*bv`6Ih=b#+z6L3d; z+9NWXzcSA2sX0wtD_^V+x){H7(S9%2 z`l((2v_$`gYLO(7rSog`#uw|4E!r>D{SP-si}!D+)UVYhU&1qAtiN<2e(A#fUe5JX z+v>D<{{~C_T5j^iKl8=>OBd{yE{ykb-an=7p9b&WK&fAgO}@BizG%O6fq&`3|DMkO zC%64m=l$z1^=rP#7yHZ?^~V<8m+Y@gxA`^qQ7Yh|s6m%X6swRYYqipLrHEsh@d+xF4Q?fs2QbIyPKzjFKD z<;R+XAB6mvm)rk%M*H0-J6=vLSu%fbVt>%N&9d&ln5E+P`Cos&Y-Q%<+{-zC>i5}h zD?DfKdo6kPJc`h4&v>Et7}g-YkcH`&BX9{G4P$S9@w zcG>U9^}WxZA2O@tH}koE^l@73Ig_~lGhz28zMuXjBCh^SndkhKGS7dwYyLjJB-w;g?Db!H=L&hx30?5Fn~{>)gsQ~p`$o`5{PZRZ!i zcMZ1Q)K<2%-Qt$+&pq#We($*SbPmJ)fVj))tSQy0|LmWY#7}D4RG<56pMm`MY`Z>l z`Jdbw`%O#gxL?}LTl{&rLvyn0xzxt=!VzcDz=KngG{`3Fb#dqRfl`p%N6npNsoY^r8-=Fgn?tK-To{8T)u6REC20w``>Rj?Y8!Q^7zN^)w%e$ zLB30tWZlg=C6%YuZL0Ch>k9V2^?z*2ul@V|_LJ{5zTM_q@%eUs^h25B|Kn%>em-Hz zWamlef=>Nj$^N2d=iK%c^WNo6d~MzG^Q!ZXzV;mU+&}*=Dc(-smdmJVZlxjDeCOQZ zZF~Eyx7-(up0;Lkx^~D{@dJy$#QgF5_+29Rc|~c@r=NTFZSW2F_=o$p__pq?N4}hU zB+{jSJTPAI_;rnqMYUm%%$EOF?|%KD>Z#iC?|atC_WHYh`c=A3#yvi6d*7?QB9s2y zOZ>JYH>qvP{zI={-n85P@qektmbFDHTIH5*6V-E0!UHW$sw&$)lAZ_@o+=T`0CUfcb+CObPJbIRds+m9UP zdlGr2UhM09*T3n3|0ApZozs45k)B(=)oH2Bd+Wa4fl1pgJ?&Y2{M6rPe@>o!bjt71 zD!-t->~v56S8YWG^RFL1T>N)#?#gRZt{*=9_37JorliU$y>p2*g?yiTavq0li>ALvZw!Ca!rZcl6Z+-0yovgKot;4yDk34PJTJs~Y0 zg?3ASvPl;_=I<(DFPb=SGsoi_uRbjiAA9V_ zE2CrK(+&6S>iKvz^-OWxL5tU1$0EZG&h2U{ye0|~uz8M^`d_i@{f`x0>lzgD>=%l=RE{jWRwU$oiZ z?K!{lZ&F+0WLdx2wNIHg&FLRy<{jt$AzIga|AFhCls~cS?lWbrtIA4pHtl%Xe{0nz zxdj&GvnsT=997a~*Du?dS7g6mbAG*ZX=CX7*XGW3o4;Gn%nz93w?BWc@T_?n*9yNy zy0`3|w8U)NwbPSNe{ufDk@@UI@zLmI_MZ;SI{s3A`O|35SMl0Mq8I*`{GYPVe&&1s zXTPeV0h{!XY?tZ$psCHnaA6U%3| z*Q(E-dG3GV*A$hFyB_;rdztEE|FZ5x^6r1^Y5OjH%o5L;z2MwtKMt$(uNK;qTw>o% zoOy3Y&n=eOr~WS~z9(NiZ|NMZpP|k|b8c50|7EZwW{$+0Ssk119#`x!1Cqx?Qu*U(??7X}<6Ow~|lOm+iSfWqxp-T#?R;1-ktu zD(|0t7C4*#ICa++ctI&sxRC3Et61k{!S1?)Cd_ zeD{3G{*~)9U-z?KHDY_ROJbeb=Dw0`XF|o#U;fp>vvu8`=Wk#9Niu%zk$%EO*WDoY z8F$f_KWvuDht$r8JTAytW5p@0wyM`Kev(vM>jr~&+r-N58r;8~uz7F2_o`O!m8lzK z_H~JF5IVO?|5@3S&wOUTrG?e6@yX9yaoJrZtJ3i4(rZ69q(0llXZY0eZ|M9z=X0j@ z$E5MypYr`o=;nf#Hl;H!o~?N_TifOD{KAiCeYWm3TyJca<7Yfwd;ZOT;jAuaXHPtT z@pb5_N$Se;CqLEFdwce zjpaqVw;g}|tL)h8FXz|Z-&q!TueW+ldTivB?~nGf7%J^?UUci`t;;uaWuLC`y!6xV znE!?*cb#{$o?QI2UGDDuO`5yxp9XK)m(=y{eD)OW#HS*6=U>+hHx!%jSwj07U;fM` zPp{oL7IEQ)l!{x+{n;y0|0@+v`FuJ|_rAGU(Wf1+j;?-xx_a}o>WzHSCx34^xB0>W zuELy%o}KesWhBrE|TBH^42Zh{%FgdgNySVCI73P`e7b;Y`^HV*A`)O zB&MjnU;L?7KWW+d?Vs+gwmir7>7Mp${X<_Pk93ywMXk1SomBGk(X~#;vm179b*|vP z_P^16dVId_n;cWIQmq@WcSwktf4=Gyu-{+gf4Kdn%*~-ZWxZ2uPF>mmXi71k$G?&+df@UA<+TQ$bUBG+E(=*=of9lw^Z&RA}H`^%V`uj6q zrH9q--#TaKx~${bk>B>q{MP^a+x8V>&YU%78^y{+Jq6vZwgzpfv+)6VP z$G9%Zi3OZaW?j?%btB`p11et}owP1EAXPveWVtR{)?oD}&kd`*O3E${WPfXi#E_ARMNUKXX{_xG5T;6L|0 z)2!82ycXJ0mpN$~fAy9>yEksCiTgBftLA!tfv?q?Uq8jozS2JXZ_V8)`lo(hTNa}e zx3*_`Z|IHxT5sw_zwPJx9pCy_TzFPTl}xBbpO#GfjMMA<`<>TJUGP=5ka3-JCI5P^ z=xmDoDTe?6D( zb#{L&?$6u4<)_WPl>PTje($snx|?kJG0fOh^m%0E`8#K}uUmR;{q}#NU)<(Q`>eL& z=bG}SeH-4DTs6P`Iy!CVe3km`mVL4xvn)5u=Uabwdh);eUZIjqXTQ>!Pj|UiDE3}G zo_o~Bv0kmC+$ldg+v@V1rKT^(vpQKQ3PR z{L1#@f$_J_djy`Zuf4VOR}CMpPvo=gj^2%&W=GSW?dt3mpKX2eSyfKnFYZq84g_^mnT3x3*X1kVeI*=rCiBOh|%%J-@N(h3V*ZXBJN^*W+-(boRW zR-VtTQ+oNUr|IyO-}AcoYx~+?JHH%n+_If{ZjQ~S8CH1NkRuBdrpD{sFHjGykm zYW>&EuU>yTEtOU2DO{?lxB1oIh*R^o1YO^H=~wIy>F)`kR8}DWE`RCmzsu*Y^M9wm zc+N$?(=#8HJFZ=8curvTKRc^aJ0*?kmg$*aoTVTBFe32x?Zp}9sZ~<@#Fp0yEWa(; z8y^vE-9Dp^&-+++>zr>NqvZO-AC>M@|6#sMxTK0Rn|*of*14B2RjF^8TIv!}{p@w; zULlM9JMP@N`*X%i=@sV}{K;&Rd$0Fu{=?Uuzjp3xG`#lDuglafXY1DX&31v`la0Uj zJ<%^`yY+AG8v9F82QvM4uHL$S^QBwoBd0F8{r~K&+oG=myECrQnlUnFX+nj zZ!hYm9W1)CKTCGP@=c{PKCcb^oY_^owmSCjq|)8#lS+TSpY(MP+Zw6qGaeV++q%r^ zedKe?(ly(g@0tId&wr+LYuLZ~JDIbVH~*2hc>5`0Uw-n=eM{%uU-R8L*|p!|-nRJ1 zFYfm&wwYJ=reb-}x_O`eslJvz|Ixo-Udxkd-*x78o|D)tKl#bO;E2CVc2sR!Q^h?$ zB!u5Pt}MN2vUb>Nq`Y|pjRb!QCXxL8p_q^KASTZ%J*+Bf+v4k_tiZ2#Oub&?F zdH=F&T_V9UmVK7X@&7c`NbA?H0#GjgN=KGb2k2(w>3_#^ZB#F zy=RM^nlC^3Up<%U;OD1*W8Lq^3qGwC`KTdx_;Cf3|07MC?&lwDPW@KmmZ^<*iD~?_ zuS4T~w@%5ITERlTb4Nqww0|x<`2U%IYF$j%=>pYthqnGOtZRB*V4HWq??p6`mMe#0n`1XQW3)0iMeZ<-zUfR9I1+!|98T7?ISg*TkJ#* ze_*W<{QTHEf`L0pu}1RnMguX&%Kb^AZ$E3LH}8#KYgTw+QAFVB>;m2MZ?9QJ$L8~j zC?C4N?Nx1^?)RTt?_5v)b(c3OFZ^

    YbcrFZ6EpZQWVICdScP`+6B^2JZS-aha* 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

    vkoH|~AX z`BHxQo5nf!=1!TJva2^f(c}C}+cQ%y>;CC-=Dnu#V(Y00k?`f|sx~)eR-Jq4zB%OY z#FZz1Hu-PlzwP#R=IspUf*nhPFSjVZ_^lUav`j+5&Xgzld+NMs&ECV8b*s&uu`tNrBZQliQOc29jA!nPt@ zZRy_^?Ry`6xFmk|ca~)7d8RW`*Vo;fy(NULR`W`K_1!5QVfKC|*OyKBpDD8cQ@^sJ zalYK93saq+e?R$uPuFYV(=UrBZci;b;P^o|(eB9p6DDfO{RQDWl$OiCJQCGX@akyOQt&!+V%NK z`6pG>MW0SS`zvEh-;Q^4D(74~bMDMVKm9GLf7_pIdbUB{`?SvE2uEq%^{VQed+uI- zHF?$a9q;D+49;E9Fi~Z?V&b+Wi`Xx3e6318mUZey?CZBG&Y$$QKc+e+f3e86hSEaW ziFx(&m|y1o4y*r{ov|kQY*n)Uw%vO!eEt^0!T-t3c|G^rrehx(a^J0fx}z;FRm#67 zwN0j1-j6S!zTwm4<6_y_y4RMizaAoFw;*=L`NO*w)I3Uve?H|SQ^8If+b{QOe#|?w z@_MU%)OpjM9hm{!cu(2Pco^#(!*gPde%0Au1;Kvyji;9}-<4~ZnRt28j5z0jy5lRH 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�CnJG?hjGwc_ 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 z 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%0DEw54S_~f@Q?7ql5 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