From 907dafa3cbc28ae36f5a08f97a198e3455f5be8c Mon Sep 17 00:00:00 2001
From: Piotr Gawron <piotr.gawron@uni.lu>
Date: Tue, 25 Sep 2018 13:27:13 +0200
Subject: [PATCH] last request timestamp is available in session data

---
 frontend-js/src/main/js/ConfigurationType.js |  1 +
 frontend-js/src/main/js/SessionData.js       | 23 +++++++++++++++++++-
 2 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/frontend-js/src/main/js/ConfigurationType.js b/frontend-js/src/main/js/ConfigurationType.js
index a8acf88bbe..7134f1c579 100644
--- a/frontend-js/src/main/js/ConfigurationType.js
+++ b/frontend-js/src/main/js/ConfigurationType.js
@@ -15,6 +15,7 @@ var ConfigurationType = {
   REQUEST_ACCOUNT_EMAIL: "REQUEST_ACCOUNT_EMAIL",
   REQUEST_ACCOUNT_DEFAULT_CONTENT: "REQUEST_ACCOUNT_DEFAULT_CONTENT",
   SIMPLE_COLOR_VAL: "SIMPLE_COLOR_VAL",
+  SESSION_LENGTH: "SESSION_LENGTH",
   SHOW_ELEMENT_ABBREVIATION: "SHOW_ELEMENT_ABBREVIATION",
   SHOW_ELEMENT_ANNOTATIONS: "SHOW_ELEMENT_ANNOTATIONS",
   SHOW_ELEMENT_CHARGE: "SHOW_ELEMENT_CHARGE",
diff --git a/frontend-js/src/main/js/SessionData.js b/frontend-js/src/main/js/SessionData.js
index 32db59d92b..5d89ab83ea 100644
--- a/frontend-js/src/main/js/SessionData.js
+++ b/frontend-js/src/main/js/SessionData.js
@@ -15,12 +15,33 @@ var logger = require('./logger');
  * @constructor
  */
 function SessionData(project) {
+  var self = this;
   if (project === undefined) {
     throw new Error("Project must be passed as an argument");
   }
-  this.setProject(project);
+  self.setProject(project);
+
+  ServerConnector.addListener("onDataLoadStart", function () {
+    self.setLastRequestTimeStamp(Math.floor(Date.now() / 1000));
+  });
 }
 
+/**
+ *
+ * @param {number} timestamp time stamp in seconds
+ */
+SessionData.prototype.setLastRequestTimeStamp = function (timestamp) {
+  this._lastRequestTimeStamp = timestamp;
+};
+
+/**
+ *
+ * @returns {number} time stamp in seconds
+ */
+SessionData.prototype.getLastRequestTimeStamp = function () {
+  return this._lastRequestTimeStamp;
+};
+
 /**
  *
  * @param {Project} project
-- 
GitLab