Ejemplo n.º 1
0
        /// <summary>
        /// Entry point.
        /// </summary>
        /// <param name="args">Program arguments.</param>
        public static void Main(string[] args)
        {
            ProximaCore.Init();

            AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;

            _textLogger     = new TextLogger(LogsDirectory);
            _consoleManager = new ColorfulConsoleManager(ApplicationName);
            _configManager  = new ConfigManager(ConfigFilename);
            _ficsCore       = new FICSCore(_consoleManager, _configManager, _textLogger);

            _ficsCore.Run();

            while (true)
            {
                var text = Console.ReadLine();
                if (text != null)
                {
                    if (text.Contains("quit"))
                    {
                        break;
                    }

                    _ficsCore.Send(text);
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="FICSCore"/> class.
        /// </summary>
        /// <param name="consoleManager">The console manager.</param>
        /// <param name="configManager">The configuration manager.</param>
        /// <param name="textLogger">The text logger.</param>
        public FICSCore(ColorfulConsoleManager consoleManager, ConfigManager configManager, TextLogger textLogger)
        {
            _consoleManager = consoleManager;
            _configManager  = configManager;
            _textLogger     = textLogger;

            _ficsClient = new FICSClient(_configManager);
            _ficsClient.OnDataReceive += FicsClient_OnDataReceive;
            _ficsClient.OnDataSend    += FicsClient_OnDataSend;

            ChangeMode(FICSModeType.Auth);
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="ConsoleManager"/> class.
        /// </summary>
        /// <param name="commandsManager">The commands manager instance.</param>
        /// <param name="appName">The application name (to display in console header).</param>
        public ConsoleManager(CommandsManager commandsManager, string appName)
        {
            Console.OutputEncoding = Encoding.UTF8;

            _commandsManager = commandsManager;
            _consoleLoop     = new Task(Loop);

            _colorfulConsole = new ColorfulConsoleManager(appName);
            _loopRunning     = false;

            SetCommandHandlers();
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Entry point.
        /// </summary>
        /// <param name="args">Program arguments.</param>
        public static void Main(string[] args)
        {
            _textLogger = new TextLogger(LogsDirectory);
            AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;

            ProximaCore.Init();

            var consoleManager = new ColorfulConsoleManager(ApplicationName);
            var configManager  = new ConfigManager(ConfigFilename);

            var ficsCore = new FICSCore(consoleManager, configManager, _textLogger);

            ficsCore.Run();

            while (!Console.ReadLine().Contains("quit"))
            {
                ;
            }
        }