Mapper adalah pemetaan object data, sering disebut juga dengan mapping data. Gunanya adalah memberi nilai default saat data kosong (response) sehingga model yang akan digunakan terhindar dari kesalahaan null pointer.
Mapping ini lebih bagus jika kalian menggunakan modul data layer, sehingga mapping dilakukan antara response dan model data terlihat lebih jelas.
Berikut adalah contoh penggunaan mapper :
1. Object Data
fun MahasiswaResponse.toClean(): Mahasiswa {
return Mahasiswa(
label = label ?: "",
value = value ?: false
)
}
Note : Mengubah data pada class Mahasiswa Response menjadi class Mahasiswa dengan memberi nilai default jika null ditemukan (string kosong dan boolean false).
2. List Data
listMahasiswa = listMahasiswaResponse?.map { it.toClean() } ?: listOf()
Note : Mengubah data pada variable ListMahasiswaResponse menjadi variable ListMahasiswa dengan memberi nilai default jika null ditemukan (list kosong).
Selamat mencoba