1 #ifndef _ots_Utilities_RemoteWebUsers_h
2 #define _ots_Utilities_RemoteWebUsers_h
5 #include "otsdaq-core/WebUsersUtilities/WebUsers.h"
6 #include "otsdaq-core/SOAPUtilities/SOAPMessenger.h"
7 #include "otsdaq-core/ConfigurationDataFormats/ConfigurationGroupKey.h"
15 class AllSupervisorInfo;
16 class HttpXmlDocument;
28 bool xmlRequestToGateway(
30 std::ostringstream* out,
51 std::string getActiveUserList (XDAQ_CONST_CALL xdaq::ApplicationDescriptor* supervisorDescriptor);
52 void sendSystemMessage (XDAQ_CONST_CALL xdaq::ApplicationDescriptor* supervisorDescriptor,
const std::string &toUser,
const std::string& msg);
53 void makeSystemLogbookEntry (XDAQ_CONST_CALL xdaq::ApplicationDescriptor* supervisorDescriptor,
const std::string &entryText);
54 std::pair<std::string ,
ConfigurationGroupKey> getLastConfigGroup (XDAQ_CONST_CALL xdaq::ApplicationDescriptor* supervisorDescriptor,
const std::string &actionOfLastGroup, std::string &actionTimeString);
58 bool cookieCodeIsActiveForRequest(
59 XDAQ_CONST_CALL xdaq::ApplicationDescriptor* supervisorDescriptor,
60 std::string& cookieCode,
61 uint8_t* userPermissions = 0,
63 bool refreshCookie =
true,
64 std::string* userWithLock = 0);
66 bool getUserInfoForCookie(
67 XDAQ_CONST_CALL xdaq::ApplicationDescriptor* supervisorDescriptor,
68 std::string& cookieCode,
69 std::string* userName,
70 std::string* displayName = 0,
71 uint64_t* activeSessionIndex = 0);
75 std::string ActiveUserList_;
76 time_t ActiveUserLastUpdateTime_;
79 ACTIVE_USERS_UPDATE_THRESHOLD = 10,
82 std::string tmpUserWithLock_, tmpUserGroups_, tmpUsername_;