Esempio n. 1
0
        public CommandSettings(IObjectData data) : base(data)
        {
            // prepare settings
            int         initialSetupLevel = Defaults.InitialSetupLevel;
            TraceLevel  logLevel          = Defaults.LogLevel;
            CultureInfo culture           = null;
            bool        noLogo            = Defaults.NoLogo;

            CredentialSettings[]           credentials            = null;
            SystemSettingsSwitcherSettings systemSettingsSwitcher = null;
            GUISettings   gui   = null;
            ProxySettings proxy = null;

            if (data != null)
            {
                // get settings from data
                initialSetupLevel      = data.GetInt32Value(SettingNames.InitialSetupLevel, Defaults.InitialSetupLevel);
                logLevel               = (TraceLevel)data.GetEnumValue(SettingNames.LogLevel, logLevel, typeof(TraceLevel));
                culture                = data.GetValue(SettingNames.Culture, culture, ExtractCultureInfoValue);
                noLogo                 = data.GetBooleanValue(SettingNames.NoLogo, noLogo);
                credentials            = data.GetObjectArrayValue(SettingNames.Credentials, credentials, CreateCredentialSettings);
                systemSettingsSwitcher = data.GetObjectValue(SettingNames.SystemSettingsSwitcher, systemSettingsSwitcher, this.CreateSystemSettingsSwitcherSettings);
                proxy = data.GetObjectValue(SettingNames.Proxy, proxy, this.CreateProxySettings);
                gui   = data.GetObjectValue(SettingNames.GUI, gui, this.CreateGUISettings);
            }
            if (systemSettingsSwitcher == null)
            {
                // SystemSettingsSwitcher cannot be null
                systemSettingsSwitcher = CreateSystemSettingsSwitcherSettings(null);
            }
            if (proxy == null)
            {
                // Proxy cannot be null
                proxy = CreateProxySettings(null);
            }
            if (gui == null)
            {
                // GUI cannot be null
                gui = CreateGUISettings(null);
            }

            // set settings
            try {
                // may throw ArgumentException for an invalid value
                this.InitialSetupLevel      = initialSetupLevel;
                this.LogLevel               = logLevel;
                this.Culture                = culture;
                this.NoLogo                 = noLogo;
                this.Credentials            = credentials;
                this.SystemSettingsSwitcher = systemSettingsSwitcher;
                this.Proxy = proxy;
                this.GUI   = gui;
            } catch (Exception exception) {
                throw new FormatException(exception.Message);
            }

            return;
        }
Esempio n. 2
0
        public GUISettings(GUISettings src) : base(src)
        {
            // argument checks
            if (src == null)
            {
                throw new ArgumentNullException(nameof(src));
            }

            // clone members
            this.Start          = src.Start;
            this.ResumeTryCount = src.ResumeTryCount;
            this.ResumeDelay    = src.ResumeDelay;
            this.ResumeInterval = src.ResumeInterval;

            return;
        }
Esempio n. 3
0
        public CommandSettings(CommandSettings src) : base(src)
        {
            // argument checks
            if (src == null)
            {
                throw new ArgumentNullException(nameof(src));
            }

            // clone members
            this.InitialSetupLevel      = src.InitialSetupLevel;
            this.LogLevel               = src.LogLevel;
            this.Culture                = src.Culture;
            this.NoLogo                 = src.NoLogo;
            this.Credentials            = Clone(src.Credentials);
            this.SystemSettingsSwitcher = Clone(src.SystemSettingsSwitcher);
            this.Proxy = Clone(src.Proxy);
            this.GUI   = Clone(src.GUI);

            return;
        }