diff options
Diffstat (limited to 'taler-kotlin-common/src/main/java/net/taler/common/CombinedLiveData.kt')
-rw-r--r-- | taler-kotlin-common/src/main/java/net/taler/common/CombinedLiveData.kt | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/taler-kotlin-common/src/main/java/net/taler/common/CombinedLiveData.kt b/taler-kotlin-common/src/main/java/net/taler/common/CombinedLiveData.kt deleted file mode 100644 index 4e7016b..0000000 --- a/taler-kotlin-common/src/main/java/net/taler/common/CombinedLiveData.kt +++ /dev/null @@ -1,51 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package net.taler.common - -import androidx.lifecycle.LiveData -import androidx.lifecycle.MediatorLiveData -import androidx.lifecycle.Observer - -class CombinedLiveData<T, K, S>( - source1: LiveData<T>, - source2: LiveData<K>, - private val combine: (data1: T?, data2: K?) -> S -) : MediatorLiveData<S>() { - - private var data1: T? = null - private var data2: K? = null - - init { - super.addSource(source1) { t -> - data1 = t - value = combine(data1, data2) - } - super.addSource(source2) { k -> - data2 = k - value = combine(data1, data2) - } - } - - override fun <S : Any?> addSource(source: LiveData<S>, onChanged: Observer<in S>) { - throw UnsupportedOperationException() - } - - override fun <T : Any?> removeSource(toRemote: LiveData<T>) { - throw UnsupportedOperationException() - } - -} |