refactor: add error handling for cases where type isn't found

This commit is contained in:
Andrew Welker
2022-09-02 15:00:00 -06:00
parent 1b9f16ea74
commit 9b2611be02
2 changed files with 13 additions and 1 deletions

View File

@@ -219,6 +219,11 @@ namespace PepperDash.Essentials
var panel = GetPanelForType(dc.Type, comm.IpIdInt, props.ProjectName); var panel = GetPanelForType(dc.Type, comm.IpIdInt, props.ProjectName);
if (panel == null)
{
Debug.Console(0, "Unable to create Touchpanel for type {0}. Touchpanel Controller WILL NOT function correctly", dc.Type);
}
Debug.Console(1, "Factory Attempting to create new EssentialsTouchpanelController"); Debug.Console(1, "Factory Attempting to create new EssentialsTouchpanelController");
var panelController = new EssentialsTouchpanelController(dc.Key, dc.Name, panel, props); var panelController = new EssentialsTouchpanelController(dc.Key, dc.Name, panel, props);

View File

@@ -30,6 +30,13 @@ namespace PepperDash.Essentials.Core.UI
protected TouchpanelBase(string key, string name, BasicTriListWithSmartObject panel, CrestronTouchpanelPropertiesConfig config) protected TouchpanelBase(string key, string name, BasicTriListWithSmartObject panel, CrestronTouchpanelPropertiesConfig config)
:base(key, name) :base(key, name)
{ {
if (Panel == null)
{
Debug.Console(0, this, "Panel is not valid. Touchpanel class WILL NOT work correctly");
return;
}
Panel = panel; Panel = panel;
Panel.SigChange += Panel_SigChange; Panel.SigChange += Panel_SigChange;