Refactor: move telemetry config from componentCfg to configs.xml
1. Support to export the metrics to multiple targets
2. Add a set of properties to kafka config (key, topic, etc.)
3. Add distributedStore to manage telemetry configs
4. Add CLI to query stored telemetry configs
5. Add a set of telemetry loaders to import xml definitions
6. Add unit tests for telemetry cfg, xml cfg loader and dist store
7. Add missing javadoc for a set of implementation classes
Change-Id: I39480c9a6ac07357184d2e1094b9c9f4d36fd8b1
diff --git a/apps/openstacktelemetry/api/src/main/java/org/onosproject/openstacktelemetry/api/TelemetryService.java b/apps/openstacktelemetry/api/src/main/java/org/onosproject/openstacktelemetry/api/TelemetryService.java
index 86ebb65..7806ff7 100644
--- a/apps/openstacktelemetry/api/src/main/java/org/onosproject/openstacktelemetry/api/TelemetryService.java
+++ b/apps/openstacktelemetry/api/src/main/java/org/onosproject/openstacktelemetry/api/TelemetryService.java
@@ -21,9 +21,51 @@
public interface TelemetryService {
/**
+ * Telemetry service type.
+ */
+ enum ServiceType {
+ /**
+ * Indicates KAFKA telemetry service.
+ */
+ KAFKA,
+
+ /**
+ * Indicates GRPC telemetry service.
+ */
+ GRPC,
+
+ /**
+ * Indicates REST telemetry service.
+ */
+ REST,
+
+ /**
+ * Indicates InfluxDB telemetry service.
+ */
+ INFLUXDB,
+
+ /**
+ * Indicates prometheus telemetry service.
+ */
+ PROMETHEUS,
+
+ /**
+ * Indicates unknown telemetry service.
+ */
+ UNKNOWN
+ }
+
+ /**
* Checks whether the telemetry service is running or not.
*
* @return telemetry service running status
*/
boolean isRunning();
+
+ /**
+ * Obtains the service type.
+ *
+ * @return service type
+ */
+ ServiceType type();
}