public static ParachuteSettings GetSettings(string[] args)
        {
            var parser = new CommandLineArgumentManager(args);

            var settings = parser.ParseSettings();

            return(settings);
        }
示例#2
0
        public void Pass_Short_Database_Argument_Should_Return_Value()
        {
            var args     = new[] { "-d", "DATABASE" };
            var ap       = new CommandLineArgumentManager(args);
            var settings = ap.ParseSettings();

            Assert.IsNotNull(settings);
            Assert.AreEqual("DATABASE", settings.Database);
        }
示例#3
0
        public void Pass_Short_Server_Argument_Should_Return_Value()
        {
            var args     = new[] { "-s", "SERVERNAME" };
            var ap       = new CommandLineArgumentManager(args);
            var settings = ap.ParseSettings();

            Assert.IsNotNull(settings);
            Assert.AreEqual("SERVERNAME", settings.Server);
        }
示例#4
0
        public void Pass_Short_Source_Argument_Should_Return_Value()
        {
            var args     = new[] { "-f", "C:\\Path\\To\\Files\\" };
            var ap       = new CommandLineArgumentManager(args);
            var settings = ap.ParseSettings();

            Assert.IsNotNull(settings);
            Assert.AreEqual("C:\\Path\\To\\Files\\", settings.ConfigFilePath);
        }
示例#5
0
        public void Pass_Setup_Argument_Should_Return_True()
        {
            var args     = new[] { "--setup" };
            var ap       = new CommandLineArgumentManager(args);
            var settings = ap.ParseSettings();

            Assert.IsNotNull(settings);
            Assert.AreEqual(true, settings.SetupDatabase);
        }
示例#6
0
        public void Pass_Short_ConnectionString_Argument_Should_Return_Value()
        {
            var args     = new[] { "-c", "CONNSTR" };
            var ap       = new CommandLineArgumentManager(args);
            var settings = ap.ParseSettings();

            Assert.IsNotNull(settings);
            Assert.AreEqual("CONNSTR", settings.ConnectionString);
        }
示例#7
0
        public void Pass_Short_Password_Argument_Should_Return_Value()
        {
            var args     = new[] { "-p", "PASSWORD" };
            var ap       = new CommandLineArgumentManager(args);
            var settings = ap.ParseSettings();

            Assert.IsNotNull(settings);
            Assert.AreEqual("PASSWORD", settings.Password);
        }
示例#8
0
        public void Pass_Short_Username_Argument_Should_Return_Value()
        {
            var args     = new[] { "-u", "USERNAME" };
            var ap       = new CommandLineArgumentManager(args);
            var settings = ap.ParseSettings();

            Assert.IsNotNull(settings);
            Assert.AreEqual("USERNAME", settings.Username);
        }
示例#9
0
        private void LogInitialConfiguration()
        {
            CommandLineArgumentManager am = CommandLineArgumentManager.Instance();

            log.Debug("Initial configuration:");
            log.Debug("InputFile : " + am.InputFile);
            log.Debug("SpeedPercentage : " + am.SpeedPercentage.ToString());
            log.Debug("StretchImage : " + am.StretchImage.ToString());
            log.Debug("HideExplorer : " + am.HideExplorer.ToString());
        }
示例#10
0
 private void SupervisorUserInterface_Load(object sender, EventArgs e)
 {
     if (CommandLineArgumentManager.Instance().HideExplorer || !m_PrefManager.ExplorerVisible)
     {
         CollapseExplorer();
     }
     else
     {
         ExpandExplorer(true);
     }
     m_bInitialized = true;
 }
示例#11
0
        private void IdleDetector(object sender, EventArgs e)
        {
            log.Debug("Application is idle in ScreenManagerUserInterface.");

            // This is a one time only routine.
            Application.Idle -= new EventHandler(this.IdleDetector);

            // Launch file.
            string filePath = CommandLineArgumentManager.Instance().InputFile;

            if (filePath != null && File.Exists(filePath))
            {
                m_ScreenManagerUIContainer.DropLoadMovie(filePath, -1);
            }
        }
示例#12
0
        public void Prepare()
        {
            // Prepare the right strings before we open the curtains.
            log.Debug("Setting current ui culture.");
            Thread.CurrentThread.CurrentUICulture = PreferencesManager.Instance().GetSupportedCulture();
            RefreshUICulture();
            CheckLanguageMenu();
            CheckTimecodeMenu();

            m_ScreenManager.Prepare();
            LogInitialConfiguration();
            if (CommandLineArgumentManager.Instance().InputFile != null)
            {
                m_ScreenManager.PrepareScreen();
            }
        }
示例#13
0
        internal static void Main(string[] args)
        {
            _appConfigurationManager    = new AppConfigurationManager();
            _commandLineArgumentManager = new CommandLineArgumentManager(_appConfigurationManager.UseCommandLineArgs, args);

            string logFile = _appConfigurationManager.GetLogFile();

            Log.Logger = new LoggerConfiguration()
                         .WriteTo.Console(LogEventLevel.Verbose)
                         //.WriteTo.File(logFile, rollingInterval: RollingInterval.Day, restrictedToMinimumLevel: LogEventLevel.Verbose)
                         .CreateLogger();

            _logger = Log.Logger;

            InitialiseContainer();
            ISimulationTypeManager simulationTypeManager = _container.Resolve <ISimulationTypeManager>();

            simulationTypeManager.InitialiseManager(_commandLineArgumentManager.GetSimulationType());

            if (simulationTypeManager.SimulationManager == null)
            {
                _logger.Fatal("Unknown simulation type supplied.  Unable to proceed...");
                return;
            }

            simulationTypeManager.SimulationManager.Start();

            IAccount primaryAccount = _appConfigurationManager.GetAccount();
            ISimulationParameters simulationParameters = _container.Resolve <ISimulationParameters>();

            _logger.Information("Portfolio Simulation");
            _logger.Information("====================");
            _logger.Information($"Initial account: Currency: {primaryAccount.Currency} Balance: {primaryAccount.Balance}");
            _logger.Information($"Simulation Period: {simulationParameters.SimulationStartDate.ToShortDateString()} - {simulationParameters.SimulationEndDate.ToShortDateString()}");
            _logger.Information($"Simulation Type: {simulationParameters.SimulationType}");

            _logger.Information("Simulation starting...");
            var notificationManager = _container.Resolve <INotificationManager>();

            notificationManager.SimulationEnded += (s, e) => _simulationComplete = true;
            notificationManager.TriggerSimulationStart();

            while (!_simulationComplete)
            {
                System.Threading.Thread.Sleep(1000 * 10); // sleep for 10 seconds
            }
        }
示例#14
0
        public RootKernel()
        {
            // Store Kinovea's version from the assembly.
            Version v = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;

            PreferencesManager.ReleaseVersion = String.Format("{0}.{1}.{2}", v.Major, v.Minor, v.Build);

            // Set type of release (Experimental vs Production)
            PreferencesManager.ExperimentalRelease = true;

            // Display some system infos in the log.
            log.Info(String.Format("Kinovea version : {0}, ({1})", PreferencesManager.ReleaseVersion, PreferencesManager.ExperimentalRelease?"Experimental":"Production"));
            log.Info(".NET Framework Version : " + Environment.Version.ToString());
            log.Info("OS Version : " + System.Environment.OSVersion.ToString());
            log.Info("Primary Screen : " + SystemInformation.PrimaryMonitorSize.ToString());
            log.Info("Virtual Screen : " + SystemInformation.VirtualScreen.ToString());

            // Since it is the very first call, it will both instanciate and import.
            // Previous calls were done on static prioperties, no instanciation.
            PreferencesManager pm = PreferencesManager.Instance();

            // Initialise command line parser and get the arguments.
            CommandLineArgumentManager am = CommandLineArgumentManager.Instance();

            am.InitializeCommandLineParser();
            string[] args = Environment.GetCommandLineArgs();
            am.ParseArguments(args);

            BuildSubTree();
            MainWindow = new KinoveaMainWindow(this);

            log.Debug("Plug sub modules at UI extension points (Menus, ToolBars, StatusBAr, Windows).");
            ExtendMenu(MainWindow.menuStrip);
            ExtendToolBar(MainWindow.toolStrip);
            ExtendStatusBar(MainWindow.statusStrip);
            ExtendUI();

            log.Debug("Register global services offered at Root level.");
            DelegatesPool dp = DelegatesPool.Instance();

            dp.UpdateStatusBar = DoUpdateStatusBar;
            dp.MakeTopMost     = DoMakeTopMost;
        }
示例#15
0
 public void Pass_Help_Argument_Should_Return_Null()
 {
     var args     = new[] { "--help" };
     var ap       = new CommandLineArgumentManager(args);
     var settings = ap.ParseSettings();
 }