@@ -22,14 +22,6 @@ public sealed class BrowserFetcher : IBrowserFetcher
2222 {
2323 private const string PublishSingleFileLocalApplicationDataFolderName = "PuppeteerSharp" ;
2424
25- private static readonly Dictionary < SupportedBrowser , Func < Platform , string , string , string > > _downloadsUrl = new ( )
26- {
27- [ SupportedBrowser . Chrome ] = Chrome . ResolveDownloadUrl ,
28- [ SupportedBrowser . ChromeHeadlessShell ] = ChromeHeadlessShell . ResolveDownloadUrl ,
29- [ SupportedBrowser . Chromium ] = Chromium . ResolveDownloadUrl ,
30- [ SupportedBrowser . Firefox ] = Firefox . ResolveDownloadUrl ,
31- } ;
32-
3325 private readonly CustomFileDownloadAction _customFileDownload ;
3426 private readonly ILogger < BrowserFetcher > _logger ;
3527
@@ -206,8 +198,14 @@ internal static string GetBrowsersLocation()
206198 return assemblyDirectory . FullName ;
207199 }
208200
209- private static string GetDownloadURL ( SupportedBrowser browser , Platform platform , string baseUrl , string buildId )
210- => _downloadsUrl [ browser ] ( platform , buildId , baseUrl ) ;
201+ private static string GetDownloadURL ( SupportedBrowser browser , Platform platform , string baseUrl , string buildId ) => browser switch
202+ {
203+ SupportedBrowser . Chrome => Chrome . ResolveDownloadUrl ( platform , buildId , baseUrl ) ,
204+ SupportedBrowser . ChromeHeadlessShell => ChromeHeadlessShell . ResolveDownloadUrl ( platform , buildId , baseUrl ) ,
205+ SupportedBrowser . Chromium => Chromium . ResolveDownloadUrl ( platform , buildId , baseUrl ) ,
206+ SupportedBrowser . Firefox => Firefox . ResolveDownloadUrl ( platform , buildId , baseUrl ) ,
207+ _ => throw new NotSupportedException ( ) ,
208+ } ;
211209
212210 private static void ExtractTar ( string zipPath , string folderPath )
213211 {
@@ -236,7 +234,7 @@ private static void ExecuteSetup(string exePath, string folderPath)
236234
237235 private async Task < InstalledBrowser > DownloadAsync ( SupportedBrowser browser , string buildId )
238236 {
239- var url = _downloadsUrl [ browser ] ( Platform , buildId , BaseUrl ) ;
237+ var url = GetDownloadURL ( browser , Platform , BaseUrl , buildId ) ;
240238 var fileName = url . Split ( '/' ) . Last ( ) ;
241239 var cache = new Cache ( CacheDir ) ;
242240 var archivePath = Path . Combine ( CacheDir , fileName ) ;
0 commit comments