CORD-1899-AAA-handle absence in sadis data

Change-Id: I6922e115634bd586500fe2fd50359f121fa09ce1
diff --git a/app/src/main/java/org/opencord/aaa/impl/PortBasedRadiusCommunicator.java b/app/src/main/java/org/opencord/aaa/impl/PortBasedRadiusCommunicator.java
index 4cdf958..8973a5f 100755
--- a/app/src/main/java/org/opencord/aaa/impl/PortBasedRadiusCommunicator.java
+++ b/app/src/main/java/org/opencord/aaa/impl/PortBasedRadiusCommunicator.java
@@ -259,13 +259,21 @@
             aaaManager.radiusOperationalStatusService.setStatusServerReqSent(false);
             return;
         }
-        ipToSnMap.put(deviceInfo.ipAddress(), serialNo);
+
         if (radiusPacket.getIdentifier() == RadiusOperationalStatusManager.AAA_REQUEST_ID_STATUS_REQUEST ||
                 radiusPacket.getIdentifier() == RadiusOperationalStatusManager.AAA_REQUEST_ID_FAKE_ACCESS_REQUEST) {
             aaaManager.radiusOperationalStatusService.setOutTimeInMillis(radiusPacket.getIdentifier());
         } else {
             aaaManager.aaaStatisticsManager.putOutgoingIdentifierToMap(radiusPacket.getIdentifier());
         }
+
+        Ip4Address ipAddress = deviceInfo.ipAddress();
+        if (ipAddress != null) {
+            ipToSnMap.put(ipAddress, serialNo);
+        } else {
+            log.warn("Cannot Map IpAddress to SerialNo : ipAddress = {}", ipAddress);
+        }
+
         // send the message out
         sendFromRadiusServerPort(pktCustomizer.
                 customizeEthernetIPHeaders(ethReply, inPkt));