Ejemplo n.º 1
0
        public void UseConfiguration_AddConfiguration_ConfigurationAdded()
        {
            var randomText = Guid.NewGuid().ToString();

            this.Configuration.Add(new PluginConfiguration()
            {
                Id            = Guid.NewGuid(),
                Explanations  = randomText,
                IsActivated   = true,
                IsMandatory   = true,
                Name          = randomText,
                IsRecommended = true,
            });

            using (var stream = new MemoryStream())
                using (var writer = new StreamWriter(stream))
                {
                    this.Configuration.Save(writer);

                    stream.Position = 0;
                    using (var reader = new StreamReader(stream))
                    {
                        var config = PluginsConfigurationFolder.Load(reader);
                        Assert.AreEqual(PLUGINCOUNT + 1, config.Values.Count());
                    }
                }
        }
Ejemplo n.º 2
0
        private PluginsConfigurationFolder GetPluginsConfigurationFolder()
        {
            var appdata  = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
            var fileName = (string.IsNullOrWhiteSpace(ConfigurationManager.AppSettings["pluginSettings"]))
                ? Path.Combine(appdata, @"Probel\nDoctor\Plugins.config")
                : ConfigurationManager.AppSettings["appSettings"];

            return((File.Exists(fileName))
                ? PluginsConfigurationFolder.Load(fileName)
                : PluginsConfigurationFolder.LoadDefault());
        }
Ejemplo n.º 3
0
        public void SaveConfiguration_SaveDefaultData_CanReloadFromStream()
        {
            using (var stream = new MemoryStream())
                using (var writer = new StreamWriter(stream))
                {
                    this.Configuration.Save(writer);

                    stream.Position = 0;
                    using (var reader = new StreamReader(stream))
                    {
                        var folder = PluginsConfigurationFolder.Load(reader);
                        Assert.AreEqual(folder.Values.Count(), PLUGINCOUNT);
                    }
                }
        }
Ejemplo n.º 4
0
        private void Load()
        {
            try
            {
                this.Folder = (!File.Exists(FileName))
                    ? PluginsConfigurationFolder.LoadDefault()
                    : PluginsConfigurationFolder.Load(FileName);

                var dto = Mapper.Map <IEnumerable <PluginConfiguration>, IEnumerable <PluginConfigurationDto> >(this.Folder.Values);
                this.Configurations.Refill(dto);

                if (this.Configurations.Count > 0)
                {
                    this.SelectedConfiguration = this.Configurations[0];
                }
            }
            catch (Exception ex) { this.Logger.Error(ex); }
        }
Ejemplo n.º 5
0
 public MefPluginLoader(string repository, PluginsConfigurationFolder folder)
 {
     this.Repository          = repository;
     this.PluginConfiguration = folder;
 }
Ejemplo n.º 6
0
 public void Setup()
 {
     this.Configuration = PluginsConfigurationFolder.LoadDefault();
 }