浏览代码

完善注释及说明文档

tags/v2.6.2
yedajiang44 2 年前
父节点
当前提交
4e9d80734d
共有 2 个文件被更改,包括 12 次插入0 次删除
  1. +1
    -0
      README.md
  2. +11
    -0
      src/JT808.Protocol.Test/JT808SerializerTest.cs

+ 1
- 0
README.md 查看文件

@@ -386,6 +386,7 @@ JT808Serializer DT2JT808Serializer = new JT808Serializer(DT2JT808Config);
注意事项:

- 默认缓存超时时间为5分钟
- 如果合并且反序列化成功则[JT808Package](src/JT808.Protocol//JT808Package.cs)的`Bodies`不为空,反之亦然
- 超时计时为收到指定终端的指定消息id第一包开始,期间如果收到所有分包数据,在收到最后一个分包时自动反序列化,如果期间未收到所有分包数据,则后续将无法合并出完整的数据并反序列化
- 如有特殊需求请重写[默认实现](src/JT808.Protocol/Internal/DefaultMerger.cs)或自行实现[接口](src/JT808.Protocol/Interfaces/IMerger.cs)并手动设置[全局配置](src/JT808.Protocol/Interfaces/GlobalConfigBase.cs#L130)的`Jt808PackageMerger`属性



+ 11
- 0
src/JT808.Protocol.Test/JT808SerializerTest.cs 查看文件

@@ -68,6 +68,11 @@ namespace JT808.Protocol.Test
if (i == array.Length)
{
Assert.NotNull(package.Bodies);
//分包合并成功并获取消息体进行处理
if (package.Bodies is JT808_0x0104 _0x0104 && _0x0104.AnswerParamsCount > 0)
{
Assert.NotEmpty(_0x0104.ParamList);
}
}
else
{
@@ -82,6 +87,11 @@ namespace JT808.Protocol.Test
if (i == 0)
{
Assert.NotNull(package.Bodies);
//分包合并成功并获取消息体进行处理
if (package.Bodies is JT808_0x0104 _0x0104 && _0x0104.AnswerParamsCount > 0)
{
Assert.NotEmpty(_0x0104.ParamList);
}
}
else
{
@@ -97,6 +107,7 @@ namespace JT808.Protocol.Test
{
Thread.Sleep(TimeSpan.FromSeconds(config.AutoMergeTimeoutSecond + 1));
}
//由于超时导致合并分包失败,且package.Bodies为null
Assert.Null(package.Bodies);
}
}


正在加载...
取消
保存