public static ISettings GetDefault(ICache cache = null)
        {
            if (_settings != null) return _settings;
            if (cache == null) cache = Cache;

            _settings = cache.GetCache<ISettings>(Namespace);
            if (_settings != null) return _settings;

            ISettings results = null;
            var typeName = Namespace + ".AppSettings.SettingsHelpers," + Namespace + ".AppSettings";
            var type = Type.GetType(typeName);

            if (type != null)
            {
                results = (ISettings)Activator.CreateInstance(type, Cache);
                _settings = results;
                cache.AddCache(Namespace, results);
                return results;
            }

            typeName = Namespace + ".SitecoreSettings.Config," + Namespace + ".SitecoreSettings";
            type = Type.GetType(typeName);

            if (type != null)
            {
                results = (ISettings)Activator.CreateInstance(type, cache);
                _settings = results;
                cache.AddCache(Namespace, results);
            }

            return results;
        }
 private void AddCache(object data)
 {
     if (data == null)
     {
         return;
     }
     _cache.RemoveCache(cacheKey);
     _cache.AddCache(cacheKey, data, attribute.CacheDurationInSecond);
 }