【发布时间】:2016-04-22 00:48:10
【问题描述】:
我正在使用支持扩展的 java 和 proto buf 读取 UDP 流。
在任何给定时间,我都可以获得三种不同类型的数据,它们对应于三种不同类型的 proto 文件。
我正在使用
registry.add(CpuUtilization.cpuUtilExt);
registry.add(NpuUtilization.npuExt);
registry.add(Optics.opticsExt);
所有三个 proto 文件都使用下面提到的扩展语法
extend NetworksSensors {
optional PFEHeapInfo pfeHeapInfoExt = 1;
}
extend NetworksSensors {
optional NpuUtilization npuExt = 2;
}
extend NetworksSensors {
optional CpuUtilization cpuUtilExt = 3;
}
我正在做的是创建三个单独的方法,并根据标题字段中的值处理每种类型传感器的数据。
有没有一种方法可以让我根据即将到来的扩展数据来决定调用哪个方法?
可能是描述符中的某些字段可以提供帮助,但我不知道如何使用它。有什么想法吗?
【问题讨论】: