package Ġcom . po cket _ plan . j 7 _ 0 0 3 . data . shopping list Ċ Ċ import Ġcom . google . gson . Gson Builder Ċ import Ġcom . google . gson . reflect . Type Token Ċ import Ġcom . po cket _ plan . j 7 _ 0 0 3 . App Ċ import Ġcom . po cket _ plan . j 7 _ 0 0 3 . data . settings . Languages Ċ import Ġcom . po cket _ plan . j 7 _ 0 0 3 . data . settings . Setting Id Ċ import Ġcom . po cket _ plan . j 7 _ 0 0 3 . data . settings . Settings Manager Ċ import Ġjava . util .* Ċ Ċ class ĠItem Template List Ġ: ĠArrayList < Item Template >() Ġ{ ĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġload From Assets () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠReturns Ġan ĠItem Template Ġif Ġone Ġwas Ġdefined Ġin Ġthe Ġassets Ġitem _ list _ de . json Ġfile . ĊĠĠĠĠ Ġ* Ġ@ param Ġname ĠThe Ġname Ġthe ĠItem Template Ġis Ġsupposed Ġto Ġhave . ĊĠĠĠĠ Ġ* Ġ@ return ĠReturns Ġthe Ġtemplate Ġif Ġfound , Ġnull Ġotherwise . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget Template ByName ( name : ĠString ): ĠItem Template ? Ġ{ ĊĊĠĠĠĠĠĠĠ Ġthis . forEach Ġ{ Ġe Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( e . n . equals ( name , Ġignore Case Ġ= Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġe ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġload From Assets () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlanguage Code Ġ= Ġwhen Ġ( Settings Manager . get Setting ( Setting Id . LANGUAGE )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLanguage s . RU SS IAN . index Ġ-> ĠLanguage s . RU SS IAN . code ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLanguage s . SPAN ISH . index Ġ-> ĠLanguage s . SPAN ISH . code ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLanguage s . F REN CH . index Ġ-> ĠLanguage s . F REN CH . code ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLanguage s . GER MAN . index Ġ-> ĠLanguage s . GER MAN . code ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠLanguage s . EN GL ISH . code ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval ĠfileName Ġ= Ġ" item _ list _$ language Code . json " ĊĠĠĠĠĠĠĠ Ġ// todo Ġadd Ġtry Ġcatch Ġhere ĊĠĠĠĠĠĠĠ Ġval Ġjson String Ġ= ĠApp . instance . assets . open ( fileName ). buffered Reader (). read Text () ĊĊĠĠĠĠĠĠĠ Ġval Ġlist : ĠArrayList < TMP Template > Ġ= ĠGson Builder (). create () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. fromJson ( json String , Ġobject Ġ: ĠType Token < ArrayList < TMP Template >>() Ġ{} . type ) ĊĊĠĠĠĠĠĠĠ Ġlist . forEach Ġ{ Ġe Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . add ( Item Template ( e . n , Ġe . c , Ġ" x ")) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġclass ĠTMP Template ( val Ġn : ĠString , Ġval Ġc : ĠString ) Ċ } Ċ Ċ data Ġclass ĠItem Template ( var Ġn : ĠString , Ġvar Ġc : ĠString , Ġvar Ġs : ĠString ) Ċ