package Ġcom . el and . my kotlin . sample . http . services Ċ Ċ import Ġcom . el and . my kotlin . sample . dto . Api Result Ċ import Ġcom . el and . my kotlin . sample . dto . Login Info Ċ import Ġcom . el and . my kotlin . sample . http . Base Http Ċ import Ġcom . el and . my kotlin . sample . http . interfaces . Login ApiService Ċ import Ġcom . el and . my kotlin . sample . http . listeners . I Login Listener Ċ import Ġio . reactivex . android . schedul ers . Android Schedulers Ċ import Ġio . reactivex . schedul ers . Schedulers Ċ import Ġkotlinx . android . synt hetic . main . activity _ main .* Ċ import Ġretrofit 2 . Call Ċ import Ġretrofit 2 . Response Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġli uw en bin Ġon Ġ 1 7 / 1 2 / 2 1 . Ċ Ġ*/ ĊĊ Ċ class ĠLogin Ġ{ ĊĊĠĠĠ Ġfun Ġget Login ( userName : ĠString , Ġpassword : ĠString , Ġlistener : ĠI Login Listener ) Ġ Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcall Ġ= Ġlogin Service . login ( userName , Ġpassword ) Ċ // ĠĠĠĠĠĠĠ Ġobservable Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe () ĊĠĠĠĠĠĠĠ Ġcall . enqueue ( object Ġ: Ġretrofit 2 . Callback < Api Result > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Response ( call : ĠCall < Api Result > ?, Ġresponse : ĠResponse < Api Result > ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// TODO (" not Ġimplemented ") Ġ// To Ġchange Ġbody Ġof Ġcreated Ġfunctions Ġuse ĠFile Ġ| ĠSettings Ġ| ĠFile ĠTemplates . ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . on Success ( response ?. body ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// val Ġresult Ġ= Ġresponse ?. body () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Failure ( call : ĠCall < Api Result > ?, Ġt : ĠThrowable ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// TODO (" not Ġimplemented ") Ġ// To Ġchange Ġbody Ġof Ġcreated Ġfunctions Ġuse ĠFile Ġ| ĠSettings Ġ| ĠFile ĠTemplates . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . on Failure () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Ab servable Login ( userName : ĠString , Ġpassword : ĠString , Ġlistener : ĠI Login Listener ) Ġ{ ĊĠĠĠĠĠĠĠ Ġlogin Service . observable Login ( userName , Ġpassword ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ({ Ġt : ĠApi Result ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . on Success ( t ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . on Failure () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlogin Service : ĠLogin ApiService Ġ= ĠBase Http . ret rofit !!. create ( Login ApiService :: class . java ) ĊĠĠĠ Ġ} Ċ }