String sourceTpId = link.getSrcTpId();
String destNodeId = link.getDestNodeId();
String destTpId = link.getDestTpid();
- OtsPmHolder srcOtsPmHoler = getPmMeasurements(sourceNodeId, sourceTpId, "OpticalPowerOutput");
- if (srcOtsPmHoler == null) {
- srcOtsPmHoler = getPmMeasurements(sourceNodeId, sourceTpId, "OpticalPowerOutputOSC");
- }
- OtsPmHolder destOtsPmHoler = getPmMeasurements(destNodeId, destTpId, "OpticalPowerInput");
- if (destOtsPmHoler == null) {
- destOtsPmHoler = getPmMeasurements(destNodeId, destTpId, "OpticalPowerInputOSC");
+ OtsPmHolder srcOtsPmHolder = getPmMeasurements(sourceNodeId, sourceTpId, "OpticalPowerOutput");
+ if (srcOtsPmHolder == null) {
+ srcOtsPmHolder = getPmMeasurements(sourceNodeId, sourceTpId, "OpticalPowerOutputOSC");
+ if (srcOtsPmHolder == null) {
+ LOG.warn("OTS configuration issue at {} - {}", sourceNodeId, sourceTpId);
+ continue;
+ }
}
-
- if (srcOtsPmHoler.getOtsInterfaceName() == null || destOtsPmHoler.getOtsInterfaceName() == null) {
- LOG.warn("OTS is not present for the link {}", link);
- continue;
+ OtsPmHolder destOtsPmHolder = getPmMeasurements(destNodeId, destTpId, "OpticalPowerInput");
+ if (destOtsPmHolder == null) {
+ destOtsPmHolder = getPmMeasurements(destNodeId, destTpId, "OpticalPowerInputOSC");
+ if (destOtsPmHolder == null) {
+ LOG.warn("OTS configuration issue at {} - {}", destNodeId, destTpId);
+ continue;
+ }
}
- spanLoss = BigDecimal.valueOf(srcOtsPmHoler.getOtsParameterVal() - destOtsPmHoler.getOtsParameterVal())
+ spanLoss = BigDecimal.valueOf(srcOtsPmHolder.getOtsParameterVal() - destOtsPmHolder.getOtsParameterVal())
.setScale(1, RoundingMode.HALF_UP);
LOG.info("Spanloss Calculated as :{}={}-{}",
- spanLoss, srcOtsPmHoler.getOtsParameterVal(), destOtsPmHoler.getOtsParameterVal());
+ spanLoss, srcOtsPmHolder.getOtsParameterVal(), destOtsPmHolder.getOtsParameterVal());
if (spanLoss.doubleValue() > 28) {
LOG.warn("Span Loss is out of range of OpenROADM specifications");
}
if (spanLoss.intValue() <= 0) {
spanLoss = BigDecimal.valueOf(0);
}
- if (!setSpanLoss(sourceNodeId, srcOtsPmHoler.getOtsInterfaceName(), spanLoss, "TX")) {
+ if (!setSpanLoss(sourceNodeId, srcOtsPmHolder.getOtsInterfaceName(), spanLoss, "TX")) {
LOG.info("Setting spanLoss failed for {}", sourceNodeId);
return null;
}
- if (!setSpanLoss(destNodeId, destOtsPmHoler.getOtsInterfaceName(), spanLoss, "RX")) {
+ if (!setSpanLoss(destNodeId, destOtsPmHolder.getOtsInterfaceName(), spanLoss, "RX")) {
LOG.info("Setting spanLoss failed for {}", destNodeId);
return null;
}
InstanceIdentifier<?> resourceKeyIID =
findClassKeyIdentifiers(input.getResourceType(), input.getResourceIdentifier());
+ if (resourceKeyIID == null) {
+ return pmOutputBuilder;
+ }
CurrentPmEntryKey resourceKey = new CurrentPmEntryKey(resourceKeyIID,
convertResourceTypeEnum(input.getResourceType()),"");
InstanceIdentifier<CurrentPmList> iidCurrentPmList = InstanceIdentifier.create(CurrentPmList.class);
private static InstanceIdentifier<?> findClassKeyIdentifiers(ResourceTypeEnum wantedResourceType,
ResourceIdentifier wantedResourceIdentifier) {
+ if (wantedResourceIdentifier.getResourceName() == null) {
+ LOG.debug("resource {} is null", wantedResourceType);
+ return null;
+ }
switch (wantedResourceType) {
case Device:
return InstanceIdentifier.create(OrgOpenroadmDevice.class);