package Ġno . nav . sy fo . ar be id sg iv ere . redis Ċ Ċ import Ġcom . fasterxml . jackson . module . kotlin . readValue Ċ import Ġno . nav . sy fo . application . j edis ObjectMapper Ċ import Ġorg . slf 4 j . Logger Ċ import Ġorg . slf 4 j . LoggerFactory Ċ import Ġredis . clients . j edis . J edis Ċ import Ġredis . clients . j edis . J edis Pool Ċ Ċ class ĠAr be id sg iver Redis Service ( private Ġval Ġjed is Pool : ĠJ edis Pool , Ġprivate Ġval Ġredis Secret : ĠString ) Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlog : ĠLogger Ġ= ĠLoggerFactory . getLogger ( Ar be id sg iver Redis Service :: class . java ) ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval Ġredis Timeout Seconds : ĠInt Ġ= Ġ 6 0 0 ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval Ġprefix Ġ= Ġ" ARB " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġupdate Ar be id sg iv ere ( ar be id sg iver info Redis Model List e : ĠList < Ar be id sg iver info Redis Model >, Ġfn r : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġjed is : ĠJ edis ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjed is Ġ= Ġjed is Pool . resource ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjed is . auth ( redis Secret ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjed is . set ex ("$ prefix $ fn r ", Ġredis Timeout Seconds , Ġjed is ObjectMapper . writeValue AsString ( ar be id sg iver info Redis Model List e )) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ex : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog . error (" Could Ġnot Ġupdate Ġredis Ġfor Ġar be id sg iv ere Ġ{}", Ġex . message ) ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjed is ?. close () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Ar be id sg iv ere ( fn r : ĠString ): ĠList < Ar be id sg iver info Redis Model >? Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġjed is : ĠJ edis ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjed is Ġ= Ġjed is Pool . resource ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjed is . auth ( redis Secret ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( val Ġstring Value Ġ= Ġjed is . get ("$ prefix $ fn r ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull Ġ-> Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġjed is ObjectMapper . readValue < List < Ar be id sg iver info Redis Model >>( stringValue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ex : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog . error (" Could Ġnot Ġget Ġredis Ġfor Ġar be id sg iv ere ", Ġex . message ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjed is ?. close () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ