Esempio n. 1
0
        private static CommonConfigData GetConfig()
        {
            CommonConfigData config = null;
            try
            {
                config = CommonConfigData.FromFile(ApplicationPaths.CommonConfigFile);
            }
            catch (Exception ex)
            {
                MediaCenterEnvironment ev = Application.MediaCenterEnvironment;
                DialogResult r = ev.Dialog(ex.Message + "\n" + Application.CurrentInstance.StringData("ConfigErrorDial"), Application.CurrentInstance.StringData("ConfigErrorCapDial"), DialogButtons.Yes | DialogButtons.No, 600, true);
                if (r == DialogResult.Yes)
                {
                    config = new CommonConfigData(ApplicationPaths.CommonConfigFile);
                    config.Save();
                }
                else
                {
                    Application.ApplicationContext.CloseApplication();

                }
            }

            return config;
        }
        private static CommonConfigData GetConfig()
        {
            CommonConfigData config = null;

            try
            {
                config = CommonConfigData.FromFile(ApplicationPaths.CommonConfigFile);
            }
            catch (Exception ex)
            {
                MediaCenterEnvironment ev = Application.MediaCenterEnvironment;
                DialogResult           r  = ev.Dialog(ex.Message + "\n" + Application.CurrentInstance.StringData("ConfigErrorDial"), Application.CurrentInstance.StringData("ConfigErrorCapDial"), DialogButtons.Yes | DialogButtons.No, 600, true);
                if (r == DialogResult.Yes)
                {
                    config = new CommonConfigData(ApplicationPaths.CommonConfigFile);
                    config.Save();
                }
                else
                {
                    Application.ApplicationContext.CloseApplication();
                }
            }

            return(config);
        }
        public bool ConnectToServer(CommonConfigData config)
        {
            var connected = false;

            if (config.FindServerAutomatically)
            {
                connected = ConnectAutomatically(config.HttpTimeout);
            }
            else
            {
                //server specified
                var retries = 0;
                while (!connected && retries < 3)
                {
                    connected = Kernel.ConnectToServer(config.ServerAddress, config.ServerPort, config.HttpTimeout);
                    if (!connected) {
                        Logger.ReportInfo("Unable to connect to server at {0}. Will retry...", config.ServerAddress);
                        retries++;
                        Thread.Sleep(1500); //give it some time to wake up
                    }
                }

                if (!connected)
                {
                    Logger.ReportWarning("Unable to connect to configured server {0}:{1}. Will try automatic detection", config.ServerAddress, config.ServerPort);
                    connected = ConnectAutomatically(config.HttpTimeout);
                }
            }

            if (connected)
            {
                config.ServerPort = Kernel.ApiClient.ServerApiPort;
                config.Save();

            }

            return connected;
        }