Example #1
0
 /*
  *  Parameters:
  *  Returns: void
  *  Callers:  setModeParameters method
  *  Objective:
  *      find the index of the new value that assigned to the parameter where we changed the mode and update it in SettingsParameter class for this parameter
  */
 private void setParameterIndex(SettingsParameter parameter)
 {
     parameter.index = System.Array.IndexOf(parameter.values, parameter.parameterValue);
 }
 private void LoadSettingsParametersCallback(SettingsParameter settingsParameter)
 {
     this.ExchangeDataManager.InitializeSettingParameter(settingsParameter);
 }
Example #3
0
        public uint this[SettingsParameter key]
        {
            get
            {
                switch (key)
                {
                case SettingsParameter.HeaderTableSize:
                    return(HeaderTableSize);

                case SettingsParameter.EnablePush:
                    return(EnablePush);

                case SettingsParameter.InitialWindowSize:
                    return(InitialWindowSize);

                case SettingsParameter.MaxConcurrentStreams:
                    return(MaxConcurrentStreams);

                case SettingsParameter.MaxFrameSize:
                    return(MaxFrameSize);

                case SettingsParameter.MaxHeaderListSize:
                    return(MaxHeaderListSize);

                default:
                    throw new ArgumentOutOfRangeException(nameof(key), key.ToString());
                }
            }
            set
            {
                switch (key)
                {
                case SettingsParameter.EnablePush:
                    if (value != 0 && value != 1)
                    {
                        throw new ArgumentOutOfRangeException(nameof(value));
                    }
                    _xor_enablePush = value ^ 1;
                    break;

                case SettingsParameter.HeaderTableSize:
                    _xor_headerTableSize = value ^ 4096;
                    break;

                case SettingsParameter.InitialWindowSize:
                    _xor_initialWindowSize = value ^ 65535;
                    break;

                case SettingsParameter.MaxConcurrentStreams:
                    _xor_maxConcurrentStreams = value ^ uint.MaxValue;
                    break;

                case SettingsParameter.MaxFrameSize:
                    if (value < 16384 || value > 16777215)
                    {
                        throw new ArgumentOutOfRangeException(nameof(value));
                    }
                    _xor_maxFrameSize = value ^ 16384;
                    break;

                case SettingsParameter.MaxHeaderListSize:
                    _xor_maxConcurrentStreams = value ^ uint.MaxValue;
                    break;

                default:
                    throw new ArgumentOutOfRangeException(nameof(key), key.ToString());
                }
            }
        }
        public static SettingsParameter LoadSettingsParameter(Guid userId)
        {
            SettingsParameter settingsParameter = new SettingsParameter();
            DealingOrderParameter dealingOrderParameter = new DealingOrderParameter();
            SetValueSetting setValueSetting = new SetValueSetting();
            List<SoundSetting> soundSettings = new List<SoundSetting>();
            List<string> soundKeys = new List<string>();
            try
            {
                using (SqlConnection con = DataAccess.GetInstance().GetSqlConnection())
                {
                    using (SqlCommand command = con.CreateCommand())
                    {
                        command.CommandText = "[dbo].[P_GetSettingParameter]";
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.Add(new SqlParameter("@userID", userId));
                        using (SqlDataReader reader = command.ExecuteReader())
                        {
                            while (reader.Read())
                            {
                                //Guid id = (Guid)reader["Id"];
                                if (settingsParameter.SettingId == Guid.Empty)
                                {
                                    Guid settingId = (Guid)reader["SettingsId"];
                                    settingsParameter.SettingId = settingId;
                                }
                                SettingParameterType SettingType = reader["SettingType"].ConvertToEnumValue<SettingParameterType>();
                                string parameterKey = (string)reader["ParameterKey"];
                                string parameterValue = (string)reader["ParameterValue"];

                                if (SettingType == SettingParameterType.DealingOrderParameter)
                                {
                                    SettingParameterHelper.UpdateSettingValue(dealingOrderParameter, parameterKey, parameterValue);
                                }
                                else if (SettingType == SettingParameterType.SoundParameter)
                                {
                                    SoundSetting setting = new SoundSetting();
                                    SoundType soundType = reader["SoundType"].ConvertToEnumValue<SoundType>();
                                    setting.SoundKey = (SoundOption)Enum.Parse(typeof(SoundOption), parameterKey);
                                    setting.SoundPath = parameterValue;
                                    setting.SoundType = soundType;
                                    soundSettings.Add(setting);
                                    soundKeys.Add(parameterKey);
                                }
                                else if (SettingType == SettingParameterType.SetValueParameter)
                                {
                                    SettingParameterHelper.UpdateSettingValue(setValueSetting, parameterKey, parameterValue);
                                }
                            }
                            reader.NextResult();
                            while (reader.Read())
                            {
                                string soundKey = (string)reader["SoundKey"];
                                if (soundKeys.Contains(soundKey)) continue;
                                SoundType soundType = reader["SoundType"].ConvertToEnumValue<SoundType>();

                                SoundSetting setting = new SoundSetting();

                                setting.SoundKey = (SoundOption)Enum.Parse(typeof(SoundOption), soundKey);
                                setting.SoundPath = string.Empty;
                                setting.SoundType = soundType;
                                soundSettings.Add(setting);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.TraceEvent(TraceEventType.Error, "ExchangeData.LoadSettingsParameter Error:\r\n" + ex.ToString());
            }
            settingsParameter.DealingOrderParameter = dealingOrderParameter;
            settingsParameter.SetValueSetting = setValueSetting;
            settingsParameter.SoundSettings = soundSettings;
            return settingsParameter;
        }