Exemple #1
0
        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!");
        }
Exemple #2
0
        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!");
        }