BeMapVehicleRepository

class BeMapVehicleRepository(appContext: Context, login: String, password: String, apiUrl: String) : VehicleRepository

Instance of VehicleRepository that uses BeMap API for interacting with online vehicle database and stores the information locally using Room library.

Parameters

appContext

application context instance needed by the repository to interact with Android environment

login

login used to access BeMap API

password

password used access BeMAP API

apiUrl

base endpoint of the BeMAP APi

Constructors

Link copied to clipboard
constructor(appContext: Context, login: String, password: String, apiUrl: String)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

Live data instance keeping track of information about all the available manufacturers

Link copied to clipboard

Live data instance keeping track of all vehicle models available in the repository

Functions

Link copied to clipboard
open suspend override fun clearManufacturers()

Clears vehicle manufacturers from local database

Link copied to clipboard
open suspend override fun clearVehicleModel(vehicleModelId: String): Int

Clears vehicle models of specified vehicleModelId from local database

Link copied to clipboard
open suspend override fun clearVehicleModels(manufacturer: Manufacturer): Int

Clears vehicle models of specified manufacturer from local database

Link copied to clipboard
open suspend override fun fetchFullVehicleModel(vehicleModelId: String): Error?

Gets full vehicle model data (including vehicle datasheet) of specified id from BeMap and saves it in local database.

Link copied to clipboard
open suspend override fun fetchManufacturers(): Error?

Gets manufacturers data from BeMap API if data is not already in local database

Link copied to clipboard
open suspend override fun fetchVehicleModels(manufacturer: Manufacturer): Error?

Gets vehicle models data of specified manufacturer from BeMap and saves it in local database.

Link copied to clipboard
open suspend override fun getAllManufacturers(): List<Manufacturer>

Gets all manufacturers from local database

Link copied to clipboard
open suspend override fun getVehicleModels(manufacturer: Manufacturer): List<VehicleModel>

Gets all vehicle models of specified manufacturer.

Link copied to clipboard
open suspend override fun getVehicleModelWithId(id: String): VehicleModel?

Gets a vehicle model by specifying its id.

Link copied to clipboard

Queries for information (and updates) regarding specific vehicle model