You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.3 KiB
35 lines
1.3 KiB
package org.purplei2p.lightning.search |
|
|
|
import org.purplei2p.lightning.database.HistoryItem |
|
import org.purplei2p.lightning.search.suggestions.DuckSuggestionsModel |
|
import org.purplei2p.lightning.search.suggestions.LegworkSuggestionsModel |
|
import android.app.Application |
|
import com.anthonycr.bonsai.Single |
|
import com.anthonycr.bonsai.SingleAction |
|
|
|
internal object SuggestionsManager { |
|
|
|
@JvmStatic |
|
@Volatile var isRequestInProgress: Boolean = false |
|
|
|
@JvmStatic |
|
fun createLegworkQueryObservable(query: String, application: Application) = |
|
Single.create(SingleAction<List<HistoryItem>> { subscriber -> |
|
isRequestInProgress = true |
|
val results = LegworkSuggestionsModel(application).fetchResults(query) |
|
subscriber.onItem(results) |
|
subscriber.onComplete() |
|
isRequestInProgress = false |
|
}) |
|
|
|
@JvmStatic |
|
fun createDuckQueryObservable(query: String, application: Application) = |
|
Single.create(SingleAction<List<HistoryItem>> { subscriber -> |
|
isRequestInProgress = true |
|
val results = DuckSuggestionsModel(application).fetchResults(query) |
|
subscriber.onItem(results) |
|
subscriber.onComplete() |
|
isRequestInProgress = false |
|
}) |
|
|
|
}
|
|
|