Merge branch 'development' into feature/C3ComIBridgeAdvanced

# Conflicts:
#	essentials-framework/Essentials Core/PepperDashEssentialsBase/Factory/DeviceFactory.cs
This commit is contained in:
Jason T Alborough
2020-04-27 14:09:14 -04:00
72 changed files with 1666 additions and 1248 deletions

View File

@@ -5,10 +5,12 @@ using System.Text;
using Crestron.SimplSharp;
using PepperDash.Core;
using PepperDash.Essentials.Core.Config;
namespace PepperDash.Essentials.Core
{
public class ConsoleCommMockDevice : Device, ICommunicationMonitor
public class ConsoleCommMockDevice : EssentialsDevice, ICommunicationMonitor
{
public IBasicCommunication Communication { get; private set; }
public CommunicationGather PortGather { get; private set; }
@@ -71,4 +73,21 @@ namespace PepperDash.Essentials.Core
}
}
public class ConsoleCommMockDeviceFactory : EssentialsDeviceFactory<ConsoleCommMockDevice>
{
public ConsoleCommMockDeviceFactory()
{
TypeNames = new List<string>() { "commmock" };
}
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.Console(1, "Factory Attempting to create new Comm Mock Device");
var comm = CommFactory.CreateCommForDevice(dc);
var props = Newtonsoft.Json.JsonConvert.DeserializeObject<ConsoleCommMockDevicePropertiesConfig>(
dc.Properties.ToString());
return new ConsoleCommMockDevice(dc.Key, dc.Name, props, comm);
}
}
}

View File

@@ -15,6 +15,7 @@ namespace PepperDash.Essentials.Core
/// <summary>
/// Serves as a generic wrapper class for all styles of IBasicCommuncation ports
/// </summary>
[Description("Generic communication wrapper class for any IBasicCommunication type")]
public class GenericComm : ReconfigurableBridgableDevice
{
EssentialsControlPropertiesConfig PropertiesConfig;