package Ġcom . pat be ag an 1 . data . repository Ċ Ċ import Ġcom . pat be ag an 1 . data . network . cat api . Cat Service Ċ import Ġcom . pat be ag an 1 . domain . Get Cat UseCase Ċ import Ġcom . pat be ag an 1 . domain . Get Single Cat UseCase Ċ import Ġcom . pat be ag an 1 . domain . entities . Entity Cat Item Ċ import Ġjava . net . URL Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠCat Repository Impl Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġcat Service : ĠCat Service Ċ ) Ġ: ĠGet Cat UseCase . Repository , ĠGet Single Cat UseCase . Repository Ġ{ ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun ĠgetC ats (): ĠList < Entity Cat Item > Ġ= Ġcat Service ĊĠĠĠĠĠĠĠ Ġ. getC ats () ĊĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġcat Item Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEntity Cat Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcat Item . url Ġ?: Ġ" Unknown ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcat Item . id Ġ?: Ġ" Unknown ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcat Item . url ?. let Ġ{ ĠURL ( it ) Ġ} Ġ?: ĠURL ( INVALID _ IMAGE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġget Single Cat (): ĠEntity Cat Item Ġ= Ġcat Service ĊĠĠĠĠĠĠĠ Ġ. getC ats ( pagination Count Ġ= Ġ 1 , Ġlimit Ġ= Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġ. first () ĊĠĠĠĠĠĠĠ Ġ. let Ġ{ Ġcat Item Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEntity Cat Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcat Item . url Ġ?: Ġ" Unknown ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcat Item . url Ġ?: ĠINVALID _ IMAGE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcat Item . url ?. let Ġ{ ĠURL ( it ) Ġ} Ġ?: ĠURL ( INVALID _ IMAGE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} Ċ } Ċ Ċ const Ġval ĠINVALID _ IMAGE Ġ= ĊĠĠĠ Ġ" https :// bit sof co . de / content / images / 2 0 1 8 / 1 2 / broken - 1 . png " Ċ