using DTS.Common.Enums; using DTS.Common.Enums.Sensors; using DTS.Common.Interface.Sensors; using DTS.Slice.Users.UserSettings; using System; namespace DTS.SensorDB { public class StreamInputSettingDefaults : DTS.Common.Base.BasePropertyChanged, IStreamInputSettingDefaults { private ISensorData _defaultStreamInput; public string UDPAddress { get => _defaultStreamInput.StreamInUDPAddress; set => _defaultStreamInput.StreamInUDPAddress = value; } public bool Validate() { if (!UDPAddress.ToLower().StartsWith("udp") || !Uri.IsWellFormedUriString(UDPAddress, UriKind.Absolute)) { return false; } return true; } public static void CommitChange(StreamInputSettingDefaults settingDefaults, int userID) { TestSetupDefaults.SetUserSetting(userID, PropertyEnums.PropertyIds.DefaultUDPStreamAddress, settingDefaults.UDPAddress); } public static StreamInputSettingDefaults GetStreamInputSettingsDefault(int userID) { var sd = new SensorData() { StreamInUDPAddress = TestSetupDefaults.GetUserSettingValueString(userID, PropertyEnums.PropertyIds.DefaultUDPStreamAddress), }; return new StreamInputSettingDefaults(sd); } public static StreamInputSettingDefaults GetStreamInputSettingsDefault(string user) { var sd = DTS.SensorDB.SensorsCollection.SensorsList.GetSensorBySerialNumber(SensorConstants.TEST_SPECIFIC_STREAM_IN_SERIAL); return new StreamInputSettingDefaults(sd); } private StreamInputSettingDefaults(SensorData sd) { _defaultStreamInput = sd; } } }