示例#1
0
        /// <summary>
        /// Update settings that are configurable in iNet.
        /// Some of these settings can also be changed (temporarily) in Configurator.
        /// </summary>
        /// <param name="config"></param>
        /// <returns></returns>
        private bool UpdateInetSettings(DockingStation config)
        {
            bool modified = false;

            if (DockingStation.Language.Code != config.Language.Code)
            {
                modified             = LogUpdate("Language", DockingStation.Language.Code, config.Language.Code);
                config.Language.Code = DockingStation.Language.Code;
            }

            if (DockingStation.MenuLocked != config.MenuLocked)
            {
                modified          = LogUpdate("MenuLocked", DockingStation.MenuLocked, config.MenuLocked);
                config.MenuLocked = DockingStation.MenuLocked;
            }

            if (DockingStation.UseAudibleAlarm != config.UseAudibleAlarm)
            {
                modified = LogUpdate("UseAudibleAlarm", DockingStation.UseAudibleAlarm, config.UseAudibleAlarm);
                config.UseAudibleAlarm = DockingStation.UseAudibleAlarm;
            }

            if (DockingStation.LogLevel != config.LogLevel)
            {
                modified        = LogUpdate("LogLevel", DockingStation.LogLevel.ToString(), config.LogLevel.ToString());
                config.LogLevel = Log.Level = DockingStation.LogLevel;
            }

            if (DockingStation.LogCapacity != config.LogCapacity)
            {
                modified           = LogUpdate("LogCapacity", DockingStation.LogCapacity, config.LogCapacity);
                config.LogCapacity = Log.Capacity = DockingStation.LogCapacity;
            }

            if (DockingStation.InetUrl != config.InetUrl)
            {
                modified       = LogUpdate("InetUrl", DockingStation.InetUrl, config.InetUrl);
                config.InetUrl = DockingStation.InetUrl;
            }

            if (DockingStation.InetPingInterval != config.InetPingInterval)
            {
                modified = LogUpdate("InetPingInterval", DockingStation.InetPingInterval, config.InetPingInterval);
                config.InetPingInterval = DockingStation.InetPingInterval;
            }

            if (DockingStation.InetTimeoutLow != config.InetTimeoutLow)
            {
                modified = LogUpdate("InetTimeoutLow", DockingStation.InetTimeoutLow, config.InetTimeoutLow);
                config.InetTimeoutLow = DockingStation.InetTimeoutLow;
            }

            if (DockingStation.InetTimeoutMedium != config.InetTimeoutMedium)
            {
                modified = LogUpdate("InetTimeoutMedium", DockingStation.InetTimeoutMedium, config.InetTimeoutMedium);
                config.InetTimeoutMedium = DockingStation.InetTimeoutMedium;
            }

            if (DockingStation.InetTimeoutHigh != config.InetTimeoutHigh)
            {
                modified = LogUpdate("InetTimeoutHigh", DockingStation.InetTimeoutHigh, config.InetTimeoutHigh);
                config.InetTimeoutHigh = DockingStation.InetTimeoutHigh;
            }

            if (DockingStation.InetUserName != config.InetUserName)
            {
                modified            = LogUpdate("InetUserName", DockingStation.InetUserName, config.InetUserName);
                config.InetUserName = DockingStation.InetUserName;
            }

            if (DockingStation.InetPassword != config.InetPassword)
            {
                modified            = LogUpdate("InetPassword", DockingStation.InetPassword, config.InetPassword);
                config.InetPassword = DockingStation.InetPassword;
            }

            if (!DockingStation.TimeZoneInfo.Equals(config.TimeZoneInfo))
            {
                modified            = LogUpdate("TimeZoneInfo", DockingStation.TimeZoneInfo, config.TimeZoneInfo);
                config.TimeZoneInfo = (TimeZoneInfo)DockingStation.TimeZoneInfo.Clone();
            }

            if (DockingStation.PrintPerformedBy != config.PrintPerformedBy)
            {
                modified = LogUpdate("PrintPerformedBy", DockingStation.PrintPerformedBy, config.PrintPerformedBy);
                config.PrintPerformedBy = DockingStation.PrintPerformedBy;
            }

            if (DockingStation.PrintReceivedBy != config.PrintReceivedBy)
            {
                modified = LogUpdate("PrintReceivedBy", DockingStation.PrintReceivedBy, config.PrintReceivedBy);
                config.PrintReceivedBy = DockingStation.PrintReceivedBy;
            }

            if (DockingStation.Port1Restrictions != config.Port1Restrictions)
            {
                modified = LogUpdate("Port1Restrictions", DockingStation.Port1Restrictions, config.Port1Restrictions);
                config.Port1Restrictions = DockingStation.Port1Restrictions;
            }

            if (DockingStation.PurgeAfterBump != config.PurgeAfterBump)
            {
                modified = LogUpdate("PurgeAfterBump", DockingStation.PurgeAfterBump, config.PurgeAfterBump);
                config.PurgeAfterBump = DockingStation.PurgeAfterBump;
            }

            if (DockingStation.ClearPeaksUponDocking != config.ClearPeaksUponDocking)
            {
                modified = LogUpdate("ClearPeaksUponDocking", DockingStation.ClearPeaksUponDocking, config.ClearPeaksUponDocking);
                config.ClearPeaksUponDocking = DockingStation.ClearPeaksUponDocking;
            }

            if (DockingStation.SingleSensorMode != config.SingleSensorMode)
            {
                modified = LogUpdate("SingleSensorMode", DockingStation.SingleSensorMode, config.SingleSensorMode);
                config.SingleSensorMode = DockingStation.SingleSensorMode;
            }

            if (DockingStation.UseExpiredCylinders != config.UseExpiredCylinders)
            {
                modified = LogUpdate("UseExpiredCylinders", DockingStation.UseExpiredCylinders, config.UseExpiredCylinders);
                config.UseExpiredCylinders = DockingStation.UseExpiredCylinders;
            }

            if (DockingStation.CombustibleBumpTestGas != config.CombustibleBumpTestGas)
            {
                modified = LogUpdate("CombustibleBumpTestGas", DockingStation.CombustibleBumpTestGas, config.CombustibleBumpTestGas);
                config.CombustibleBumpTestGas = DockingStation.CombustibleBumpTestGas;
            }

            if (DockingStation.SpanReserveThreshold != config.SpanReserveThreshold)
            {
                modified = LogUpdate("SpanReserveThreshold", DockingStation.SpanReserveThreshold, config.SpanReserveThreshold);
                config.SpanReserveThreshold = DockingStation.SpanReserveThreshold;
            }

            if (DockingStation.StopOnFailedBumpTest != config.StopOnFailedBumpTest)
            {
                modified = LogUpdate("StopOnFailedBumpTest", DockingStation.StopOnFailedBumpTest, config.StopOnFailedBumpTest);
                config.StopOnFailedBumpTest = DockingStation.StopOnFailedBumpTest;
            }

            if (DockingStation.UpgradeOnErrorFail != config.UpgradeOnErrorFail)
            {
                modified = LogUpdate("UpgradeOnErrorFail", DockingStation.UpgradeOnErrorFail, config.UpgradeOnErrorFail);
                config.UpgradeOnErrorFail = DockingStation.UpgradeOnErrorFail;

                //AJAY: INS-8380 Service accounts need to perform auto-upgrade on instruments even in error/fail state - DSX
                //If service account enabled UpgradeOnErrorFail, event priority needs to be changed for service
                //If service account disabled UpgradeOnErrorFail, we can continue to have customer's event priority.
                if (DockingStation.UpgradeOnErrorFail)
                {
                    EventCode.SetEventPriorityForService();
                }
                else
                {
                    EventCode.SetEventPriorityForCustomers();
                }
            }

            return(modified);
        }