Distribute authentication state amongst the cluster

Change-Id: I63f36b3e2e5830241a2cb4e1c084d9e214995d2b
diff --git a/api/src/main/java/org/opencord/aaa/AuthenticationRecord.java b/api/src/main/java/org/opencord/aaa/AuthenticationRecord.java
index 5433fd9..a0d099f 100644
--- a/api/src/main/java/org/opencord/aaa/AuthenticationRecord.java
+++ b/api/src/main/java/org/opencord/aaa/AuthenticationRecord.java
@@ -32,6 +32,8 @@
 
     private final String state;
 
+    private final long lastChanged;
+
     /**
      * Creates a new authentication record.
      *
@@ -39,13 +41,15 @@
      * @param username user name
      * @param supplicantAddress MAC address of supplicant
      * @param state authentication state
+     * @param lastChanged timestamp of latest activity
      */
     public AuthenticationRecord(ConnectPoint supplicantConnectPoint, byte[] username,
-                                MacAddress supplicantAddress, String state) {
+                                MacAddress supplicantAddress, String state, long lastChanged) {
         this.supplicantConnectPoint = supplicantConnectPoint;
         this.username = username;
         this.supplicantAddress = supplicantAddress;
         this.state = state;
+        this.lastChanged = lastChanged;
     }
 
     /**
@@ -83,4 +87,13 @@
     public String state() {
         return state;
     }
+
+    /**
+     * Gets the timestamp of the last activity on this authentication.
+     *
+     * @return timestamp
+     */
+    public long lastChanged() {
+        return lastChanged;
+    }
 }