Esempio n. 1
0
        async Task LaunchDesignerAndSubscribe(PreviewArguments args)
        {
            var client = await GetMessagingService(args);

            var projectId = ProjectIdComputer.IdFor(args.Project);
            var closed    = SubscribeForProjectClosed(client, projectId);

            SubscribeForBuildStarted(client, projectId);
            SubscribeForLog(client, projectId);

            var openArgs = args.Project.ToString().Yield()
                           .Concat(args.Defines.Select(d => "-D" + d))
                           .Concat(args.IsVerboseBuild ? Optional.Some("-v") : Optional.None())
                           .ToArray();

            _fuse.Report.Info("Opening " + string.Join(",", openArgs.Select(a => "'" + a + "'")), ReportTo.LogAndUser);
            _fuse.StartFuse("open", openArgs);
            await closed;
        }