/// <summary> /// Обновляет данные пользователя о ПСН логе /// </summary> /// <param name="psnDataCustomConfigurationId">Идентификатор записи, которую необходимо обновить</param> /// <param name="setPsnConfigruationId">Новое значение идентификатора пользовательской конфигурации ПСН</param> /// <param name="setCustomLogName">Новое пользовательское название лога</param> public void Update(IIdentifier psnDataCustomConfigurationId, IIdentifier setPsnConfigruationId, string setCustomLogName) { var customConfig = _customConfigs.First(cc => cc.Id.IdentyString == psnDataCustomConfigurationId.IdentyString); customConfig.SetPsnConfigurationId(setPsnConfigruationId); customConfig.SetCustomLogName(setCustomLogName); _subStorage.Update(psnDataCustomConfigurationId, setPsnConfigruationId, setCustomLogName); }
public void Update(IPsnConfiguration psnConfig, string customName) { // TODO: improve threading // Предполагается, что метод вызывается из потока UI _psnConfiguration = psnConfig; _psnDataCustomConfigration.SetPsnConfigurationId(new IdentifierStringToLowerBased(_psnConfiguration.Id.ToString().ToLower())); _psnDataCustomConfigration.SetCustomLogName(customName); _bworker.AddToQueueAndWaitExecution(() => { _psnDataCustomConfigurationStorage.Update(_psnDataCustomConfigration.Id, new IdentifierStringToLowerBased(_psnConfiguration.Id.ToString().ToLower()), customName); _psnConfigurationLowLevel = _psnProtocolStorage.StoredItems.First(lowConfig => lowConfig.Id.IdentyString == _psnConfiguration.Id.ToString().ToLower()); }); RebuildMetersUnsafe(); }