import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
import org.opendaylight.transportpce.common.Timeouts;
import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.GetPmInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.GetPmOutputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.get.pm.output.Measurements;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.get.pm.output.MeasurementsBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.GetPmInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.GetPmOutputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.get.pm.output.Measurements;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.get.pm.output.MeasurementsBuilder;
+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;
import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev200529.current.pm.list.CurrentPmEntryKey;
import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev200529.current.pm.val.group.Measurement;
import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.types.rev161014.ResourceTypeEnum;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev201211.Direction;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev201211.Location;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev201211.PmNamesEnum;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev201211.olm.get.pm.input.ResourceIdentifier;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.Direction;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.Location;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.PmGranularity;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.PmNamesEnum;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.olm.get.pm.input.ResourceIdentifier;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.opendaylight.yangtools.yang.common.Uint16;
import org.slf4j.Logger;
LogicalDatastoreType.OPERATIONAL, iidCurrentPmList, Timeouts.DEVICE_READ_TIMEOUT,
Timeouts.DEVICE_READ_TIMEOUT_UNIT);
if (currentPmListOpt.isPresent()) {
- CurrentPmList currentPmList = currentPmListOpt.get();
+ CurrentPmList currentPmList = currentPmListOpt.orElseThrow();
@NonNull
Map<CurrentPmEntryKey, CurrentPmEntry> currentPmEntryList = currentPmList.nonnullCurrentPmEntry();
LOG.info("Current PM list exists for node {} and contains {} entries.", input.getNodeId(),
}
private static List<Measurements> extractWantedMeasurements(List<CurrentPm> currentPmList,
- org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev161014.PmGranularity wantedGranularity) {
+ PmGranularity wantedGranularity) {
List<Measurements> olmMeasurements = new ArrayList<>();
for (CurrentPm pm : currentPmList) {
for (Measurement measurements: pm.nonnullMeasurement().values()) {
ResourceIdentifier wantedResourceIdentifier) {
switch (wantedResourceType) {
case Device:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class);
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .build();
case Degree:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
- .child(Degree.class, new DegreeKey(Uint16.valueOf(wantedResourceIdentifier.getResourceName())));
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .child(Degree.class, new DegreeKey(Uint16.valueOf(wantedResourceIdentifier.getResourceName())))
+ .build();
case SharedRiskGroup:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
- .child(SharedRiskGroup.class,
- new SharedRiskGroupKey(Uint16.valueOf(wantedResourceIdentifier.getResourceName())));
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .child(
+ SharedRiskGroup.class,
+ new SharedRiskGroupKey(Uint16.valueOf(wantedResourceIdentifier.getResourceName())))
+ .build();
case Connection:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
- .child(RoadmConnections.class, new RoadmConnectionsKey(wantedResourceIdentifier.getResourceName()));
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .child(RoadmConnections.class, new RoadmConnectionsKey(wantedResourceIdentifier.getResourceName()))
+ .build();
case CircuitPack:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
- .child(CircuitPacks.class, new CircuitPacksKey(wantedResourceIdentifier.getResourceName()));
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .child(CircuitPacks.class, new CircuitPacksKey(wantedResourceIdentifier.getResourceName()))
+ .build();
case Port:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
.child(CircuitPacks.class, new CircuitPacksKey(wantedResourceIdentifier.getCircuitPackName()))
- .child(Ports.class, new PortsKey(wantedResourceIdentifier.getResourceName()));
+ .child(Ports.class, new PortsKey(wantedResourceIdentifier.getResourceName()))
+ .build();
case Interface:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
- .child(Interface.class, new InterfaceKey(wantedResourceIdentifier.getResourceName()));
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .child(Interface.class, new InterfaceKey(wantedResourceIdentifier.getResourceName()))
+ .build();
case InternalLink:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
- .child(InternalLink.class, new InternalLinkKey(wantedResourceIdentifier.getResourceName()));
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .child(InternalLink.class, new InternalLinkKey(wantedResourceIdentifier.getResourceName()))
+ .build();
case PhysicalLink:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
- .child(PhysicalLink.class, new PhysicalLinkKey(wantedResourceIdentifier.getResourceName()));
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .child(PhysicalLink.class, new PhysicalLinkKey(wantedResourceIdentifier.getResourceName()))
+ .build();
case Shelf:
- return InstanceIdentifier.create(OrgOpenroadmDevice.class)
- .child(Shelves.class, new ShelvesKey(wantedResourceIdentifier.getResourceName()));
+ return InstanceIdentifier
+ .builderOfInherited(OrgOpenroadmDeviceData.class, OrgOpenroadmDevice.class)
+ .child(Shelves.class, new ShelvesKey(wantedResourceIdentifier.getResourceName()))
+ .build();
default:
LOG.error("Unknown resource type {}", wantedResourceType);
return null;