- final BigInteger datapathId) {
- MultipartReplyQueueStatsBuilder message = new MultipartReplyQueueStatsBuilder();
- MultipartReplyQueueCase caseBody = (MultipartReplyQueueCase) msg.getMultipartReplyBody();
- MultipartReplyQueue replyBody = caseBody.getMultipartReplyQueue();
-
- List<QueueIdAndStatisticsMap> statsMap =
- new ArrayList<>();
-
- for (QueueStats queueStats : replyBody.getQueueStats()) {
-
- QueueIdAndStatisticsMapBuilder statsBuilder =
- new QueueIdAndStatisticsMapBuilder();
- statsBuilder.setNodeConnectorId(
- InventoryDataServiceUtil.nodeConnectorIdfromDatapathPortNo(datapathId,
- queueStats.getPortNo(), ofVersion));
- statsBuilder.setTransmissionErrors(new Counter64(queueStats.getTxErrors()));
- statsBuilder.setTransmittedBytes(new Counter64(queueStats.getTxBytes()));
- statsBuilder.setTransmittedPackets(new Counter64(queueStats.getTxPackets()));
-
- DurationBuilder durationBuilder = new DurationBuilder();
- durationBuilder.setSecond(new Counter32(queueStats.getDurationSec()));
- durationBuilder.setNanosecond(new Counter32(queueStats.getDurationNsec()));
- statsBuilder.setDuration(durationBuilder.build());
-
- statsBuilder.setQueueId(new QueueId(queueStats.getQueueId()));
- statsBuilder.setNodeConnectorId(InventoryDataServiceUtil.nodeConnectorIdfromDatapathPortNo(datapathId,
- queueStats.getPortNo(), ofVersion));
-
- statsMap.add(statsBuilder.build());
- }
- message.setQueueIdAndStatisticsMap(statsMap);
-
- return message.build();
+ final Uint64 datapathId) {
+ final var statsMap = ((MultipartReplyQueueCase) msg.getMultipartReplyBody()).getMultipartReplyQueue()
+ .nonnullQueueStats().stream()
+ .map(queueStats -> new QueueIdAndStatisticsMapBuilder()
+ .setNodeConnectorId(InventoryDataServiceUtil.nodeConnectorIdfromDatapathPortNo(datapathId,
+ queueStats.getPortNo(), ofVersion))
+ .setQueueId(new QueueId(queueStats.getQueueId()))
+ .setTransmissionErrors(new Counter64(queueStats.getTxErrors()))
+ .setTransmittedBytes(new Counter64(queueStats.getTxBytes()))
+ .setTransmittedPackets(new Counter64(queueStats.getTxPackets()))
+ .setDuration(new DurationBuilder()
+ .setSecond(new Counter32(queueStats.getDurationSec()))
+ .setNanosecond(new Counter32(queueStats.getDurationNsec()))
+ .build())
+ .build())
+ .collect(BindingMap.toOrderedMap());
+
+ return new MultipartReplyQueueStatsBuilder()
+ .setQueueIdAndStatisticsMap(statsMap)
+ .build();