diff --git a/app/build.gradle b/app/build.gradle index ec0e3ab..e5cb088 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -32,18 +32,7 @@ dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" implementation 'androidx.appcompat:appcompat:1.1.0' implementation 'androidx.core:core-ktx:1.1.0' - implementation 'androidx.constraintlayout:constraintlayout:1.1.3' - testImplementation 'junit:junit:4.12' - androidTestImplementation 'androidx.test.ext:junit:1.1.0' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1' - implementation (project(path: ':varddb')) { - transitive = true - } + implementation (project(path: ':varddb')) implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.2' implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.2' - implementation "androidx.appcompat:appcompat:1.1.0" - implementation "androidx.core:core-ktx:1.1.0" - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.2.0-rc03" - implementation "de.ruedigermoeller:fst:2.56" - implementation "com.tencent:mmkv:1.0.23" } diff --git a/build.gradle b/build.gradle index d3f4f20..b08e781 100644 --- a/build.gradle +++ b/build.gradle @@ -20,6 +20,7 @@ allprojects { repositories { google() jcenter() + maven { url 'https://jitpack.io' } } } diff --git a/gradle.properties b/gradle.properties index 5bb7475..e391044 100644 --- a/gradle.properties +++ b/gradle.properties @@ -20,4 +20,4 @@ android.enableJetifier=true # Kotlin code style for this project: "official" or "obsolete": kotlin.code.style=official -lib_version=0.1.1 +lib_version=0.1.2 diff --git a/varddb/build.gradle b/varddb/build.gradle index 5a23847..c434992 100644 --- a/varddb/build.gradle +++ b/varddb/build.gradle @@ -38,12 +38,9 @@ dependencies { //implementation fileTree(dir: 'libs', include: ['*.jar']) implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.2' - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.2' - implementation "androidx.appcompat:appcompat:1.1.0" - implementation "androidx.core:core-ktx:1.1.0" implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.2.0-rc03" - implementation "de.ruedigermoeller:fst:2.56" - implementation "com.tencent:mmkv:1.0.23" + api "de.ruedigermoeller:fst:2.56" + api "com.tencent:mmkv:1.0.23" } repositories { diff --git a/varddb/src/main/java/com/vardemin/varddb/LiveDataUtil.kt b/varddb/src/main/java/com/vardemin/varddb/LiveDataUtil.kt deleted file mode 100644 index f54a321..0000000 --- a/varddb/src/main/java/com/vardemin/varddb/LiveDataUtil.kt +++ /dev/null @@ -1,81 +0,0 @@ -package com.vardemin.varddb - -import androidx.annotation.MainThread -import androidx.collection.ArraySet -import androidx.lifecycle.LifecycleOwner -import androidx.lifecycle.MutableLiveData -import androidx.lifecycle.Observer - -class MutableLiveEvent> : MutableLiveData() { - - internal val observers = ArraySet>() - - @MainThread - override fun observe(owner: LifecycleOwner, observer: Observer) { - val wrapper = PendingObserver(observer) - observers.add(wrapper) - - super.observe(owner, wrapper) - } - - override fun observeForever(observer: Observer) { - val wrapper = PendingObserver(observer) - observers.add(wrapper) - - super.observeForever(observer) - } - - @MainThread - override fun removeObserver(observer: Observer) { - - when (observer) { - is PendingObserver -> { - observers.remove(observer) - super.removeObserver(observer) - } - else -> { - val pendingObserver = observers.firstOrNull { it.wrappedObserver == observer } - if (pendingObserver != null) { - observers.remove(pendingObserver) - super.removeObserver(pendingObserver) - } - } - } - } - - @MainThread - override fun setValue(event: T?) { - observers.forEach { it.awaitValue() } - super.setValue(event) - } -} - -internal class PendingObserver>(val wrappedObserver: Observer) : Observer { - - private var pending = false - - override fun onChanged(event: T?) { - if (pending && event?.handled != true) { - pending = false - wrappedObserver.onChanged(event) - } - } - - fun awaitValue() { - pending = true - } -} - -open class EventArgs(private val content: T?) { - - var handled: Boolean = false - - val data: T? - get() { - return if (handled) { - null - } else { - content - } - } -} \ No newline at end of file