package Ġio . mate am . playground 2 . data . dataSource . local . mapper Ċ Ċ import Ġio . mate am . playground 2 . data . dataSource . local . entity . Db Genre Ċ import Ġio . mate am . playground 2 . data . dataSource . local . entity . Db Production Company Ċ import Ġio . mate am . playground 2 . data . dataSource . local . entity . Db Spo ken Language Ċ import Ġio . mate am . playground 2 . data . dataSource . local . entity . Movie Db Model Ċ import Ġio . mate am . playground 2 . data . dataSource . remote . mapper . Media Path Parser Ċ import Ġio . mate am . playground 2 . domain . entity . movie . Genre Ċ import Ġio . mate am . playground 2 . domain . entity . movie . Movie Full Details Ċ import Ġio . mate am . playground 2 . domain . entity . movie . Production Company Ċ import Ġio . mate am . playground 2 . domain . entity . movie . Spo ken Language Ċ Ċ class ĠDb Movie Mapper Ġ{ ĊĠĠĠ Ġfun Ġmap To Db ( movie : ĠMovie Full Details ): ĠMovie Db Model Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠMovie Db Model ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġad ult Ġ= Ġmovie . ad ult , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġback drop _ path Ġ= Ġmovie . backdrop _ path , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbudget Ġ= Ġmovie . budget , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgen res Ġ= Ġmovie . genres ?. map Ġ{ Ġmap To Db Genre ( it )}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhomepage Ġ= Ġmovie . homepage , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġmovie . id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġim db _ id Ġ= Ġmovie . imdb _ id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal _ language Ġ= Ġmovie . original _ language , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal _ title Ġ= Ġmovie . original _ title , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverview Ġ= Ġmovie . overview , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpop ularity Ġ= Ġmovie . pop ularity , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġposter _ path Ġ= movie . poster _ path , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġproduction _ companies Ġ= Ġmovie . production _ companies ?. map Ġ{ Ġmap To Db Production Company ( it ) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelease _ date Ġ= Ġmovie . release _ date , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġre venue Ġ= Ġmovie . re venue , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġruntime Ġ= Ġmovie . runtime , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġspo ken _ languages Ġ= Ġmovie . spo ken _ languages ?. map Ġ{ Ġmap To Db Spo ken Language ( it ) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġmovie . status , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtag line Ġ= Ġmovie . tag line , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġmovie . title , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvote _ average Ġ= Ġmovie . vote _ average , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvote _ count Ġ= Ġmovie . vote _ count , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvideo Ġ= Ġmovie . video ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmap To Db Spo ken Language ( language : ĠS po ken Language ): ĠDb Spo ken Language Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠDb Spo ken Language ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġiso _ 6 3 9 _ 1 Ġ= Ġlanguage . iso _ 6 3 9 _ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġlanguage . name ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmap To Db Production Company ( company : ĠProduction Company ): ĠDb Production Company Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠDb Production Company ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġcompany . id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogo _ path Ġ= ĠMedia Path Parser . getPost er Path ( company . logo _ path ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġcompany . name , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin _ country Ġ= Ġcompany . origin _ country ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmap To Db Genre ( genre : ĠGen re ): ĠDb Genre Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠDb Genre ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġgenre . id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġgenre . name ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġmap From Db ( movie : ĠMovie Db Model ): ĠMovie Full Details Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠMovie Full Details ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġad ult Ġ= Ġmovie . ad ult , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġback drop _ path Ġ= Ġmovie . backdrop _ path , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbudget Ġ= Ġmovie . budget , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgen res Ġ= Ġmovie . genres ?. map Ġ{ Ġmap From Db Genre ( it ) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhomepage Ġ= Ġmovie . homepage , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġmovie . id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġim db _ id Ġ= Ġmovie . imdb _ id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal _ language Ġ= Ġmovie . original _ language , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal _ title Ġ= Ġmovie . original _ title , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverview Ġ= Ġmovie . overview , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpop ularity Ġ= Ġmovie . pop ularity , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġposter _ path Ġ= Ġmovie . poster _ path , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġproduction _ companies Ġ= Ġmovie . production _ companies ?. map Ġ{ Ġmap From Db Production Company ( it ) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelease _ date Ġ= Ġmovie . release _ date , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġre venue Ġ= Ġmovie . re venue , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġruntime Ġ= Ġmovie . runtime , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġspo ken _ languages Ġ= Ġmovie . spo ken _ languages ?. map Ġ{ Ġmap From Db Spo ken Language ( it ) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġmovie . status , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtag line Ġ= Ġmovie . tag line , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġmovie . title , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvote _ average Ġ= Ġmovie . vote _ average , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvote _ count Ġ= Ġmovie . vote _ count , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvideo Ġ= Ġmovie . video ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmap From Db Spo ken Language ( language : ĠDb Spo ken Language ): ĠS po ken Language Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠS po ken Language ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġiso _ 6 3 9 _ 1 Ġ= Ġlanguage . iso _ 6 3 9 _ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġlanguage . name ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmap From Db Production Company ( company : ĠDb Production Company ): ĠProduction Company Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠProduction Company ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġcompany . id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogo _ path Ġ= ĠMedia Path Parser . getPost er Path ( company . logo _ path ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġcompany . name , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorigin _ country Ġ= Ġcompany . origin _ country ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmap From Db Genre ( genre : ĠDb Genre ): ĠGen re Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠGen re ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġgenre . id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġgenre . name ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ