public override IEnumerable <Location> GetLocations(string query)
        {
            // Trying to get locations from database.
            IEnumerable <Location> locations = _repository.GetLocationsBySearch(query);

            // If there are no locations...
            if (locations.Any() == false)
            {
                // ... use web service to find locations.
                locations = _webservice.GetLocationsFromTextSearch(query);

                // Save locations in repository.
                foreach (var location in locations)
                {
                    // TODO: Spara bara locations som användaren har hämtat väderdata för. Eller radera övriga.

                    // Check if entry with same GeoName-id already exists.
                    if (!_repository.locationExists(location.LocationID))
                    {
                        _repository.AddLocation(location);
                        _repository.Save();
                    }
                }
            }
            return(locations);
        }