diff options
-rw-r--r-- | manager.hpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/manager.hpp b/manager.hpp index 1c04c6a..e7a9a97 100644 --- a/manager.hpp +++ b/manager.hpp @@ -1,6 +1,7 @@ #pragma once #include <blobs-ipmid/blobs.hpp> +#include <chrono> #include <ctime> #include <ipmid/oemrouter.hpp> #include <memory> @@ -35,6 +36,12 @@ struct SessionInfo std::string blobId; GenericBlobInterface* handler; uint16_t flags; + + /* Initially set during open(). read/write/writeMeta/commit/stat operations + * would update it. + */ + std::chrono::time_point<std::chrono::steady_clock> lastActionTime = + std::chrono::steady_clock::now(); }; class ManagerInterface @@ -249,6 +256,7 @@ class BlobManager : public ManagerInterface if (auto item = sessions.find(session); item != sessions.end() && (item->second.flags & requiredFlags)) { + item->second.lastActionTime = std::chrono::steady_clock::now(); return item->second.handler; } return nullptr; |