[VOL-5488] fetch nni-port ID from voltdevice

Change-Id: I12a81dbb4e45cb4728f49d1d6324afc1ed6260b1
Signed-off-by: Akash Reddy Kankanala <akash.kankanala@radisys.com>
diff --git a/internal/pkg/application/application.go b/internal/pkg/application/application.go
index e8bc663..cc5e331 100644
--- a/internal/pkg/application/application.go
+++ b/internal/pkg/application/application.go
@@ -1168,7 +1168,7 @@
 	}
 	if len(d.(*VoltDevice).NniPort) > 0 {
 		for _, nniPort := range d.(*VoltDevice).NniPort {
-			nniPortID, err := GetApplication().GetPortID(nniPort)
+			nniPortID, err := GetApplication().GetDevicePortID(device, nniPort)
 			if err != nil {
 				logger.Errorw(ctx, "Error getting port ID by port Name", log.Fields{"Error": err})
 				continue
@@ -2349,3 +2349,16 @@
 		va.DevicesDisc.Store(id, device)
 	}
 }
+
+func (va *VoltApplication) GetDevicePortID(device, port string) (uint32, error) {
+	logger.Debugw(ctx, "Received Get Device Port ID", log.Fields{"Port": port})
+	d := va.GetDevice(device)
+	if d == nil {
+		return 0, fmt.Errorf("device not found: %s", device)
+	}
+	value, ok := d.Ports.Load(port)
+	if !ok {
+		return 0, fmt.Errorf("port not found: %s", port)
+	}
+	return value.(*VoltPort).ID, nil
+}