package Ġno . nav . f amil ie . ba . mot tak . integr as jon er Ċ Ċ import Ġno . nav . f amil ie . http . client . Abstract RestClient Ċ import Ġno . nav . f amil ie . kon tr ak ter . ba . info try gd . Info try gd S Ã¸ k Request Ċ import Ġno . nav . f amil ie . kon tr ak ter . ba . info try gd . Info try gd S Ã¸ k Response Ċ import Ġno . nav . f amil ie . kon tr ak ter . ba . info try gd . St Ã¸ nad Ġas ĠSt Ã¸ nad Dto Ċ import Ġno . nav . f amil ie . kon tr ak ter . ba . info try gd . S ak Ġas ĠS ak Dto Ċ import Ġorg . springframework . beans . factory . annotation . Qualifier Ċ import Ġorg . springframework . beans . factory . annotation . Value Ċ import Ġorg . springframework . core . env . Environment Ċ import Ġorg . springframework . stereotype . Component Ċ import Ġorg . springframework . web . client . Rest Operations Ċ import Ġjava . net . URI Ċ Ċ @ Component Ċ class ĠInfo try gd Bar ne try gd Client (@ Value ("\ ${ FAMIL IE _ BA _ INF OT RY GD _ API _ URL }/ info try gd / bar ne try gd ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġclient Uri : ĠURI , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Qualifier (" client Credentials ") Ġrest Operations : ĠRest Operations , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġenvironment : ĠEnvironment ) ĊĠĠĠ Ġ: ĠAbstract RestClient ( rest Operations , Ġ" f amil ie - ba - info try gd ") Ġ{ ĊĊĠĠĠ Ġfun Ġh ent L Ã¸ pen de U tb et al inger ( s Ã¸ kers Id enter : ĠList < String >, Ġb arn as Id enter : ĠList < String >): ĠInfo try gd S Ã¸ k Response < St Ã¸ nad Dto > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinfo try gd Response F ra ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequest Ġ= Ġ{ Ġpost For Entity ( uri (" ston ad "), ĠInfo try gd S Ã¸ k Request ( s Ã¸ kers Id enter , Ġb arn as Id enter )) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Failure Ġ= Ġ{ Ġex Ġ-> ĠIntegr as jon Exception (" Fe il Ġved Ġs Ã¸ k Ġet ter Ġst Ã¸ nad Ġi Ġinfo try gd .", Ġex , Ġuri (" ston ad ")) Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġh ent S aker ( s Ã¸ kers Id enter : ĠList < String >, Ġb arn as Id enter : ĠList < String >): ĠInfo try gd S Ã¸ k Response < S ak Dto > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinfo try gd Response F ra ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequest Ġ= Ġ{ Ġpost For Entity ( uri (" s aker "), ĠInfo try gd S Ã¸ k Request ( s Ã¸ kers Id enter , Ġb arn as Id enter )) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Failure Ġ= Ġ{ Ġex Ġ-> ĠIntegr as jon Exception (" Fe il Ġved Ġ uth ent ing Ġav Ġs aker Ġf ra Ġinfo try gd .", Ġex , Ġuri (" s aker ")) Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġ< T > Ġinfo try gd Response F ra ( request : Ġ() Ġ-> ĠInfo try gd S Ã¸ k Response < T >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Failure : Ġ( Throwable ) Ġ-> ĠRuntimeException ): ĠInfo try gd S Ã¸ k Response < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( environment . active Profiles . contains (" e 2 e ")) Ġ ĠInfo try gd S Ã¸ k Response ( emptyList (), Ġempty List ()) ĊĠĠĠĠĠĠĠ Ġelse Ġrun Catch ing ( request ). getOrElse Ġ{ Ġthrow Ġon Failure ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġuri ( en dep unkt : ĠString ) Ġ= ĠURI . create ("$ client Uri /$ en dep unkt ") Ċ } Ċ Ċ enum Ġclass ĠO pp h Ã¸ rs gr un n ( val Ġk ode : ĠString ) Ġ{ ĊĠĠĠ ĠM IG R ERT (" 5 ") Ċ } Ċ Ċ enum Ġclass ĠStatus K ode ( val Ġbes k riv else : ĠString ) Ġ{ ĊĠĠĠ ĠIP (" S aks be handling en Ġkan Ġstart e Ġmed ĠStatus kode ĠIP Ġ( Ik ke ĠpÃ¥ beg ynt ). ĠDa Ġer Ġdet Ġkun Ġregist r ert Ġen Ġs aks lin je Ġut en Ġat Ġved t aks be handling Ġer Ġstart et ."), ĊĠĠĠ ĠU B (" S aks be handling Ġstart et Ġ- Ġn Ã¥r Ġs ak Ġmed Ġstatus ĠU B Ġ- ĠUnder ĠBe handling Ġ- Ġlag res , Ġrapport eres Ġh ende ls en ĠBe handling Opp rett et "), ĊĠĠĠ ĠSG (" S aks be handler Ġ 1 Ġhar Ġful lf Ã¸ rt Ġog Ġsend t Ġtil Ġs aks be handler Ġ 2 Ġfor Ġgod k jen ning "), ĊĠĠĠ ĠUK (" Under kj ent Ġav Ġs aks be handler Ġ 2 Ġmed Ġret ur Ġtil Ġs aks be handler Ġ 1 "), ĊĠĠĠ ĠFB (" F er dig Be hand let "), ĊĠĠĠ ĠFI (" fer dig Ġ iver ks att "), ĊĠĠĠ ĠRF (" return ert Ġfe il send t "), ĊĠĠĠ ĠRM (" return ert Ġmid l ert id ig "), ĊĠĠĠ ĠRT (" return ert Ġtil "), ĊĠĠĠ ĠST (" send t Ġtil "), ĊĠĠĠ ĠV D (" vider es end t ĠD ire ktor ate t "), ĊĠĠĠ ĠVI (" vent er ĠpÃ¥ Ġ iver k setting "), ĊĠĠĠ ĠVT (" vider es end t ĠTry g der et ten "), Ċ }