refactor: DataHandleAdapter

This commit is contained in:
Diego
2025-03-27 17:46:53 +08:00
parent 5f41371bdb
commit e9b1720e98
2 changed files with 8 additions and 4 deletions

View File

@@ -115,14 +115,16 @@ public class DeviceSingleStreamDataHandleAdapter<TRequest> : CustomDataHandlingA
}
else if (result == FilterResult.GoOn)
{
byteBlock.Position = pos + request.BodyLength + request.HeaderLength;
var addLen = request.HeaderLength + request.BodyLength;
byteBlock.Position = pos + (addLen > 0 ? addLen : 1);
Logger?.Trace($"{ToString()}-{request?.ToString()}");
request.OperCode = -1;
SetResult(request);
}
else if (result == FilterResult.Success)
{
byteBlock.Position = request.HeaderLength + request.BodyLength + pos;
var addLen = request.HeaderLength + request.BodyLength;
byteBlock.Position = pos + (addLen > 0 ? addLen : 1);
}
return result;
}

View File

@@ -116,7 +116,8 @@ public class DeviceUdpDataHandleAdapter<TRequest> : UdpDataHandlingAdapter where
}
else if (result == FilterResult.GoOn)
{
byteBlock.Position = pos + request.BodyLength + request.HeaderLength;
var addLen = request.HeaderLength + request.BodyLength;
byteBlock.Position = pos + (addLen > 0 ? addLen : 1);
Logger?.Trace($"{ToString()}-{request?.ToString()}");
request.OperCode = -1;
if ((Owner as IClientChannel)?.WaitHandlePool?.TryGetDataAsync(request.Sign, out var waitDataAsync) == true)
@@ -126,7 +127,8 @@ public class DeviceUdpDataHandleAdapter<TRequest> : UdpDataHandlingAdapter where
}
else if (result == FilterResult.Success)
{
byteBlock.Position = request.HeaderLength + request.BodyLength + pos;
var addLen = request.HeaderLength + request.BodyLength;
byteBlock.Position = pos + (addLen > 0 ? addLen : 1);
await GoReceived(remoteEndPoint, null, request).ConfigureAwait(false);
}
return;