Compare commits

...

2 Commits

Author SHA1 Message Date
Andrew Welker
4d2ce83e75 fix: rework setting custom join data
The previous method was causing an Exception to be thrown if a join didn't exist in the default join map for a device. This exception would prevent other devices from linking to a bridge correctly. This method now allows for join names to not be matched and the method will keep going.
2023-08-21 15:27:25 -06:00
Andrew Welker
da4070bad0 docs: correct PDU Online join name for printing 2023-08-21 15:23:33 -06:00
2 changed files with 8 additions and 6 deletions

View File

@@ -10,7 +10,7 @@ namespace PepperDash.Essentials.Core.Bridges
[JoinName("Online")]
public JoinDataComplete Online = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "PDU Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
new JoinMetadata { Description = "Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
[JoinName("OutletCount")]
public JoinDataComplete OutletCount = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },

View File

@@ -356,16 +356,18 @@ namespace PepperDash.Essentials.Core
{
foreach (var customJoinData in joinData)
{
var join = Joins[customJoinData.Key];
JoinDataComplete join;
if (!Joins.TryGetValue(customJoinData.Key, out join))
{
Debug.Console(2, "No matching key found in join map for: '{0}'", customJoinData.Key);
continue;
}
if (join != null)
{
join.SetCustomJoinData(customJoinData.Value);
}
else
{
Debug.Console(2, "No matching key found in join map for: '{0}'", customJoinData.Key);
}
}
PrintJoinMapInfo();