Rename PlaceSearchProvider to PlaceSearch

pull/1375/head
Alex Baker 5 years ago
parent 3d3bc8e6d6
commit 7f3a5f533a

@ -30,7 +30,7 @@ internal class LocationModule {
return if (preferences.useGooglePlaces() return if (preferences.useGooglePlaces()
&& playServices.isPlayServicesAvailable && playServices.isPlayServicesAvailable
&& inventory.hasPro) { && inventory.hasPro) {
GooglePlacesSearchProvider(context) PlaceSearchGoogle(context)
} else { } else {
mapboxSearchProvider mapboxSearchProvider
} }

@ -17,7 +17,7 @@ import org.tasks.data.Place
import org.tasks.data.Place.Companion.newPlace import org.tasks.data.Place.Companion.newPlace
import kotlin.coroutines.suspendCoroutine import kotlin.coroutines.suspendCoroutine
class GooglePlacesSearchProvider(private val context: Context) : PlaceSearchProvider { class PlaceSearchGoogle(private val context: Context) : PlaceSearch {
private var token: AutocompleteSessionToken? = null private var token: AutocompleteSessionToken? = null
private var placesClient: PlacesClient? = null private var placesClient: PlacesClient? = null

@ -2,10 +2,9 @@ package org.tasks.location
import android.os.Bundle import android.os.Bundle
import androidx.annotation.DrawableRes import androidx.annotation.DrawableRes
import org.tasks.Callback
import org.tasks.data.Place import org.tasks.data.Place
interface PlaceSearchProvider { interface PlaceSearch {
fun restoreState(savedInstanceState: Bundle?) fun restoreState(savedInstanceState: Bundle?)
fun saveState(outState: Bundle) fun saveState(outState: Bundle)

@ -16,11 +16,11 @@ import org.tasks.preferences.Preferences
import java.io.IOException import java.io.IOException
import javax.inject.Inject import javax.inject.Inject
class MapboxSearchProvider @Inject constructor( class PlaceSearchMapbox @Inject constructor(
@ApplicationContext context: Context, @ApplicationContext context: Context,
private val preferences: Preferences, private val preferences: Preferences,
private val interceptor: DebugNetworkInterceptor, private val interceptor: DebugNetworkInterceptor,
) : PlaceSearchProvider { ) : PlaceSearch {
val token = context.getString(R.string.mapbox_key) val token = context.getString(R.string.mapbox_key)
override fun restoreState(savedInstanceState: Bundle?) {} override fun restoreState(savedInstanceState: Bundle?) {}

@ -10,7 +10,7 @@ import javax.inject.Inject
@HiltViewModel @HiltViewModel
class PlaceSearchViewModel @Inject constructor( class PlaceSearchViewModel @Inject constructor(
private val searchProvider: PlaceSearchProvider private val search: PlaceSearch
): ViewModel() { ): ViewModel() {
private val searchResults = MutableLiveData<List<PlaceSearchResult>>() private val searchResults = MutableLiveData<List<PlaceSearchResult>>()
private val error = MutableLiveData<Event<String>>() private val error = MutableLiveData<Event<String>>()
@ -27,11 +27,11 @@ class PlaceSearchViewModel @Inject constructor(
} }
fun saveState(outState: Bundle) { fun saveState(outState: Bundle) {
searchProvider.saveState(outState) search.saveState(outState)
} }
fun restoreState(savedInstanceState: Bundle?) { fun restoreState(savedInstanceState: Bundle?) {
searchProvider.restoreState(savedInstanceState) search.restoreState(savedInstanceState)
} }
fun query(query: String?, bias: MapPosition?) = viewModelScope.launch { fun query(query: String?, bias: MapPosition?) = viewModelScope.launch {
@ -39,7 +39,7 @@ class PlaceSearchViewModel @Inject constructor(
searchResults.postValue(emptyList()) searchResults.postValue(emptyList())
} else { } else {
try { try {
searchResults.value = searchProvider.search(query, bias) searchResults.value = search.search(query, bias)
} catch (e: Exception) { } catch (e: Exception) {
e.message?.let { setError(it) } e.message?.let { setError(it) }
} }
@ -48,7 +48,7 @@ class PlaceSearchViewModel @Inject constructor(
fun fetch(result: PlaceSearchResult) = viewModelScope.launch { fun fetch(result: PlaceSearchResult) = viewModelScope.launch {
try { try {
selection.value = searchProvider.fetch(result) selection.value = search.fetch(result)
} catch (e: Exception) { } catch (e: Exception) {
e.message?.let { setError(it) } e.message?.let { setError(it) }
} }
@ -58,5 +58,5 @@ class PlaceSearchViewModel @Inject constructor(
error.value = Event(message) error.value = Event(message)
} }
fun getAttributionRes(dark: Boolean) = searchProvider.getAttributionRes(dark) fun getAttributionRes(dark: Boolean) = search.getAttributionRes(dark)
} }

@ -4,9 +4,9 @@ import org.junit.Assert.assertEquals
import org.junit.Assert.assertTrue import org.junit.Assert.assertTrue
import org.junit.Test import org.junit.Test
import org.tasks.TestUtilities.readFile import org.tasks.TestUtilities.readFile
import org.tasks.location.MapboxSearchProvider.Companion.jsonToSearchResults import org.tasks.location.PlaceSearchMapbox.Companion.jsonToSearchResults
class MapboxPlaceSearchTest { class PlaceSearchMapboxTest {
@Test @Test
fun searchWithMultipleResults() { fun searchWithMultipleResults() {
val results = jsonToSearchResults(readFile("mapbox/search.json")) val results = jsonToSearchResults(readFile("mapbox/search.json"))
Loading…
Cancel
Save