使用idl文件,定义数据帧、文件帧、数据和文件一体帧(支持多个消息+多个文件)。在实际业务开发时,可以根据需要进行扩展。
1、数据帧idl
完整数据帧(不分帧,最大不超过2G)
module DataFrame
{
typedef sequence<octet> OctetSeq;
#pragma DCPS_DATA_TYPE "DataFrame::BigData"
struct BigData
{
string srcNode; //源节点
string msgId; //消息唯一Id
unsigned long length;
OctetSeq content;
unsigned long seq; //序列号<99999999,到达后从心开始
unsigned long beginTime; //消息的发送时间
};
};
2、文件idl
完整文件帧()
module FileFrame
{
typedef sequence<octet> OctetSeq;
typedef struct struct_file{
string name; //文件名
string desc; //文件描述
string ext; //文件扩展名
OctetSeq content; //文件内容,二进制方式
string createTime;
}FILE;
typedef sequen