2015-11-25 update 2 continue fix bugs in fboxconnector

This commit is contained in:
parallelbgls@outlook.com
2015-11-25 16:33:48 +08:00
parent a9fbe17654
commit bed2b5248e

View File

@@ -262,6 +262,21 @@ namespace ModBus.Net.FBox
_boxUidSessionId[getBoxUid] = sessionId; _boxUidSessionId[getBoxUid] = sessionId;
} }
var localDataGroups = _boxUidDataGroups[getBoxUid];
lock (_connectionTokenState)
{
foreach (var localDataGroup in localDataGroups)
{
if (!_connectionTokenState.ContainsKey(localDataGroup.Name))
{
_connectionTokenState.Add(localDataGroup.Name, newStatus);
}
else
{
_connectionTokenState[localDataGroup.Name] = newStatus;
}
}
}
_httpClient2[getBoxUid].DefaultRequestHeaders.Remove("X-FBox-Session"); _httpClient2[getBoxUid].DefaultRequestHeaders.Remove("X-FBox-Session");
_httpClient2[getBoxUid].DefaultRequestHeaders.Add("X-FBox-Session", _httpClient2[getBoxUid].DefaultRequestHeaders.Add("X-FBox-Session",
sessionId.ToString()); sessionId.ToString());
@@ -274,7 +289,6 @@ namespace ModBus.Net.FBox
if (newStatus == 1 && IsConnected) if (newStatus == 1 && IsConnected)
{ {
var localDataGroups = _boxUidDataGroups[getBoxUid];
foreach (var localDataGroup in localDataGroups) foreach (var localDataGroup in localDataGroups)
{ {
await await
@@ -284,20 +298,8 @@ namespace ModBus.Net.FBox
} }
else else
{ {
var localDataGroups = _boxUidDataGroups[getBoxUid]; //foreach (var localDataGroup in localDataGroups)
foreach (var localDataGroup in localDataGroups) //{
{
lock (_connectionTokenState)
{
if (!_connectionTokenState.ContainsKey(localDataGroup.Name))
{
_connectionTokenState.Add(localDataGroup.Name, newStatus);
}
else
{
_connectionTokenState[localDataGroup.Name] = newStatus;
}
}
//lock (_machineData) //lock (_machineData)
//{ //{
//if (_machineData.ContainsKey(localDataGroup.Name)) //if (_machineData.ContainsKey(localDataGroup.Name))
@@ -308,7 +310,7 @@ namespace ModBus.Net.FBox
//_httpClient2[getBoxUid].PostAsync( //_httpClient2[getBoxUid].PostAsync(
//"dmon/group/" + localDataGroup.Uid + "/stop", null); //"dmon/group/" + localDataGroup.Uid + "/stop", null);
//} //}
} //}
} }
} }
} }