aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Modules/Tango.PPC.Synchronization/ViewModels/MainViewVM.cs
blob: d57b2b615a5eaa70cfeb5882e5af2d0902058a8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.PPC.Common;

namespace Tango.PPC.Synchronization.ViewModels
{
    /// <summary>
    /// Represents the main view VM and entry point for <see cref="Synchronization.MyModule"/>.
    /// </summary>
    /// <seealso cref="Tango.PPC.Common.PPCViewModel" />
    public class MainViewVM : PPCViewModel
    {
        /// <summary>
        /// Called when the application has been started
        /// </summary>
        public override void OnApplicationStarted()
        {
            //Start initializing here rather then in the constructor.
        }
    }
}
pan>; namespace Tango.MachineStudio.Publisher.CLI { class Program { private static bool single = false; static void Main(string[] args) { PublisherOptions options = new PublisherOptions(); try { if (!PublisherOptions.Parse(options, args)) { Console.WriteLine(options.GetUsage()); PauseIfDebug(); return; } } catch (Exception ex) { Console.WriteLine(ex.Message); PauseIfDebug(); } if (options.InfoOptions != null) { MachineStudioPublisher p = new MachineStudioPublisher(); String ver = p.GetRemoteVersion(options.InfoOptions.Environment).Result; Console.WriteLine($"Remote Version on {options.InfoOptions.Environment.ToDescription()}: {ver}"); PauseIfDebug(); return; } if (options.PublishOptions == null) { Console.WriteLine("No command specified."); Environment.Exit(-1); return; } MachineStudioPublisher publisher = new MachineStudioPublisher(options.PublishOptions); publisher.PublishProgress += Publisher_PublishProgress; try { publisher.Publish().Wait(); } catch (Exception ex) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(ex.FlattenMessage()); PauseIfDebug(); Environment.Exit(-1); } PauseIfDebug(); } private static void Publisher_PublishProgress(object sender, PublishProgressEventArgs e) { if (e.SingleLineRecommended) { ClearCurrentConsoleLine(); Console.Write(e.Message + " "); single = true; } else { if (single) { Console.WriteLine(); single = false; } Console.WriteLine(e.Message); } } public static void ClearCurrentConsoleLine() { int currentLineCursor = Console.CursorTop; Console.SetCursorPosition(0, Console.CursorTop); } private static void PauseIfDebug() { if (System.Diagnostics.Debugger.IsAttached) Console.ReadLine(); } } }