// ĠCopyright Ġ 2 0 0 0 - 2 0 2 0 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ package Ġorg . jetbrains . plugins . github . ui . avatars Ċ Ċ import Ġcom . intellij . util . ui . Image Util Ċ import Ġcom . intellij . util . ui . coder e view . avatar . Caching Avatar Icons Provider Ċ import Ġicons . Github Icons Ċ import Ġorg . jetbrains . plugins . github . api . Github ApiRequest Executor Ċ import Ġorg . jetbrains . plugins . github . ui . util . GH UI Util Ċ import Ġorg . jetbrains . plugins . github . util . Caching GH User Avatar Loader Ċ import Ġjava . awt . Image Ċ import Ġjava . awt . Transparency Ċ import Ġjavax . swing . Icon Ċ Ċ class ĠGH Avatar Icons Provider ( private Ġval Ġav atars Loader : ĠC aching GH User Avatar Loader , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġrequest Executor : ĠGithub ApiRequest Executor ) ĊĠ Ġ: ĠC aching Avatar Icons Provider < String >( Github Icons . Default Avatar ) Ġ{ ĊĊĠ Ġfun Ġget Icon ( key : ĠString ?): ĠIcon Ġ= Ġsuper . get Icon ( key , ĠGH UI Util . AV AT AR _ SIZE ) ĊĊĠ Ġoverride Ġfun Ġload Image ( key : ĠString ): ĠImage Ġ{ ĊĠĠĠ Ġval Ġimage Ġ= Ġtry Ġ{ ĊĠĠĠĠĠ Ġav atars Loader . request Avatar ( request Executor , Ġkey ). get () ĊĠĠĠ Ġ} ĊĠĠĠ Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġimage Ġ?: ĠImage Util . create Image ( 1 , Ġ 1 , ĠTr ansparency . TRANSL UC ENT ) ĊĠ Ġ} Ċ } Ċ