public async Task Handle(GenerateScreenshotMessage message, CancellationToken cancellationToken)
        {
            if (message == null)
            {
                throw new ArgumentNullException(nameof(message));
            }

            Console.WriteLine($"Generating screenshot from URL {message.Url}");

            using (var driver = _webDriverFactory.Create())
            {
                driver.Navigate().GoToUrl(message.Url);
                var screenshot = (driver as ITakesScreenshot).GetScreenshot();
                await _saveScreenshotCommand.Execute(CreateScreenshot(message, screenshot.AsByteArray), cancellationToken);
            }
        }