package Ġru . v dv . fil mex pert . ui . details Ċ Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġru . v dv . fil mex pert . domain . Actor Ċ import Ġru . v dv . fil mex pert . domain . CallBack Ċ import Ġru . v dv . fil mex pert . domain . Credits Response T mdb Ċ import Ġru . v dv . fil mex pert . domain . Movie Detail T mdb Ċ import Ġru . v dv . fil mex pert . ui . common . Base ViewModel Ċ Ċ class ĠMovie Details ViewModel Ġ: ĠBase ViewModel () Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġ_ credits List Ġ= ĠMutable LiveData < List < Actor >> (). apply Ġ{ Ġvalue Ġ= ĠlistOf () Ġ} ĊĠĠĠ Ġval Ġcredits List : ĠLive Data < List < Actor >> Ġ= Ġ_ credits List ĊĠĠĠ Ġprivate Ġvar Ġ_ detail Info Ġ= ĠMutable LiveData < Movie Detail T mdb >(). apply Ġ{ Ġvalue Ġ= Ġnull Ġ} ĊĠĠĠ Ġval Ġdetail Info : ĠLive Data < Movie Detail T mdb > Ġ= Ġ_ detail Info ĊĊĠĠĠ Ġfun Ġfetch Credits List ( t mdb ApiKey V 3 : ĠString , Ġmovie Id : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrepository . getC red its List ( t mdb ApiKey V 3 , Ġmovie Id , Ġobject Ġ: ĠCall Back < Credits Response T mdb > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Result ( value : ĠCred its Response T mdb ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ credits List . value Ġ= Ġvalue . cast ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġfetch Detail Info ( t mdb ApiKey V 3 : ĠString , Ġmovie Id : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrepository . get Detail Info ( t mdb ApiKey V 3 , Ġmovie Id , Ġobject Ġ: ĠCall Back < Movie Detail T mdb > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Result ( value : ĠMovie Detail T mdb ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ detail Info . value Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} Ċ }