package org.opendaylight.transportpce.common.mapping;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.Optional;
import java.util.concurrent.ExecutionException;
import org.opendaylight.mdsal.binding.api.DataBroker;
import org.opendaylight.mdsal.binding.api.ReadTransaction;
import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
import org.opendaylight.transportpce.common.StringConstants;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.Network;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.mc.capabilities.McCapabilities;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.network.Nodes;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.network.NodesKey;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.network.nodes.NodeInfo;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.Network;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.mc.capabilities.McCapabilities;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.Nodes;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.NodesKey;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.nodes.NodeInfo;
import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev200327.If100GE;
import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev200327.If100GEODU4;
import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev200327.If10GE;
private final DataBroker dataBroker;
+ private static Map<String, Class<? extends SupportedIfCapability>> capTypeClassMap = new HashMap<>() {
+ {
+ put("IfOTUCnODUCn", IfOTUCnODUCn.class);
+ put("IfOCHOTU4ODU4", IfOCHOTU4ODU4.class);
+ put("IfOCH", IfOCH.class);
+ put("If100GEODU4", If100GEODU4.class);
+ put("If10GEODU2e", If10GEODU2e.class);
+ put("If10GEODU2", If10GEODU2.class);
+ put("If1GEODU0", If1GEODU0.class);
+ put("If400GE", If400GE.class);
+ put("If100GE", If100GE.class);
+ put("If10GE", If10GE.class);
+ put("If1GE", If1GE.class);
+ }
+ };
+
public MappingUtilsImpl(DataBroker dataBroker) {
this.dataBroker = dataBroker;
}
public static Class<? extends SupportedIfCapability> convertSupIfCapa(String ifCapType) {
- switch (ifCapType) {
- case "IfOTUCnODUCn":
- return IfOTUCnODUCn.class;
- case "IfOCHOTU4ODU4":
- return IfOCHOTU4ODU4.class;
- case "IfOCH":
- return IfOCH.class;
- case "If100GEODU4":
- return If100GEODU4.class;
- case "If10GEODU2e":
- return If10GEODU2e.class;
- case "If10GEODU2":
- return If10GEODU2.class;
- case "If1GEODU0":
- return If1GEODU0.class;
- case "If400GE":
- return If400GE.class;
- case "If100GE":
- return If100GE.class;
- case "If10GE":
- return If10GE.class;
- case "If1GE":
- return If1GE.class;
- default:
- return null;
+ if (!capTypeClassMap.containsKey(ifCapType)) {
+ return null;
}
+ return capTypeClassMap.get(ifCapType);
}
}