Exemplo n.º 1
0
        public void ExtractDataFromAllSubFolders(string folder)
        {
            List <CarModelProperties> carModelsProperties = new List <CarModelProperties>();
            DirectoryInfo             parentDirectoryInfo = new DirectoryInfo(folder);

            foreach (DirectoryInfo directory in parentDirectoryInfo.GetDirectories())
            {
                var tyreCompounds = _tyreOperationalRangeExtractor.ExtractFromFolder(directory.FullName);
                if (tyreCompounds.Count == 0)
                {
                    continue;
                }

                carModelsProperties.Add(new CarModelProperties()
                {
                    Name = FormatACName(directory.Name),
                    TyreCompoundsProperties = tyreCompounds
                });
            }

            DataSourceProperties acProperties = new DataSourceProperties()
            {
                CarModelsProperties = carModelsProperties,
                SourceName          = "AC_DEFAULT",
                ContainsRearTyres   = true
            };
            var xmlSerializer = new XmlSerializer(typeof(DataSourceProperties));
            var fileName      = Path.Combine(folder, "AcTyreProperties.xml");

            using (FileStream file = File.Exists(fileName) ? File.Open(fileName, FileMode.Truncate) : File.Create(fileName))
            {
                xmlSerializer.Serialize(file, acProperties);
            }
        }
Exemplo n.º 2
0
        public void SaveDataSourceProperties(DataSourceProperties properties)
        {
            Directory.CreateDirectory(OverridingPath);
            string path = Path.Combine(OverridingPath, properties.SourceName + FileSuffix);

            using (FileStream file = File.Exists(path) ? File.Open(path, FileMode.Truncate) : File.Create(path))
            {
                _xmlSerializer.Serialize(file, properties);
            }
        }
Exemplo n.º 3
0
        public DataSourceProperties GetDataSourceProperties(string sourceName)
        {
            string primaryFilePath = System.IO.Path.Combine(Path, sourceName + FileSuffix);
            DataSourceProperties baseProperties = File.Exists(primaryFilePath) ? LoadDataSourceProperties(primaryFilePath) : new DataSourceProperties()
            {
                SourceName = sourceName, ContainsRearTyres = true
            };

            return(baseProperties);
        }
Exemplo n.º 4
0
        public DataSourceProperties GetDataSourcePropertiesAsync(string sourceName)
        {
            string primaryFilePath = Path.Combine(PrimaryPath, sourceName + FileSuffix);

            DataSourceProperties baseProperties = File.Exists(primaryFilePath) ? LoadDataSourceProperties(primaryFilePath) : new DataSourceProperties()
            {
                SourceName = sourceName
            };

            string secondaryPath = Path.Combine(OverridingPath, sourceName + FileSuffix);

            if (File.Exists(secondaryPath))
            {
                baseProperties.OverrideWith(LoadDataSourceProperties(secondaryPath));
            }

            return(baseProperties);
        }
Exemplo n.º 5
0
 public void SaveDataSourceProperties(DataSourceProperties dataSourceProperties)
 {
     _cachedProperties.AddOrUpdate(dataSourceProperties.SourceName, dataSourceProperties, (x, y) => dataSourceProperties);
     _simSettingsLoader.SaveDataSourceProperties(dataSourceProperties);
 }