+ case StringConstants.OPENROADM_DEVICE_VERSION_7_1:
+ // Here ODUCn and ODUflex are combined
+ String interfaceNameOduc4 = openRoadmInterface710.createOpenRoadmOducnInterface(nodeId,
+ logicalConnPoint, supportingOtuInterface);
+ return openRoadmInterface710.createOpenRoadmOduflexInterface(nodeId, logicalConnPoint,
+ interfaceNameOduc4);
+ default:
+ return null;
+ }
+ }
+
+ /**
+ * This methods creates an ODU interface on the given termination point.
+ *
+ * @param anodeId node ID for A side
+ * @param alogicalConnPoint logical connection point for A side
+ * @param asupportingOtuInterface supporting OTU interface
+ * @param znodeId node ID for Z side
+ * @param zlogicalConnPoint logical connection point for Z side
+ * @return Name of the interface if successful, otherwise return null.
+ * @throws OpenRoadmInterfaceException OpenRoadm interface exception
+ */
+
+ public String createOpenRoadmOdu4Interface(String anodeId, String alogicalConnPoint, String asupportingOtuInterface,
+ String znodeId, String zlogicalConnPoint)
+ throws OpenRoadmInterfaceException {
+ switch (mappingUtils.getOpenRoadmVersion(anodeId)) {
+ case StringConstants.OPENROADM_DEVICE_VERSION_1_2_1:
+ return openRoadmInterface121.createOpenRoadmOdu4Interface(anodeId, alogicalConnPoint,
+ asupportingOtuInterface);
+ case StringConstants.OPENROADM_DEVICE_VERSION_2_2_1:
+ return openRoadmInterface221.createOpenRoadmOdu4Interface(anodeId, alogicalConnPoint,
+ asupportingOtuInterface, znodeId, zlogicalConnPoint);
+ case StringConstants.OPENROADM_DEVICE_VERSION_7_1:
+ // Here ODUCn and ODUflex are combined
+ String interfaceNameOduc4 = openRoadmInterface710.createOpenRoadmOducnInterface(anodeId,
+ alogicalConnPoint, asupportingOtuInterface, znodeId, zlogicalConnPoint);
+ return openRoadmInterface710.createOpenRoadmOduflexInterface(anodeId, alogicalConnPoint,
+ interfaceNameOduc4, znodeId, zlogicalConnPoint);