/// <summary>
 /// Finds a registered language by ISO
 /// </summary>
 /// <param name="iso">The language ISO</param>
 /// <returns>The registered language, if found; otherwise null</returns>
 public RegisteredLanguage FindLanguage
 (
     string iso
 )
 {
     return(_languageRepository.FindLanguage(iso));
 }
        public Language GetLanguage(string iso)
        {
            if (_languageCache.ContainsKey(iso))
            {
                return(_languageCache[iso]);
            }
            else
            {
                var registeredLanguage = _languageRepository.FindLanguage(iso);

                Language language;

                if (registeredLanguage == null)
                {
                    language = new Language(iso, iso);
                }
                else
                {
                    language = registeredLanguage.ToLanguage();
                }

                _languageCache.Add(iso, language);

                return(language);
            }
        }