package Ġcom . example . anime . data Ċ Ċ import Ġcom . example . anime . data . remote . Api DataSource Ċ import Ġcom . example . anime . utils . perform Network Operation Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠRepository Ċ @ Inject Ġconstructor ( private Ġvar Ġapi DataSource : ĠApi DataSource ){ ĊĊĠĠĠ Ġfun Ġget ALL An imes ByName ( title : ĠString , page : ĠInt ) Ġ= Ġperform Network Operation Ġ{ ĊĠĠĠĠĠĠĠ Ġapi DataSource . get ALL An imes ByName ( title , page ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget An ime ById ( id Ġ: ĠInt ) Ġ= Ġperform Network Operation Ġ{ ĊĠĠĠĠĠĠĠ Ġapi DataSource . get An ime ById ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetAll Episode ById ( id : ĠInt , source : ĠString , locale : ĠString , number : ĠInt ?) Ġ= Ġperform Network Operation Ġ{ ĊĠĠĠĠĠĠĠ Ġapi DataSource . getAll Episode ById ( id , source , locale , number ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetAll S ongs ById ( id : ĠInt , title : ĠString ) Ġ= Ġperform Network Operation Ġ{ ĊĠĠĠĠĠĠĠ Ġapi DataSource . getAll S ongs ById ( id , title ) ĊĠĠĠ Ġ} Ċ }