public SettingsSingleton(
            IFileSystem fileSystem,
            IGuiSettingsPath guiPaths,
            IGuiSettingsImporter guiSettingsImporter,
            IPipelineSettingsImporter pipelineSettingsImporter,
            IPipelineSettingsPath paths)
        {
            ISynthesisGuiSettings?guiSettings  = null;
            IPipelineSettings?    pipeSettings = null;

            Task.WhenAll(
                Task.Run(async() =>
            {
                if (fileSystem.File.Exists(guiPaths.Path))
                {
                    guiSettings = guiSettingsImporter.Import(guiPaths.Path);
                }
            }),
                Task.Run(async() =>
            {
                if (fileSystem.File.Exists(paths.Path))
                {
                    pipeSettings = pipelineSettingsImporter.Import(paths.Path);
                }
            })
                ).Wait();
            Gui      = guiSettings ?? new SynthesisGuiSettings();
            Pipeline = pipeSettings ?? new PipelineSettings();
        }
Beispiel #2
0
 public PipelineProfilesProvider(
     IFileSystem fileSystem,
     IPipelineSettingsImporter pipelineSettingsImporter,
     IProfileDefinitionPathProvider profileDefinitionPathProvider)
 {
     PipelineSettingsImporter      = pipelineSettingsImporter;
     ProfileDefinitionPathProvider = profileDefinitionPathProvider;
     _fileSystem = fileSystem;
 }