Beispiel #1
0
 public void Execute(ISisulizerFile sisulizerFile, CommonExportOptions exportOptions)
 {
     if (exportOptions is XmlExportOptions xmlExportOptions)
     {
         File.WriteAllText(xmlExportOptions.OutputFilename, this.ToXml(sisulizerFile));
     }
 }
 public void Execute(ISisulizerFile sisulizerFile, CommonExportOptions exportOptions)
 {
     if (exportOptions is CsvExportOptions csvExportOptions)
     {
         File.WriteAllText(csvExportOptions.OutputFilename, this.ToCsv(sisulizerFile));
     }
 }
Beispiel #3
0
        // ToDo: optional mittels Parameter das Herunterbrechen in einzelne Projekte unterdrücken (Ausgabe nur für die gesamte Datei)
        // ToDo: optional mittels Parameter die Ausgabe nur für bestimmte Sprachen beschränken
        static void Main(string[] args)
        {
            var invokedVerb = string.Empty;
            CommonExportOptions invokedVerbOptions = null;
            var options = new Options();

            if (Parser.Default.ParseArguments(
                    args,
                    options,
                    (verb, verbOptions) =>
            {
                invokedVerb = verb;
                invokedVerbOptions = verbOptions as CommonExportOptions;
            }))
            {
            }
            else
            {
                Environment.ExitCode = Parser.DefaultExitCodeFail;
                return;
            }

            var filename = invokedVerbOptions.SisulizerProjectFileName;

            if (!File.Exists(filename))
            {
                Console.WriteLine($"Specified filename [{filename}] not found.");
                Environment.ExitCode = Parser.DefaultExitCodeFail;
                return;
            }

            var sisulizerFile = new SisulizerFile(filename, invokedVerbOptions);

            if (invokedVerbOptions.Verbose)
            {
                Console.WriteLine($"Total projects in file: {sisulizerFile.Projects.Count()}");
            }

            foreach (var exportPlugIn in PlugInManager.Instance.ExportPlugIns.Where(x => string.Equals(x.PlugInId, invokedVerb, StringComparison.OrdinalIgnoreCase)))
            {
                exportPlugIn.Execute(sisulizerFile, invokedVerbOptions);
            }
        }
Beispiel #4
0
 public SisulizerFile(Stream fileStream, CommonExportOptions options)
 {
     this.options = options;
     this.ParseStream(fileStream);
 }
Beispiel #5
0
 public SisulizerFile(string fileName, CommonExportOptions options)
 {
     this.FileName = fileName;
     this.options  = options;
     this.ParseFile();
 }