public static DevicePayload FromDevice(Device device) { var item = new DevicePayload(); ThingPayload.CopyFromThing(item, device); LogicableItemUtils.CopyFromLogicable(item, device); return(item); }
public static Dictionary <string, LogicValuePayload> GetLogicValues(ILogicable logicable) { var logicValues = new Dictionary <string, LogicValuePayload>(); foreach (LogicType logicType in Enum.GetValues(typeof(LogicType))) { if (logicable.CanLogicRead(logicType)) { logicValues.Add(logicType.ToString(), LogicableItemUtils.GetLogicValue(logicable, logicType)); } } return(logicValues); }
public static void CopyFromLogicable(ILogicablePayload item, ILogicable logicable) { item.displayName = logicable.DisplayName; item.logicTypes = LogicableItemUtils.GetLogicValues(logicable); item.slotValues = LogicableItemUtils.GetSlotValues(logicable); }