private static void BuildReadme(IList <Package> packages, IList <Sync> syncList) { _logger.Information("Building Readme ..."); int packageCnt = 0; var builder = new StringBuilder(32727); var outputPath = "KrustWB3.readme.txt"; foreach (var package in packages) { ProgressBar.DrawProgressBar("BuildReadme ", packageCnt++, packages.Count); builder.AppendLine($"{package.Path}"); builder.AppendLine($"{new string('=', package.Path.Length)}"); builder.AppendLine($"Category: [{package.Category}]"); builder.AppendLine($"Source {package.Source}"); builder.AppendLine($"{package.Description}"); builder.AppendLine($""); } syncList.Add(new Sync { PackageContentBasePath = "KrustWB3.readme.txt", SyncType = SyncType.SourceToTarget, FileType = FileType.File, SourcePath = outputPath, TargetPath = outputPath }); FileHandlerFactory.AddCustomFileHandler(outputPath, new InmemoryFileHandler(outputPath, builder.ToString(), new Attributes((byte)0x00))); ProgressBar.ClearProgressBar(); //_logger.Information("Build Readme done!"); }
private static void BuildUserStartup(IList <Config> configs, IList <Sync> syncList) { _logger.Information("Building user-startup ..."); var configCnt = 0; var builder = new StringBuilder(32727); var path = "user-startup"; var innerPath = "s\\user-startup"; foreach (var config in configs) { configCnt++; var packageCnt = 0; var packages = GetIncludedPackages(config); foreach (var package in packages) { ProgressBar.DrawProgressBar($"Build user-startup {configCnt}", packageCnt++, packages.Count); var packagFolderBasePath = _pathService.Combine(config.SourceBasePath, package.Path, ""); using (var fileHandler = FileHandlerFactory.Create(_logger, packagFolderBasePath)) { if (fileHandler.FileExists(path)) { var userstartup = fileHandler.FileReadAllText(path); if (userstartup.Contains(Environment.NewLine)) { _logger.Warning($"user-starttup for {package.Path} has incorrect NewLine! Correct NewLine is '\\n'"); userstartup = userstartup.Replace(Environment.NewLine, "\n"); } builder.Append(userstartup); if (userstartup.EndsWith('\n') == false) { builder.Append("\n"); } builder.Append("\n"); } } } } syncList.Add(new Sync { PackageContentBasePath = path, SyncType = SyncType.SourceToTarget, FileType = FileType.File, SourcePath = innerPath, TargetPath = innerPath }); var str = builder.ToString(); FileHandlerFactory.AddCustomFileHandler(path, new InmemoryFileHandler(innerPath, str, new Attributes((byte)0x40))); // 0x40 = S ProgressBar.ClearProgressBar(); //_logger.Information("Build user-startup done!"); }