//
#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 PropertyNameList { 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}");
}
}
}