Esempio n. 1
0
        public Task Save(string filePath)
        {
            return(Task.Run(() => {
                var eventsSource = new BuildOutputEventsSource();
                var logger = new BinaryLogger {
                    CollectProjectImports = BinaryLogger.ProjectImportsCollectionMode.None,
                    Parameters = filePath,
                    Verbosity = LoggerVerbosity.Diagnostic
                };

                try {
                    logger.Initialize(eventsSource);

                    foreach (var proj in projects)
                    {
                        switch (proj)
                        {
                        case MSBuildOutputProcessor msbop:
                            eventsSource.ProcessFile(proj.FileName);
                            break;

                        case BuildOutputProcessor bop:
                            // FIXME
                            break;

                        default:
                            continue;
                        }
                    }
                } catch (Exception ex) {
                    LoggingService.LogError($"Can't write to {filePath}: {ex.Message})");
                } finally {
                    logger.Shutdown();
                }
            }));
        }
Esempio n. 2
0
 public EventWrapper(BinaryLogger binaryLogger)
 {
     BinaryLogger = binaryLogger;
     BinaryLogger.Initialize(this);
 }
 public override void Initialize(IEventSource eventSource)
 {
     eventSource.ProjectStarted  += ProjectStarted;
     eventSource.ProjectFinished += ProjectFinished;
     _binaryLogger.Initialize(eventSource);
 }