Add OTN device and ports
Change-Id: I18f3376d1466077e95d7324a27a660302f0123b3
diff --git a/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java b/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java
index 5f6fb04..60fd95a 100644
--- a/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java
+++ b/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java
@@ -352,7 +352,8 @@
final Device device = getDevice(deviceId);
List<PortDescription> descs = ports.stream().map(
- port -> (!(Device.Type.ROADM.equals(device.type()))) ?
+ port -> (!(Device.Type.ROADM.equals(device.type()) ||
+ (Device.Type.OTN.equals(device.type())))) ?
new DefaultPortDescription(port.number(), false,
port.type(), port.portSpeed()) :
OpticalPortOperator.descriptionOf(port, false)
@@ -439,7 +440,8 @@
return;
}
Device device = nullIsNotFound(getDevice(deviceId), "Device not found");
- if ((Device.Type.ROADM.equals(device.type()))) {
+ if ((Device.Type.ROADM.equals(device.type())) ||
+ (Device.Type.OTN.equals(device.type()))) {
Port port = getPort(deviceId, portDescription.portNumber());
portDescription = OpticalPortOperator.descriptionOf(port, portDescription.isEnabled());
}
diff --git a/core/net/src/main/java/org/onosproject/net/device/impl/OpticalPortOperator.java b/core/net/src/main/java/org/onosproject/net/device/impl/OpticalPortOperator.java
index 8f60149..ca720e2 100644
--- a/core/net/src/main/java/org/onosproject/net/device/impl/OpticalPortOperator.java
+++ b/core/net/src/main/java/org/onosproject/net/device/impl/OpticalPortOperator.java
@@ -23,6 +23,7 @@
import org.onosproject.net.AnnotationKeys;
import org.onosproject.net.DefaultAnnotations;
import org.onosproject.net.OchPort;
+import org.onosproject.net.OtuPort;
import org.onosproject.net.OduCltPort;
import org.onosproject.net.OmsPort;
import org.onosproject.net.Port;
@@ -32,6 +33,7 @@
import org.onosproject.net.device.OchPortDescription;
import org.onosproject.net.device.OduCltPortDescription;
import org.onosproject.net.device.OmsPortDescription;
+import org.onosproject.net.device.OtuPortDescription;
import org.onosproject.net.device.PortDescription;
import org.slf4j.Logger;
@@ -115,6 +117,9 @@
case COPPER:
return new DefaultPortDescription(port, descr.isEnabled(), descr.type(),
descr.portSpeed(), sa);
+ case OTU:
+ OtuPortDescription otu = (OtuPortDescription) descr;
+ return new OtuPortDescription(port, otu.isEnabled(), otu.signalType(), sa);
default:
log.warn("Unsupported optical port type {} - can't update", descr.type());
return descr;
@@ -183,6 +188,9 @@
case ODUCLT:
OduCltPort odu = (OduCltPort) port;
return new OduCltPortDescription(ptn, isup, odu.signalType(), an);
+ case OTU:
+ OtuPort otu = (OtuPort) port;
+ return new OtuPortDescription(ptn, isup, otu.signalType(), an);
default:
return new DefaultPortDescription(ptn, isup, port.type(), port.portSpeed(), an);
}