package Ġcom . example . dd 5 th . presenter Ċ Ċ import Ġcom . example . dd 5 th . contract . Skill Contract Ċ import Ġcom . example . dd 5 th . data . domain . Api ListItem Response Ċ import Ġcom . example . dd 5 th . data . domain . Skill Ċ import Ġcom . example . dd 5 th . data . external . Api Repository Ċ Ċ class ĠSkill Presenter ( ĊĠĠĠ Ġprivate Ġval Ġview : ĠSkill Contract . View Ċ ) Ġ: ĠSkill Contract . Presenter , ĠSkill Contract . Callback Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġapi : ĠSkill Contract . Api Ġ= ĠApi Repository ĊĊĠĠĠ Ġoverride Ġfun Ġget Skill ( skill Name : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġskill Name ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġapi . get Skill ( it , Ġthis ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonSuccess ( skill : ĠSkill ) Ġ{ ĊĠĠĠĠĠĠĠ Ġview . on Skill Result ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSkill ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġindex Ġ= Ġskill . index , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġskill . name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġskill . description , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġability Score Api Item Ġ= ĠApi ListItem Response ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġindex Ġ= Ġget Index From Url ( skill . ability Score Api Item . url ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġskill . ability Score Api Item . name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġurl Ġ= Ġskill . ability Score Api Item . url ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Failure () Ġ{ ĊĠĠĠĠĠĠĠ ĠTODO (" Not Ġyet Ġimplemented ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonError () Ġ{ ĊĠĠĠĠĠĠĠ ĠTODO (" Not Ġyet Ġimplemented ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Index From Url ( url : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġurl . split ("/ "). last () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist ToText ( description : ĠList < String >) Ġ= Ġdescription . join ToString ("\ n \ n ") Ċ Ċ }