// #nullable enable using System; using System.Collections.Generic; using JiShe.CollectBus.Analyzers.Shared; namespace JiShe.CollectBus.IoTDB.Model; public sealed class TableModelSingleMeasuringEntityAccessor3 : ISourceEntityAccessor> { public static string GetSingleColumn_Item1(global::JiShe.CollectBus.IoTDB.Model.TableModelSingleMeasuringEntity obj) => obj.SingleColumn.Item1; public static void SetSingleColumn_Item1(global::JiShe.CollectBus.IoTDB.Model.TableModelSingleMeasuringEntity obj, string value) => obj.SingleColumn = (value, obj.SingleColumn.Item2); public static T GetSingleColumn_Item2(global::JiShe.CollectBus.IoTDB.Model.TableModelSingleMeasuringEntity obj) => obj.SingleColumn.Item2; public static void SetSingleColumn_Item2(global::JiShe.CollectBus.IoTDB.Model.TableModelSingleMeasuringEntity obj, T value) => obj.SingleColumn = (obj.SingleColumn.Item1, value); public static string GetSystemName(JiShe.CollectBus.IoTDB.Model.IoTEntity obj) => obj.SystemName; public static void SetSystemName(JiShe.CollectBus.IoTDB.Model.IoTEntity obj, string value) => obj.SystemName = value; public static string GetProjectId(JiShe.CollectBus.IoTDB.Model.IoTEntity obj) => obj.ProjectId; public static void SetProjectId(JiShe.CollectBus.IoTDB.Model.IoTEntity obj, string value) => obj.ProjectId = value; public static string GetDeviceType(JiShe.CollectBus.IoTDB.Model.IoTEntity obj) => obj.DeviceType; public static void SetDeviceType(JiShe.CollectBus.IoTDB.Model.IoTEntity obj, string value) => obj.DeviceType = value; public static string GetDeviceId(JiShe.CollectBus.IoTDB.Model.IoTEntity obj) => obj.DeviceId; public static void SetDeviceId(JiShe.CollectBus.IoTDB.Model.IoTEntity obj, string value) => obj.DeviceId = value; public static long GetTimestamps(JiShe.CollectBus.IoTDB.Model.IoTEntity obj) => obj.Timestamps; public static void SetTimestamps(JiShe.CollectBus.IoTDB.Model.IoTEntity obj, long value) => obj.Timestamps = value; public List PropertyList { get; } = new List() { "SingleColumn.Item1","SingleColumn.Item2","SystemName","ProjectId","DeviceType","DeviceId","Timestamps" }; public object GetPropertyValue(JiShe.CollectBus.IoTDB.Model.TableModelSingleMeasuringEntity targetEntity, string propertyName) { return propertyName switch { "SingleColumn.Item1" => GetSingleColumn_Item1(targetEntity), "SingleColumn.Item2" => GetSingleColumn_Item2(targetEntity), "SystemName" => GetSystemName(targetEntity), "ProjectId" => GetProjectId(targetEntity), "DeviceType" => GetDeviceType(targetEntity), "DeviceId" => GetDeviceId(targetEntity), "Timestamps" => GetTimestamps(targetEntity), _ => throw new ArgumentException($"Unknown property: {propertyName}") }; } public void SetPropertyValue(JiShe.CollectBus.IoTDB.Model.TableModelSingleMeasuringEntity targetEntity, string propertyName, object value) { switch (propertyName) { case "SingleColumn.Item1": SetSingleColumn_Item1( targetEntity, (string)value); break; case "SingleColumn.Item2": SetSingleColumn_Item2( targetEntity, (T)value); break; case "SystemName": SetSystemName( targetEntity, (string)value); break; case "ProjectId": SetProjectId( targetEntity, (string)value); break; case "DeviceType": SetDeviceType( targetEntity, (string)value); break; case "DeviceId": SetDeviceId( targetEntity, (string)value); break; case "Timestamps": SetTimestamps( targetEntity, (long)value); break; default: throw new ArgumentException($"Unknown property: {propertyName}"); } } }