Ejemplo n.º 1
0
        private MaintenanceModeStatus CheckWebConfig(MaintenanceModeStatus status)
        {
            var webConfigSetting = ConfigurationManager.AppSettings["MaintenanceMode"];

            if (webConfigSetting != null)
            {
                if (bool.TryParse(webConfigSetting, out bool mode))
                {
                    status.IsInMaintenanceMode = mode;
                    status.UsingWebConfig      = true;
                }
            }

            return(status);
        }
Ejemplo n.º 2
0
        private MaintenanceModeStatus InitializeStatus()
        {
            MaintenanceModeStatus status = null;

            if (configFilePath != null && File.Exists(configFilePath))
            {
                try
                {
                    XmlSerializer serializer = new XmlSerializer(typeof(MaintenanceModeStatus));
                    string        xml        = File.ReadAllText(configFilePath);
                    using (TextReader reader = new StringReader(xml))
                    {
                        status = (MaintenanceModeStatus)serializer.Deserialize(reader);
                    }
                }
                catch (Exception ex)
                {
                    LogHelper.Warn <MaintenanceMode>("Failed to load maintance mode settings file: {0}", () => ex);
                }
            }

            if (status == null)
            {
                status = new MaintenanceModeStatus
                {
                    IsInMaintenanceMode = false,
                    Settings            = new MaintenanceModeSettings
                    {
                        AllowBackOfficeUsersThrough = false,
                        TemplateName = "MaintenancePage"
                    }
                };
            }

            status = CheckWebConfig(status);

            return(status);
        }
Ejemplo n.º 3
0
 internal void InitializeCurrent()
 {
     this.Status = InitializeStatus();
 }
 public MaintenanceModeResponse(MaintenanceModeStatus status, string scheduledTime, IReadOnlyList <MaintenanceModeActiveProcesses> activeProcesses)
 {
     Status          = status;
     ScheduledTime   = scheduledTime;
     ActiveProcesses = activeProcesses;
 }