X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=transportpce.git;a=blobdiff_plain;f=olm%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Folm%2Fpower%2FPowerMgmtVersion710.java;fp=olm%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Folm%2Fpower%2FPowerMgmtVersion710.java;h=adbba537f2ca023e62d2bc741dc74cae8f8fbb23;hp=fc33e1890debc5edca8b50d3da8bfe971796a54d;hb=f49968974e1477d4fd9cfdd87d867c9ad347678e;hpb=211dacfed540c8ddbf552c229c74b6054b185720 diff --git a/olm/src/main/java/org/opendaylight/transportpce/olm/power/PowerMgmtVersion710.java b/olm/src/main/java/org/opendaylight/transportpce/olm/power/PowerMgmtVersion710.java index fc33e1890..adbba537f 100644 --- a/olm/src/main/java/org/opendaylight/transportpce/olm/power/PowerMgmtVersion710.java +++ b/olm/src/main/java/org/opendaylight/transportpce/olm/power/PowerMgmtVersion710.java @@ -24,6 +24,7 @@ import org.opendaylight.transportpce.common.device.DeviceTransaction; import org.opendaylight.transportpce.common.device.DeviceTransactionManager; import org.opendaylight.yang.gen.v1.http.org.openroadm.common.link.types.rev191129.OpticalControlMode; import org.opendaylight.yang.gen.v1.http.org.openroadm.common.link.types.rev191129.PowerDBm; +import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev200529.OrgOpenroadmDeviceData; import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev200529.circuit.pack.Ports; import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev200529.circuit.pack.PortsKey; import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev200529.circuit.packs.CircuitPacks; @@ -39,6 +40,7 @@ import org.opendaylight.yang.gen.v1.http.org.openroadm.optical.channel.tributary import org.opendaylight.yang.gen.v1.http.org.openroadm.optical.channel.tributary.signal.interfaces.rev200529.Interface1Builder; import org.opendaylight.yang.gen.v1.http.org.openroadm.optical.channel.tributary.signal.interfaces.rev200529.otsi.container.OtsiBuilder; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +import org.opendaylight.yangtools.yang.common.Decimal64; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -65,9 +67,11 @@ public final class PowerMgmtVersion710 { */ public static Map getXponderPowerRange(String circuitPackName, String portName, String deviceId, DeviceTransactionManager deviceTransactionManager) { - InstanceIdentifier portIID = InstanceIdentifier.create(OrgOpenroadmDevice.class) - .child(CircuitPacks.class, new CircuitPacksKey(circuitPackName)) - .child(Ports.class, new PortsKey(portName)); + InstanceIdentifier portIID = InstanceIdentifier + .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class) + .child(CircuitPacks.class, new CircuitPacksKey(circuitPackName)) + .child(Ports.class, new PortsKey(portName)) + .build(); LOG.debug("Fetching logical Connection Point value for port {} at circuit pack {}", portName, circuitPackName); Optional portObject = deviceTransactionManager.getDataFromDevice(deviceId, LogicalDatastoreType.OPERATIONAL, portIID, @@ -106,9 +110,11 @@ public final class PowerMgmtVersion710 { String circuitPackName, String portName) { LOG.debug("Coming inside SRG power range"); LOG.debug("Mapping object exists."); - InstanceIdentifier portIID = InstanceIdentifier.create(OrgOpenroadmDevice.class) - .child(CircuitPacks.class, new CircuitPacksKey(circuitPackName)) - .child(Ports.class, new PortsKey(portName)); + InstanceIdentifier portIID = InstanceIdentifier + .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class) + .child(CircuitPacks.class, new CircuitPacksKey(circuitPackName)) + .child(Ports.class, new PortsKey(portName)) + .build(); LOG.debug("Fetching logical Connection Point value for port {} at circuit pack {}{}", portName, circuitPackName, portIID); Optional portObject = @@ -154,7 +160,7 @@ public final class PowerMgmtVersion710 { nodeId, interfaceName); InterfaceBuilder otsiInterfaceBuilder = new InterfaceBuilder(interfaceObj); OtsiBuilder otsiBuilder = new OtsiBuilder(otsiInterfaceBuilder.augmentation(Interface1.class).getOtsi()); - otsiBuilder.setTransmitPower(new PowerDBm(txPower)); + otsiBuilder.setTransmitPower(new PowerDBm(Decimal64.valueOf(txPower))); otsiInterfaceBuilder.addAugmentation(new Interface1Builder().setOtsi(otsiBuilder.build()).build()); Future> deviceTxFuture = deviceTransactionManager.getDeviceTransaction(nodeId); DeviceTransaction deviceTx; @@ -170,8 +176,10 @@ public final class PowerMgmtVersion710 { LOG.error("Unable to get transaction for device {} during transponder power setup!", nodeId, e); return false; } - InstanceIdentifier interfacesIID = InstanceIdentifier.create(OrgOpenroadmDevice.class) - .child(Interface.class, new InterfaceKey(interfaceName)); + InstanceIdentifier interfacesIID = InstanceIdentifier + .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class) + .child(Interface.class, new InterfaceKey(interfaceName)) + .build(); deviceTx.merge(LogicalDatastoreType.CONFIGURATION, interfacesIID, otsiInterfaceBuilder.build()); FluentFuture commit = deviceTx.commit(Timeouts.DEVICE_WRITE_TIMEOUT, Timeouts.DEVICE_WRITE_TIMEOUT_UNIT); @@ -217,7 +225,7 @@ public final class PowerMgmtVersion710 { RoadmConnectionsBuilder rdmConnBldr = new RoadmConnectionsBuilder(rdmConnOpt.get()); rdmConnBldr.setOpticalControlMode(mode); if (powerValue != null) { - rdmConnBldr.setTargetOutputPower(new PowerDBm(powerValue)); + rdmConnBldr.setTargetOutputPower(new PowerDBm(Decimal64.valueOf(powerValue))); } RoadmConnections newRdmConn = rdmConnBldr.build(); Future> deviceTxFuture = deviceTransactionManager.getDeviceTransaction(deviceId); @@ -234,8 +242,10 @@ public final class PowerMgmtVersion710 { return false; } // post the cross connect on the device - InstanceIdentifier roadmConnIID = InstanceIdentifier.create(OrgOpenroadmDevice.class) - .child(RoadmConnections.class, new RoadmConnectionsKey(connectionNumber)); + InstanceIdentifier roadmConnIID = InstanceIdentifier + .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class) + .child(RoadmConnections.class, new RoadmConnectionsKey(connectionNumber)) + .build(); deviceTx.merge(LogicalDatastoreType.CONFIGURATION, roadmConnIID, newRdmConn); FluentFuture commit = deviceTx.commit(Timeouts.DEVICE_WRITE_TIMEOUT, Timeouts.DEVICE_WRITE_TIMEOUT_UNIT);