[VOL-5291] - Implement get alloc stats, pon-stats, nni-stats
Change-Id: I1fda9b20297641aabcb2642006e516ba3933e184
Signed-off-by: Akash Reddy Kankanala <akash.kankanala@radisys.com>
diff --git a/agent/common/core.h b/agent/common/core.h
index f322bf0..2eb201c 100644
--- a/agent/common/core.h
+++ b/agent/common/core.h
@@ -20,6 +20,7 @@
#include <grpc++/grpc++.h>
using grpc::Status;
#include <voltha_protos/openolt.grpc.pb.h>
+#include <voltha_protos/common.grpc.pb.h>
#include <voltha_protos/ext_config.grpc.pb.h>
#include "state.h"
@@ -250,6 +251,9 @@
Status GetPonRxPower_(uint32_t intf_id, uint32_t onu_id, openolt::PonRxPowerData* response);
Status GetOnuInfo_(uint32_t intf_id, uint32_t onu_id, openolt::OnuInfo *response);
Status GetPonInterfaceInfo_(uint32_t intf_id, openolt::PonIntfInfo *response);
+Status GetPonPortStatistics_(uint32_t intf_id, common::PortStatistics* pon_stats);
+Status GetNniPortStatistics_(uint32_t intf_id, common::PortStatistics* nni_stats);
+Status GetAllocIdStatistics_(uint32_t intf_id, uint32_t alloc_id, openolt::OnuAllocIdStatistics* alloc_stats);
int get_status_bcm_cli_quit(void);
uint16_t get_dev_id(void);
Status pushOltOperInd(uint32_t intf_id, const char *type, const char *state, uint32_t speed);
diff --git a/agent/common/server.cc b/agent/common/server.cc
index ec52b26..507bfc1 100644
--- a/agent/common/server.cc
+++ b/agent/common/server.cc
@@ -31,6 +31,7 @@
#include <grpc++/grpc++.h>
#include <voltha_protos/openolt.grpc.pb.h>
+#include <voltha_protos/common.grpc.pb.h>
#include <voltha_protos/tech_profile.grpc.pb.h>
using grpc::Server;
@@ -377,6 +378,33 @@
}
+ Status GetPonPortStatistics(
+ ServerContext* context,
+ const openolt::Interface* request,
+ common::PortStatistics* response) override {
+ return GetPonPortStatistics_(
+ request->intf_id(),
+ response);
+ }
+
+ Status GetNniPortStatistics(
+ ServerContext* context,
+ const openolt::Interface* request,
+ common::PortStatistics* response) override {
+ return GetNniPortStatistics_(
+ request->intf_id(),
+ response);
+ }
+
+ Status GetAllocIdStatistics(
+ ServerContext* context,
+ const openolt::OnuPacket* request,
+ openolt::OnuAllocIdStatistics* response) override {
+ return GetAllocIdStatistics_(
+ request->intf_id(),
+ request->alloc_id(),
+ response);
+ }
};