/tripkit/TripKitAndroidUI/com.skedgo.tripkit.ui.tripresults/TripResultListViewModel

TripResultListViewModel

\ class TripResultListViewModel@Injectconstructor(val context: Context, tripGroupRepository: TripGroupRepository, routingStatusRepositoryLazy: Lazy<RoutingStatusRepository>, tripResultViewModelProvider: Provider<TripResultViewModel>, getSortedTripGroupsWithRoutingStatusProvider: Provider<GetSortedTripGroupsWithRoutingStatus>, tripResultTransportItemViewModelProvider: Provider<TripResultTransportItemViewModel>, regionService: RegionService, routeService: RouteService, errorLogger: ErrorLogger, routingTimeViewModelMapper: RoutingTimeViewModelMapper) : RxViewModel, ActionButtonContainer

Constructors

TripResultListViewModel @Inject
constructor(context: Context, tripGroupRepository: TripGroupRepository, routingStatusRepositoryLazy: Lazy<RoutingStatusRepository>, tripResultViewModelProvider: Provider<TripResultViewModel>, getSortedTripGroupsWithRoutingStatusProvider: Provider<GetSortedTripGroupsWithRoutingStatus>, tripResultTransportItemViewModelProvider: Provider<TripResultTransportItemViewModel>, regionService: RegionService, routeService: RouteService, errorLogger: ErrorLogger, routingTimeViewModelMapper: RoutingTimeViewModelMapper)

Properties

Name Summary
context val context: Context
customAdapter val customAdapter: TripResultListCustomRecyclerViewAdapter<Any>
fromContentDescription val fromContentDescription: MutableLiveData<String>
fromName val fromName: MutableLiveData<String>
helpInfoVisible val helpInfoVisible: LiveData<Boolean>
isError val isError: ObservableBoolean
itemBinding val itemBinding: ItemBinding<Any>
loadingItem val loadingItem: LoaderPlaceholder
mergedList val mergedList: MergeObservableList<Any>
onError val onError: PublishRelay<String>
onFinished val onFinished: PublishRelay<Boolean>
onItemClicked val onItemClicked: PublishRelay<ViewTrip>
onMoreButtonClicked val onMoreButtonClicked: PublishRelay<Trip>
onQuickBookingActionClicked val onQuickBookingActionClicked: PublishRelay<TripSegment>
query lateinit var query: Query
results val results: DiffObservableList<TripResultViewModel>
showCloseButton val showCloseButton: ObservableBoolean
showHelpInfo val showHelpInfo: LiveData<Boolean>
showTransport val showTransport: ObservableBoolean
showTransportModeSelection val showTransportModeSelection: ObservableBoolean
startLocationListener val startLocationListener: LiveData<Boolean>
stateChange val stateChange: PublishRelay<MultiStateView.ViewState>
timeLabel val timeLabel: MutableLiveData<String>
toContentDescription val toContentDescription: MutableLiveData<String>
toName val toName: MutableLiveData<String>
transportBinding val transportBinding: ItemBinding<TripResultTransportItemViewModel>
transportModes val transportModes: MutableLiveData<List<TripResultTransportItemViewModel>>
tripGroupList val tripGroupList: ObservableArrayList<TripGroup>
tripGroupWithUrlList var tripGroupWithUrlList: ArrayList<TripGroup>
tripResultListStream val tripResultListStream: BehaviorSubject<List<TripResultViewModel>>

Functions

Name Summary
autoClear fun <T> Observable<T>.autoClear(): Observable<T>
fun Disposable.autoClear()
changeQuery fun changeQuery(newQuery: Query)
load fun load()
onCleared open override fun onCleared()
This method will be called when this ViewModel is no longer used and will be destroyed.
onShowBookARideInduction fun onShowBookARideInduction(show: Boolean)
onStartLocationClicked fun onStartLocationClicked()
reload fun reload()
replaceTripGroup open override fun replaceTripGroup(tripGroupUuid: String, newTripGroup: TripGroup)
scope open override fun scope(): CoroutineScope
setHelpInfoVisibility fun setHelpInfoVisibility(show: Boolean)
setReplaceMode fun setReplaceMode(list: List<UserMode>)
setStartLocationListenerValue fun setStartLocationListenerValue(value: Boolean)
setup fun setup(_query: Query, showTransportSelectionView: Boolean, transportModeFilter: TransportModeFilter?, actionButtonHandlerFactory: ActionButtonHandlerFactory?, force: Boolean = false, execute: Boolean = true)
transportLayoutClicked fun transportLayoutClicked(view: View)
updateQueryTime fun updateQueryTime(timeTag: TimeTag)
updateTripGroup fun updateTripGroup(updatedTripGroup: TripGroup)