import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev200529.org.openroadm.device.container.OrgOpenroadmDevice;
import org.opendaylight.yang.gen.v1.http.org.openroadm.equipment.states.types.rev191129.AdminStates;
import org.opendaylight.yang.gen.v1.http.org.openroadm.equipment.states.types.rev191129.States;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.interfaces.rev191129.OtnOdu;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.interfaces.rev191129.OtnOtu;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.maintenance.loopback.rev191129.maint.loopback.MaintLoopbackBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.maintenance.testsignal.rev200529.maint.testsignal.MaintTestsignalBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.odu.interfaces.rev200529.Interface1;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.odu.interfaces.rev200529.Interface1Builder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.odu.interfaces.rev200529.odu.container.OduBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.otu.interfaces.rev200529.otu.container.OtuBuilder;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public void deleteInterface(String nodeId, String interfaceName) throws OpenRoadmInterfaceException {
- LOG.info("deleting interface {} on device221 {}", interfaceName, nodeId);
+ LOG.info("deleting interface {} on device71 {}", interfaceName, nodeId);
Optional<Interface> intf2DeleteOpt;
try {
intf2DeleteOpt = getInterface(nodeId, interfaceName);
if (intf2DeleteOpt.isPresent()) {
Interface intf2Delete = intf2DeleteOpt.get();
// State admin state to out of service
- InterfaceBuilder ifBuilder = new InterfaceBuilder(intf2Delete);
- if (ifBuilder.getType() == OtnOdu.class) {
- Interface1Builder oduBuilder = new Interface1Builder(intf2Delete.augmentation(Interface1.class));
- OduBuilder odu = new OduBuilder(oduBuilder.getOdu());
- if (odu.getMaintTestsignal() != null) {
- MaintTestsignalBuilder maintSignalBuilder = new MaintTestsignalBuilder();
- maintSignalBuilder.setEnabled(false);
- odu.setMaintTestsignal(maintSignalBuilder.build());
- }
- oduBuilder.setOdu(odu.build());
- ifBuilder.addAugmentation(oduBuilder.build());
- } else if (ifBuilder.getType() == OtnOtu.class) {
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.otu.interfaces.rev200529.Interface1Builder
- otuBuilder =
- new org.opendaylight.yang.gen.v1.http.org.openroadm.otn.otu.interfaces.rev200529.Interface1Builder(
- intf2Delete.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.otu.interfaces.rev200529.Interface1
- .class));
- OtuBuilder otu = new OtuBuilder(otuBuilder.getOtu());
- if (otu.getMaintLoopback() != null) {
- MaintLoopbackBuilder maintLoopBackBuilder = new MaintLoopbackBuilder();
- maintLoopBackBuilder.setEnabled(false);
- otu.setMaintLoopback(maintLoopBackBuilder.build());
- }
- otuBuilder.setOtu(otu.build());
- ifBuilder.addAugmentation(otuBuilder.build());
- }
+ InterfaceBuilder ifBuilder = new InterfaceBuilder();
+ ifBuilder.setName(intf2Delete.getName());
+ ifBuilder.setType(intf2Delete.getType());
ifBuilder.setAdministrativeState(AdminStates.OutOfService);
// post interface with updated admin state
try {
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev200128.renderer.rollback.output.FailedToRollback;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev200128.renderer.rollback.output.FailedToRollbackBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev200128.renderer.rollback.output.FailedToRollbackKey;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.OpenroadmNodeVersion;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.mapping.Mapping;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.Topology;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.ServiceList;
String spectralSlotName = String.join(GridConstant.SPECTRAL_SLOT_SEPARATOR,
String.valueOf(lowerSpectralSlotNumber),
String.valueOf(higherSpectralSlotNumber));
+ OpenroadmNodeVersion nodeOpenRoadmVersion = this.portMapping.getNode(nodeId).getNodeInfo()
+ .getOpenroadmVersion();
List<String> interfacesToDelete = new LinkedList<>();
if (destTp.contains(StringConstants.NETWORK_TOKEN)
|| srcTp.contains(StringConstants.CLIENT_TOKEN)
|| srcTp.contains(StringConstants.NETWORK_TOKEN)
|| destTp.contains(StringConstants.CLIENT_TOKEN)) {
if (destTp.contains(StringConstants.NETWORK_TOKEN)) {
- try {
- if (this.openRoadmInterfaces.getInterface(nodeId, destTp + "-ODU").isPresent()) {
- interfacesToDelete.add(destTp + "-ODU");
+ if (nodeOpenRoadmVersion.equals(OpenroadmNodeVersion._71)) {
+ try {
+ if (this.openRoadmInterfaces.getInterface(nodeId, destTp + "-ODUFLEX").isPresent()) {
+ interfacesToDelete.add(destTp + "-ODUFLEX");
+ }
+ if (this.openRoadmInterfaces.getInterface(nodeId, destTp + "-ODUC4").isPresent()) {
+ interfacesToDelete.add(destTp + "-ODUC4");
+ }
+ } catch (OpenRoadmInterfaceException e) {
+ LOG.error("impossible to get interface {} or {}", destTp + "-ODUFLEX", destTp + "-ODUC4", e);
+ }
+ interfacesToDelete.add(destTp + "-OTUC4");
+ interfacesToDelete.add(destTp + "-OTSI-GROUP");
+ interfacesToDelete.add(destTp + "-" + lowerSpectralSlotNumber + ":" + higherSpectralSlotNumber);
+ } else {
+ try {
+ if (this.openRoadmInterfaces.getInterface(nodeId, destTp + "-ODU").isPresent()) {
+ interfacesToDelete.add(destTp + "-ODU");
+ }
+ if (this.openRoadmInterfaces.getInterface(nodeId, destTp + ODU4).isPresent()) {
+ interfacesToDelete.add(destTp + ODU4);
+ }
}
- if (this.openRoadmInterfaces.getInterface(nodeId, destTp + ODU4).isPresent()) {
- interfacesToDelete.add(destTp + ODU4);
+ catch (OpenRoadmInterfaceException e) {
+ LOG.error("impossible to get interface {} or {}", destTp + "-ODU", destTp + ODU4, e);
}
+ interfacesToDelete.add(destTp + "-OTU");
+ interfacesToDelete.add(
+ this.openRoadmInterfaceFactory
+ .createOpenRoadmOchInterfaceName(destTp,spectralSlotName));
}
- catch (OpenRoadmInterfaceException e) {
- LOG.error("impossible to get interface {} or {}", destTp + "-ODU", destTp + ODU4, e);
- }
- interfacesToDelete.add(destTp + "-OTU");
- interfacesToDelete.add(
- this.openRoadmInterfaceFactory
- .createOpenRoadmOchInterfaceName(destTp,spectralSlotName));
}
if (srcTp.contains(StringConstants.NETWORK_TOKEN)) {
- interfacesToDelete.add(srcTp + "-ODU");
- interfacesToDelete.add(srcTp + "-OTU");
- interfacesToDelete
- .add(this.openRoadmInterfaceFactory
- .createOpenRoadmOchInterfaceName(srcTp,spectralSlotName));
+ if (nodeOpenRoadmVersion.equals(OpenroadmNodeVersion._71)) {
+ interfacesToDelete.add(srcTp + "-ODUC4");
+ interfacesToDelete.add(srcTp + "-OTUC4");
+ interfacesToDelete.add(srcTp + "-OTSI-GROUP");
+ interfacesToDelete.add(srcTp + "-" + lowerSpectralSlotNumber + ":" + higherSpectralSlotNumber);
+ } else {
+ interfacesToDelete.add(srcTp + "-ODU");
+ interfacesToDelete.add(srcTp + "-OTU");
+ interfacesToDelete
+ .add(this.openRoadmInterfaceFactory
+ .createOpenRoadmOchInterfaceName(srcTp, spectralSlotName));
+ }
}
if (srcTp.contains(StringConstants.CLIENT_TOKEN)) {
interfacesToDelete.add(srcTp + "-ETHERNET");