public static void FirstTimeUpdate(IEnumerable<CountryInfo> data)
        {
            if (!_hasInit)
            {
                CachedData.Clear();

                foreach (var info in data)
                {
                    CachedData[info.Cep1CrCode] = RuntimeCountryInfo.Of(info);
                }

                _hasInit = true;
            }
        }
 public static void RuntimeUpdate(RuntimeCountryInfo info)
 {
     CachedData.AddOrUpdate(info.Cep1CrCode,
         k => info,
         (k, v) => info);
 }
 public static IEnumerable <RuntimeCountryInfo> Get(RuntimeCountryInfo countryInfo, int year, int month, int day)
 {
     return(countryInfo.IsHistorical == false
         ? new[] { countryInfo }
         : InternalGet(countryInfo.Cep1CrCode, year, month, day));
 }