Example #1
0
 /// <summary>
 ///     Individually processes the actions in all of the supplied passes
 /// </summary>
 public void ProcessPasses(PassItems passes)
 {
     foreach (var pass in passes)
     {
         ProcessPass(pass);
     }
 }
Example #2
0
        public static void Main(string[] args)
        {
            var logManager = new LogManager();
            try
            {
                // Initialize Queue List Factory
                FileQueueList.RegisterClass();
                MemoryQueueList.RegisterClass();

                // Initialize Logger Factory
                TextFileLogger.RegisterClass();

                var commandLine = new CommandLineParser(args);
                var config = new ConfigReader(commandLine.ConfigFileName);

                // Initialize Loggers
                logManager.Loggers.Add(new ConsoleLogger {VerboseMode = commandLine.VerboseMode});
                config.GetLoggers(logManager.Loggers);

                logManager.Log("PlayPass Auto Queueing Engine Version {0}", Version());

                // Initialize PlayOn
                var playOn = config.GetPlayOn();
                logManager.LogVerbose("Connecting to {0}:{1}...", playOn.ServerHost, playOn.ServerPort);

                // Hook into XmlRequestEvent for debug logging
                playOn.XmlRequestEvent += logManager.XmlRequestEventHandler;

                // Initialize QueueValidator
                var queueList = config.GetQueueList();
                var queueValidator = config.GetQueueValidator(queueList);

                // Initialize PlayPassProcessor
                var playPass = new PlayPassProcessor(playOn, logManager, queueValidator)
                {
                    QueueMode = commandLine.QueueMode,
                    SkipMode = commandLine.SkipMode
                };

                // Load and process Passes
                var passes = new PassItems();
                config.GetPasses(passes);

                playPass.ProcessPasses(passes);
            }
            catch (Exception ex)
            {
                if (logManager.Loggers.Count == 0)
                {
                    Console.WriteLine("The following exception has occurred:\n   " + ex.Message);
                    if (!(ex is ApplicationException))
                        Console.WriteLine("Stack Trace: " + ex);
                }
                logManager.LogException(ex);
            }
        }
Example #3
0
 public void GetPasses(PassItems passes)
 {
     var passNodes = _config.SelectNodes("playpass/passes/pass");
     if (passNodes == null)
         return;
     foreach (XmlNode passNode in passNodes)
     {
         var pass = new PassItem(
             Util.GetNodeAttributeValue(passNode, "description"),
             (Util.GetNodeAttributeValue(passNode, "enabled", "1") == "1")
             );
         GetPassActions(pass.Actions, passNode);
         passes.Add(pass);
     }
 }
Example #4
0
        public void GetPasses(PassItems passes)
        {
            var passNodes = _config.SelectNodes("playpass/passes/pass");

            if (passNodes == null)
            {
                return;
            }
            foreach (XmlNode passNode in passNodes)
            {
                var pass = new PassItem(
                    Util.GetNodeAttributeValue(passNode, "description"),
                    (Util.GetNodeAttributeValue(passNode, "enabled", "1") == "1")
                    );
                GetPassActions(pass.Actions, passNode);
                passes.Add(pass);
            }
        }
Example #5
0
        public static void Main(string[] args)
        {
            var logManager = new LogManager();

            try
            {
                // Initialize Queue List Factory
                FileQueueList.RegisterClass();
                MemoryQueueList.RegisterClass();

                // Initialize Logger Factory
                TextFileLogger.RegisterClass();

                var commandLine = new CommandLineParser(args);
                var config      = new ConfigReader(commandLine.ConfigFileName);

                // Initialize Loggers
                logManager.Loggers.Add(new ConsoleLogger {
                    VerboseMode = commandLine.VerboseMode
                });
                config.GetLoggers(logManager.Loggers);

                logManager.Log("PlayPass Auto Queueing Engine Version {0}", Version());

                // Initialize PlayOn
                var playOn = config.GetPlayOn();
                logManager.LogVerbose("Connecting to {0}:{1}...", playOn.ServerHost, playOn.ServerPort);

                // Hook into XmlRequestEvent for debug logging
                playOn.XmlRequestEvent += logManager.XmlRequestEventHandler;

                // Initialize QueueValidator
                var queueList      = config.GetQueueList();
                var queueValidator = config.GetQueueValidator(queueList);

                // Initialize PlayPassProcessor
                var playPass = new PlayPassProcessor(playOn, logManager, queueValidator)
                {
                    QueueMode = commandLine.QueueMode,
                    SkipMode  = commandLine.SkipMode
                };

                // Load and process Passes
                var passes = new PassItems();
                config.GetPasses(passes);

                playPass.ProcessPasses(passes);
            }
            catch (Exception ex)
            {
                if (logManager.Loggers.Count == 0)
                {
                    Console.WriteLine("The following exception has occurred:\n   " + ex.Message);
                    if (!(ex is ApplicationException))
                    {
                        Console.WriteLine("Stack Trace: " + ex);
                    }
                }
                logManager.LogException(ex);
            }
        }
Example #6
0
 /// <summary>
 ///     Individually processes the actions in all of the supplied passes
 /// </summary>
 public void ProcessPasses(PassItems passes)
 {
     foreach (var pass in passes)
         ProcessPass(pass);
 }