@ file : Jvm Name (" I 1 8 n Provider ") Ċ Ċ package Ġcom . github . fel ipe w om . i 1 8 n Ċ Ċ import Ġcom . github . fel ipe w om . commons . Api Constants . ROOT _ PACKAGE Ċ import Ġio . jav al in . http . Context Ċ Ċ /* Ċ * ĠCl asse Ġpro ved ora Ġde Ġresources Ġbase ado Ġno Ġheader Ġda Ġrequis icao Ċ * Ċ * Ġ*/ Ċ object ĠI 1 8 n Provider Ġ{ ĊĠĠĠ Ġconst Ġval ĠPT _ BR Ġ= Ġ" pt - br " ĊĠĠĠ Ġconst Ġval ĠEN _ US Ġ= Ġ" en - US , en " ĊĠĠĠ Ġconst Ġval ĠAC CEPT _ LANG Ġ= Ġ" Accept - Language " ĊĠĠĠ Ġconst Ġval ĠCOM MA _ SEPARATOR Ġ= Ġ"," ĊĠĠĠ Ġconst Ġval ĠS EM IC OL ON Ġ= Ġ";" ĊĠĠĠ Ġval ĠPT _ BR _ INT L Ġ= Ġ"${ ROOT _ PACKAGE }. i 1 8 n . I 1 8 n Pt BR " ĊĠĠĠ Ġval ĠEN _ US _ INT L Ġ= Ġ"${ ROOT _ PACKAGE }. i 1 8 n . I 1 8 n En US " ĊĠĠĠ Ġfun Ġget ( str : ĠString , Ġctx : ĠContext ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlang Ġ= Ġctx . header ( ACCEPT _ LANG )?. split ( SE MIC OL ON )?. first OrNull () Ġ?: ĠEN _ US ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlang Name Ġ= Ġif Ġ( lang . contains ( COMMA _ SEPARATOR )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlang . substring ( 0 , Ġlang . indexOf ( COMMA _ SEPARATOR )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlang ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtranslated Ġ= Ġwhen Ġ( lang Name . toLowerCase ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPT _ BR Ġ-> Ġget I 1 8 n Pt BR ( str ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget I 1 8 n En US ( str ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtranslated Ġ?: Ġstr ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġstr ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget I 1 8 n Pt BR ( str : ĠString ): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdefault Ġ= ĠI 1 8 n Pt BR Default . translate ĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinstance Ġ= ĠClass . forName ( PT _ BR _ INT L ). kotlin . object Instance Ġas ĠInternational ization ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtranslations Ġ= Ġmutable Map Of < String , ĠString >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtranslations . put All ( instance . translate ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtranslations . put All ( default ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtranslations [ str ] ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdefault [ str ] ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget I 1 8 n En US ( str : ĠString ): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdefault Ġ= ĠI 1 8 n Pt BR Default . translate ĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinstance Ġ= ĠClass . forName ( EN _ US _ INT L ). kotlin . object Instance Ġas ĠInternational ization ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtranslations Ġ= Ġmutable Map Of < String , ĠString >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtranslations . put All ( instance . translate ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtranslations . put All ( default ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtranslations [ str ] ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdefault [ str ] ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }