diff --git a/middletier/cta/ArchivalRequest.cpp b/middletier/cta/ArchivalRequest.cpp index 7a1f5047ae1193d21c147f4891c1de70866bf8ac..2eea7f1c478633f22a176090ad2f68eb328c615c 100644 --- a/middletier/cta/ArchivalRequest.cpp +++ b/middletier/cta/ArchivalRequest.cpp @@ -17,7 +17,9 @@ cta::ArchivalRequest::~ArchivalRequest() throw() { // constructor //------------------------------------------------------------------------------ cta::ArchivalRequest::ArchivalRequest(const std::string &storageClassName, - const uint64_t priority): + const uint64_t priority, const std::string &id, const SecurityIdentity &user, + const time_t creationTime): + UserRequest(id, user, creationTime), m_storageClassName(storageClassName), m_priority(priority) { } diff --git a/middletier/cta/ArchivalRequest.hpp b/middletier/cta/ArchivalRequest.hpp index 48d23120ab9407ebda1581ba2bd0a5493b60dc59..4a89d15a93968ae6041c77b81f76b190c9bb477f 100644 --- a/middletier/cta/ArchivalRequest.hpp +++ b/middletier/cta/ArchivalRequest.hpp @@ -28,8 +28,14 @@ public: * * @param storageClassName The name of the storage class. * @param priority The priority of the request. + * @param id The identifier of the request. + * @param user The identity of the user who made the request. + * @param creationTime Optionally the absolute time at which the user request + * was created. If no value is given then the current time is used. */ - ArchivalRequest(const std::string &storageClassName, const uint64_t priority); + ArchivalRequest(const std::string &storageClassName, const uint64_t priority, + const std::string &id, const SecurityIdentity &user, + const time_t creationTime = time(NULL)); /** * Returns the name of the storage class. diff --git a/middletier/cta/RetrievalRequest.cpp b/middletier/cta/RetrievalRequest.cpp index 7528063841053849b5e7b9b29899b483833a7b14..be670a0300a761f5323f81f716090f1037a41e15 100644 --- a/middletier/cta/RetrievalRequest.cpp +++ b/middletier/cta/RetrievalRequest.cpp @@ -16,7 +16,10 @@ cta::RetrievalRequest::~RetrievalRequest() throw() { //------------------------------------------------------------------------------ // constructor //------------------------------------------------------------------------------ -cta::RetrievalRequest::RetrievalRequest(const uint64_t priority): +cta::RetrievalRequest::RetrievalRequest(const uint64_t priority, + const std::string &id, const SecurityIdentity &user, + const time_t creationTime): + UserRequest(id, user, creationTime), m_priority(priority) { } diff --git a/middletier/cta/RetrievalRequest.hpp b/middletier/cta/RetrievalRequest.hpp index 89e5313c144a5f8d33039de2fb7f473a2bfe7ba8..1189c37ff65d44286bc1772916c15cac3eb50785 100644 --- a/middletier/cta/RetrievalRequest.hpp +++ b/middletier/cta/RetrievalRequest.hpp @@ -26,8 +26,13 @@ public: * Constructor. * * @param priority The priority of the request. + * @param id The identifier of the request. + * @param user The identity of the user who made the request. + * @param creationTime Optionally the absolute time at which the user request + * was created. If no value is given then the current time is used. */ - RetrievalRequest(const uint64_t priority); + RetrievalRequest(const uint64_t priority, const std::string &id, + const SecurityIdentity &user, const time_t creationTime = time(NULL)); /** * Returns the priority of the request. diff --git a/middletier/cta/UserRequest.cpp b/middletier/cta/UserRequest.cpp index ffa847c6f7ba07de94a3b721acea97db4b7f72c3..0aa14515c3e575c1262705a55b4e6015bdb6d820 100644 --- a/middletier/cta/UserRequest.cpp +++ b/middletier/cta/UserRequest.cpp @@ -12,10 +12,10 @@ cta::UserRequest::UserRequest(): // constructor //------------------------------------------------------------------------------ cta::UserRequest::UserRequest(const std::string &id, - const SecurityIdentity &user): + const SecurityIdentity &user, const time_t creationTime): m_id(id), m_user(user), - m_creationTime(time(NULL)) { + m_creationTime(creationTime) { } //------------------------------------------------------------------------------ diff --git a/middletier/cta/UserRequest.hpp b/middletier/cta/UserRequest.hpp index c35ffad098b95c3b546df1a5c1c958b1f153bc27..aefa42c41d4a3aba6703ab7d6d025427bd89c6b5 100644 --- a/middletier/cta/UserRequest.hpp +++ b/middletier/cta/UserRequest.hpp @@ -21,15 +21,18 @@ public: /** * Destructor. */ - virtual ~UserRequest() throw(); + virtual ~UserRequest() throw() = 0; /** * Constructor. * * @param id The identifier of the request. * @param user The identity of the user who made the request. + * @param creationTime Optionally the absolute time at which the user request + * was created. If no value is given then the current time is used. */ - UserRequest(const std::string &id, const SecurityIdentity &user); + UserRequest(const std::string &id, const SecurityIdentity &user, + const time_t creationTime = time(NULL)); /** * Returns the identifier of the request.