package Ġcom . kar h oo . uis dk . screen . booking . map Ċ Ċ import Ġcom . google . android . gms . maps . model . LatLng Ċ import Ġcom . kar h oo . sdk . api . model . Position Ċ import Ġcom . kar h oo . sdk . api . network . response . Resource Ċ import Ġcom . kar h oo . sdk . api . service . address . Address Service Ċ import Ġcom . kar h oo . uis dk . util . return Error String Or Logout If Required Ċ Ċ internal Ġclass ĠPick up Only Presenter ( private Ġval Ġaddress Service : ĠAddress Service ) Ġ: ĠBook ing Map State gy . Presenter Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġowner : ĠBook ing Map State gy . Owner ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġmap Moved ( position : ĠLat Lng ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( position . latitude Ġ== Ġ 0 . 0 Ġ&& Ġposition . longitude Ġ== Ġ 0 . 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġaddress Service ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. reverse Geo code ( Position ( position . latitude , Ġposition . longitude )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. execute Ġ{ Ġresult Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠResource . Success Ġ-> Ġowner ?. set Pickup Location ( result . data ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠResource . Failure Ġ-> Ġowner ?. onError ( return Error String Or Logout If Required ( result . error ), Ġresult . error ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Owner ( owner : ĠBook ing Map State gy . Owner ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . owner Ġ= Ġowner ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmap Drag ged () Ġ{ ĊĠĠĠĠĠĠĠ Ġowner ?. set Pickup Location ( null ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlocate User Pressed () Ġ{ ĊĠĠĠĠĠĠĠ Ġowner ?. locate AndUpdate () ĊĠĠĠ Ġ} Ċ Ċ } Ċ