[ONOS-3284]Types added Spi, SI and context header
Change-Id: Ib29d90d401c390d4ff5ac06e17507f2ffbb70f12
diff --git a/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshContextHeader.java b/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshContextHeader.java
index c826798..a6d50a0 100644
--- a/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshContextHeader.java
+++ b/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshContextHeader.java
@@ -16,13 +16,15 @@
package org.onosproject.driver.extensions;
-import com.google.common.base.MoreObjects;
+import java.util.Objects;
+
import org.onlab.util.KryoNamespace;
+import org.onosproject.net.NshContextHeader;
import org.onosproject.net.flow.AbstractExtension;
import org.onosproject.net.flow.instructions.ExtensionTreatment;
import org.onosproject.net.flow.instructions.ExtensionTreatmentType;
-import java.util.Objects;
+import com.google.common.base.MoreObjects;
/**
* Nicira set NSH Context header extension instruction.
@@ -30,7 +32,7 @@
public class NiciraSetNshContextHeader extends AbstractExtension implements
ExtensionTreatment {
- private int nshCh;
+ private NshContextHeader nshCh;
private ExtensionTreatmentType type;
private final KryoNamespace appKryo = new KryoNamespace.Builder().build();
@@ -41,7 +43,7 @@
* @param type extension treatment type
*/
NiciraSetNshContextHeader(ExtensionTreatmentType type) {
- this.nshCh = 0;
+ this.nshCh = NshContextHeader.of(0);
this.type = type;
}
@@ -51,7 +53,7 @@
* @param nshCh nsh context header
* @param type extension treatment type
*/
- NiciraSetNshContextHeader(int nshCh, ExtensionTreatmentType type) {
+ NiciraSetNshContextHeader(NshContextHeader nshCh, ExtensionTreatmentType type) {
this.nshCh = nshCh;
this.type = type;
}
@@ -61,7 +63,7 @@
*
* @return nsh context header
*/
- public int nshCh() {
+ public NshContextHeader nshCh() {
return nshCh;
}
@@ -72,12 +74,12 @@
@Override
public void deserialize(byte[] data) {
- nshCh = appKryo.deserialize(data);
+ nshCh = NshContextHeader.of(appKryo.deserialize(data));
}
@Override
public byte[] serialize() {
- return appKryo.serialize(nshCh);
+ return appKryo.serialize(nshCh.nshContextHeader());
}
@Override
diff --git a/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshSi.java b/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshSi.java
index 1480508..dec66c9 100644
--- a/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshSi.java
+++ b/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshSi.java
@@ -16,13 +16,15 @@
package org.onosproject.driver.extensions;
-import com.google.common.base.MoreObjects;
+import java.util.Objects;
+
import org.onlab.util.KryoNamespace;
+import org.onosproject.net.NshServiceIndex;
import org.onosproject.net.flow.AbstractExtension;
import org.onosproject.net.flow.instructions.ExtensionTreatment;
import org.onosproject.net.flow.instructions.ExtensionTreatmentType;
-import java.util.Objects;
+import com.google.common.base.MoreObjects;
/**
* Nicira set NSH SI extension instruction.
@@ -30,7 +32,7 @@
public class NiciraSetNshSi extends AbstractExtension implements
ExtensionTreatment {
- private byte nshSi;
+ private NshServiceIndex nshSi;
private final KryoNamespace appKryo = new KryoNamespace.Builder().build();
@@ -38,7 +40,7 @@
* Creates a new set nsh si instruction.
*/
NiciraSetNshSi() {
- nshSi = 0;
+ nshSi = NshServiceIndex.of((short) 0);
}
/**
@@ -46,7 +48,7 @@
*
* @param nshSi nsh service index
*/
- NiciraSetNshSi(byte nshSi) {
+ NiciraSetNshSi(NshServiceIndex nshSi) {
this.nshSi = nshSi;
}
@@ -55,7 +57,7 @@
*
* @return nsh service index
*/
- public byte nshSi() {
+ public NshServiceIndex nshSi() {
return nshSi;
}
@@ -66,12 +68,12 @@
@Override
public void deserialize(byte[] data) {
- nshSi = appKryo.deserialize(data);
+ nshSi = NshServiceIndex.of(appKryo.deserialize(data));
}
@Override
public byte[] serialize() {
- return appKryo.serialize(nshSi);
+ return appKryo.serialize(nshSi.serviceIndex());
}
@Override
diff --git a/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshSpi.java b/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshSpi.java
index 1a47173..72eef0d 100644
--- a/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshSpi.java
+++ b/drivers/src/main/java/org/onosproject/driver/extensions/NiciraSetNshSpi.java
@@ -16,13 +16,15 @@
package org.onosproject.driver.extensions;
-import com.google.common.base.MoreObjects;
+import java.util.Objects;
+
import org.onlab.util.KryoNamespace;
+import org.onosproject.net.NshServicePathId;
import org.onosproject.net.flow.AbstractExtension;
import org.onosproject.net.flow.instructions.ExtensionTreatment;
import org.onosproject.net.flow.instructions.ExtensionTreatmentType;
-import java.util.Objects;
+import com.google.common.base.MoreObjects;
/**
* Nicira set NSH SPI extension instruction.
@@ -30,7 +32,7 @@
public class NiciraSetNshSpi extends AbstractExtension implements
ExtensionTreatment {
- private int nshSpi;
+ private NshServicePathId nshSpi;
private final KryoNamespace appKryo = new KryoNamespace.Builder().build();
@@ -38,24 +40,24 @@
* Creates a new set nsh spi instruction.
*/
NiciraSetNshSpi() {
- nshSpi = 0;
+ nshSpi = NshServicePathId.of(0);
}
/**
* Creates a new set nsh spi instruction with given spi.
*
- * @param nshSpi nsh service path index
+ * @param nshSpi nsh service path id
*/
- NiciraSetNshSpi(int nshSpi) {
+ NiciraSetNshSpi(NshServicePathId nshSpi) {
this.nshSpi = nshSpi;
}
/**
- * Gets the nsh service path index.
+ * Gets the nsh service path id.
*
- * @return nsh service path index
+ * @return nsh service path id
*/
- public int nshSpi() {
+ public NshServicePathId nshSpi() {
return nshSpi;
}
@@ -66,12 +68,12 @@
@Override
public void deserialize(byte[] data) {
- nshSpi = appKryo.deserialize(data);
+ nshSpi = NshServicePathId.of(appKryo.deserialize(data));
}
@Override
public byte[] serialize() {
- return appKryo.serialize(nshSpi);
+ return appKryo.serialize(nshSpi.servicePathId());
}
@Override
@@ -95,7 +97,7 @@
@Override
public String toString() {
return MoreObjects.toStringHelper(getClass())
- .add("nshSpi", nshSpi)
+ .add("nshSpi", nshSpi.toString())
.toString();
}
}