Ejemplo n.º 1
0
        public static StorageConfiguration GetConfiguration(bool forceReload)
        {
            if (!forceReload)
            {
                lock (_syncLock)
                {
                    if (_storageConfigurationCache != null && _storageConfigurationCacheTime > Environment.TickCount - _storageConfigurationCacheExpiry)
                    {
                        return(_storageConfigurationCache.Clone());
                    }
                }
            }

            StorageConfiguration configuration = null;

            Platform.GetService <IStorageConfiguration>(s =>
            {
                configuration = s.GetConfiguration(new GetStorageConfigurationRequest()).Configuration;
                if (configuration != null)
                {
                    lock (_syncLock)
                    {
                        _storageConfigurationCache     = configuration.Clone();
                        _storageConfigurationCacheTime = Environment.TickCount;
                    }
                }
            });
            return(configuration);
        }