public async Task Run(TextWriter output) { var rewriters = new SsrsObjectRewriters(Rewriters.ToArray()); log.Info("Collecting objects..."); var items = (await source.Enumerate(filter)).ToArray(); if (Overwrite && BackupTarget != null) { await BackupExistingItems(items.Select(i => i.Path)); } log.Info("Importing data sources..."); foreach (var item in items.OfType <SsrsDataSource>()) { var rewritten = await rewriters.Apply(item); await ImportDataSource(rewritten); } log.Info("Importing datasets..."); foreach (var item in items.OfType <SsrsDataSet>()) { var rewritten = await rewriters.Apply(item); await ImportDataSet(rewritten); } log.Info("Importing reports..."); foreach (var item in items.OfType <SsrsReport>()) { var rewritten = await rewriters.Apply(item); await ImportReport(rewritten); } log.Info("Done."); }
public async Task Run(TextWriter output) { log.Info("Collecting objects..."); var items = await source.Enumerate(filter); foreach (var item in items.OrderBy(i => i.Path)) { output.WriteLine($"Path: {item.Path}"); output.WriteLine($"Type: {item.Type}"); if (item is SsrsDataSource dataSource) { DescribeDataSource(output, dataSource); } if (item is SsrsDataSet dataSet) { DescribeDataSet(output, dataSet); } if (item is SsrsReport report) { DescribeReport(output, report); } output.WriteLine(); } }