ONOS-7975 ODTN OpenROADM v2.2 NetConf drivers.

Change-Id: I7b4115146bfda7b0061e095ca189ea4d2e9d993d
diff --git a/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/openroadm/OpenRoadmOmsInterface.java b/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/openroadm/OpenRoadmOmsInterface.java
new file mode 100644
index 0000000..0516dfb
--- /dev/null
+++ b/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/openroadm/OpenRoadmOmsInterface.java
@@ -0,0 +1,58 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+
+ * This work was partially supported by EC H2020 project METRO-HAUL (761727).
+ */
+package org.onosproject.drivers.odtn.openroadm;
+
+public class OpenRoadmOmsInterface extends OpenRoadmInterface {
+
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append("<interface>");
+        sb.append("<name>" + name + "</name>");
+        sb.append("<description>" + description + "</description>");
+        sb.append(
+          "<type xmlns:openROADM-if=\"http://org/openroadm/interfaces\">openROADM-if:openROADMOpticalMultiplex</type>");
+        sb.append("<administrative-state>inService</administrative-state>");
+        sb.append("<supporting-circuit-pack-name>" + supportingCircuitPack +
+                  "</supporting-circuit-pack-name>");
+        sb.append("<supporting-port>" + supportingPort + "</supporting-port>");
+        if (!supportingInterface.isEmpty()) {
+            sb.append("<supporting-interface>" + supportingInterface + "</supporting-interface>");
+        }
+        return sb.toString();
+    }
+
+    public abstract static class Builder<T extends Builder<T>>
+        extends OpenRoadmInterface.Builder<T> {
+      //
+    }
+
+    private static class Builder2 extends Builder<Builder2> {
+        @Override
+        protected Builder2 self() {
+            return this;
+        }
+    }
+
+    public static Builder<?> builder() {
+        return new Builder2();
+    }
+
+    protected OpenRoadmOmsInterface(Builder<?> builder) {
+        super(builder);
+    }
+}