Adding EventReporter class

This class stores the reporting level and can be used to get
the event listener service.

Bug: 29748723

(cherry picked from commit be581e228bd1a97efd179edcdd3e744622fb99b8)

Change-Id: I98bfa97cb502f4d19ccf8c79f32d347e7e168492
diff --git a/server/NetdNativeService.cpp b/server/NetdNativeService.cpp
index e962362..a575642 100644
--- a/server/NetdNativeService.cpp
+++ b/server/NetdNativeService.cpp
@@ -30,6 +30,7 @@
 
 #include "Controllers.h"
 #include "DumpWriter.h"
+#include "EventReporter.h"
 #include "InterfaceController.h"
 #include "NetdConstants.h"
 #include "NetdNativeService.h"
@@ -293,7 +294,7 @@
     ENFORCE_PERMISSION(CONNECTIVITY_INTERNAL);
     ENFORCE_DEBUGGABLE();
 
-    *reportingLevel = gCtls->netCtrl.getMetricsReportingLevel();
+    *reportingLevel = gCtls->eventReporter.getMetricsReportingLevel();
     return binder::Status::ok();
 }
 
@@ -303,10 +304,9 @@
     ENFORCE_PERMISSION(CONNECTIVITY_INTERNAL);
     ENFORCE_DEBUGGABLE();
 
-    if (int err = gCtls->netCtrl.setMetricsReportingLevel(reportingLevel)) {
-        return binder::Status::fromExceptionCode(binder::Status::EX_ILLEGAL_ARGUMENT);
-    }
-    return binder::Status::ok();
+    return (gCtls->eventReporter.setMetricsReportingLevel(reportingLevel) == 0)
+            ? binder::Status::ok()
+            : binder::Status::fromExceptionCode(binder::Status::EX_ILLEGAL_ARGUMENT);
 }
 
 }  // namespace net