public override async Task <CommandResult> Execute()
        {
            var doc           = documentStore.GetWeatherLocations();
            var apiKeySetting = await userSettingsDataService.GetUserSetting(Constants.UserSettings.DarkSkyApiKey);

            var results = new List <string>();

            foreach (var location in doc.Locations)
            {
                var forecast = await weatherService.GetForecast(apiKeySetting.value, location.Latitude, location.Longitude);

                Logger.Trace("got forecast", forecast);
                documentStore.UpdateForecast(location, forecast);
                results.Add($"Upserted {location.Identifier}");
            }

            return(CommandResult.CreateSuccessResult(results));
        }