[ONOS-7051] Support for P4Runtime meters
Change-Id: Id71374af65aeb84b71636b4ec230dc6001a77a8b
diff --git a/core/api/src/main/java/org/onosproject/net/meter/Meter.java b/core/api/src/main/java/org/onosproject/net/meter/Meter.java
index 3cb4511..3d7544e 100644
--- a/core/api/src/main/java/org/onosproject/net/meter/Meter.java
+++ b/core/api/src/main/java/org/onosproject/net/meter/Meter.java
@@ -17,13 +17,14 @@
import org.onosproject.core.ApplicationId;
import org.onosproject.net.DeviceId;
+import org.onosproject.net.pi.service.PiTranslatable;
import java.util.Collection;
/**
- * Represents a generalized meter to be deployed on a device.
+ * Represents a generalized meter cell configuration to be deployed on a device.
*/
-public interface Meter {
+public interface Meter extends PiTranslatable {
enum Unit {
/**
@@ -48,10 +49,19 @@
* This meters id.
*
* @return a meter id
+ * @deprecated in Nightingale release (version 1.13.0). Use {@link #meterCellId()} instead.
*/
+ @Deprecated
MeterId id();
/**
+ * Returns the meter cell identifier of this meter.
+ *
+ * @return a meter identifier
+ */
+ MeterCellId meterCellId();
+
+ /**
* The id of the application which created this meter.
*
* @return an application id
@@ -132,10 +142,21 @@
*
* @param id a e
* @return this
+ * @deprecated in Nightingale release (version 1.13.0). Use {@link
+ * #withCellId(MeterCellId)} instead.
*/
+ @Deprecated
Builder withId(MeterId id);
/**
+ * Assigns the id to this meter cell.
+ *
+ * @param meterId a meter cell identifier
+ * @return this
+ */
+ Builder withCellId(MeterCellId meterId);
+
+ /**
* Assigns the application that built this meter.
*
* @param appId an application id