public static async Task<TimeZoneInfo> TryToDetermineAsync(GeoTagsEntry geoTags) {
var key = Key + geoTags;
if (CacheStorage.Contains(key)) {
return CacheStorage.GetTimeZoneInfo(key);
}
try {
var result = await GoogleApiProvider.DetermineTimeZoneAsync(geoTags);
CacheStorage.Set(key, result);
return result;
} catch (WebException e) {
Logging.Warning("TryToDetermineAsync(): " + e.Message);
return null;
} catch (Exception e) {
Logging.Warning("TryToDetermineAsync(): " + e);
CacheStorage.Set(key, "");
return null;
}
}
}