OpenFlow Meter Provider - still need to parse meter stats
Change-Id: I4b313ea003b3801f81ec7d4823bf69de37fd8643
diff --git a/core/api/src/main/java/org/onosproject/net/meter/Band.java b/core/api/src/main/java/org/onosproject/net/meter/Band.java
index e434073..db42ba7 100644
--- a/core/api/src/main/java/org/onosproject/net/meter/Band.java
+++ b/core/api/src/main/java/org/onosproject/net/meter/Band.java
@@ -32,7 +32,7 @@
/**
* defines a simple DiffServ policer that remark
- * the drop precedence of the DSCP eld in the
+ * the drop precedence of the DSCP field in the
* IP header of the packets that exceed the band
* rate value.
*/
@@ -42,16 +42,32 @@
/**
* The rate at which this meter applies.
*
- * @return the integer value of the rate
+ * @return the long value of the rate
*/
- int rate();
+ long rate();
/**
* The burst size at which the meter applies.
*
- * @return the integer value of the size
+ * @return the long value of the size
*/
- int burst();
+ long burst();
+
+ /**
+ * Only meaningful in the case of a REMARK band type.
+ * indicates by which amount the drop precedence of
+ * the packet should be increase if the band is exceeded.
+ *
+ * @return a short value
+ */
+ short dropPrecedence();
+
+ /**
+ * Signals the type of band to create.
+ *
+ * @return a band type
+ */
+ Type type();
}
diff --git a/core/api/src/main/java/org/onosproject/net/meter/MeterFailReason.java b/core/api/src/main/java/org/onosproject/net/meter/MeterFailReason.java
index 70f65ef..8683e2a 100644
--- a/core/api/src/main/java/org/onosproject/net/meter/MeterFailReason.java
+++ b/core/api/src/main/java/org/onosproject/net/meter/MeterFailReason.java
@@ -38,5 +38,52 @@
/**
* The meter that was attempted to be modified is unknown.
*/
- UNKNOWN
+ UNKNOWN,
+
+ /**
+ * The operation for this meter installation timed out.
+ */
+ TIMEOUT,
+
+ /**
+ * Invalid meter definition.
+ */
+ INVALID_METER,
+
+ /**
+ * The target device is unknown.
+ */
+ UNKNOWN_DEVICE,
+
+ /**
+ * Unknown command.
+ */
+ UNKNOWN_COMMAND,
+
+ /**
+ * Unknown flags.
+ */
+ UNKNOWN_FLAGS,
+
+ /**
+ * Bad rate value.
+ */
+ BAD_RATE,
+
+ /**
+ * Bad burst size value.
+ */
+ BAD_BURST,
+
+ /**
+ * Bad band.
+ */
+ BAD_BAND,
+
+ /**
+ * Bad value value.
+ */
+ BAD_BAND_VALUE
+
+
}
diff --git a/core/api/src/main/java/org/onosproject/net/meter/MeterId.java b/core/api/src/main/java/org/onosproject/net/meter/MeterId.java
index b62db10..6a85a99 100644
--- a/core/api/src/main/java/org/onosproject/net/meter/MeterId.java
+++ b/core/api/src/main/java/org/onosproject/net/meter/MeterId.java
@@ -41,7 +41,7 @@
*
* @return an integer
*/
- int id() {
+ public int id() {
return id;
}
diff --git a/core/api/src/main/java/org/onosproject/net/meter/MeterProviderService.java b/core/api/src/main/java/org/onosproject/net/meter/MeterProviderService.java
index 831c88a..85c0c43 100644
--- a/core/api/src/main/java/org/onosproject/net/meter/MeterProviderService.java
+++ b/core/api/src/main/java/org/onosproject/net/meter/MeterProviderService.java
@@ -29,10 +29,10 @@
/**
* Notifies the core that a meter operaton failed for a
* specific reason.
- * @param deviceId
- * @param operation
+ * @param operation the failed operation
+ * @param reason the failure reason
*/
- void meterOperationFailed(DeviceId deviceId, MeterOperation operation,
+ void meterOperationFailed(MeterOperation operation,
MeterFailReason reason);
/**