1 #ifndef _ots_ConfigurationGUISupervisor_h_
2 #define _ots_ConfigurationGUISupervisor_h_
4 #include "otsdaq/ConfigurationInterface/ConfigurationManagerRW.h"
5 #include "otsdaq/CoreSupervisors/CoreSupervisorBase.h"
16 static xdaq::Application*
instantiate(xdaq::ApplicationStub* s);
24 virtual void defaultPage (xgi::Input* in, xgi::Output* out)
override;
25 virtual void request (
const std::string& requestType,cgicc::Cgicc& cgiIn,
HttpXmlDocument& xmlOut,
const WebUsers::RequestUserInfo& userInfo)
override;
33 std::string& tableName,
34 const std::string& columnCSV,
35 const std::string& tableDescription,
36 const std::string& columnChoicesCSV,
37 bool allowOverwrite =
false);
40 std::string& tableName);
45 const std::string& groupAliasCSV,
46 const std::string& groupNameCSV,
47 const std::string& groupKeyCSV,
48 const std::string& author);
51 const std::string& versionAlias,
52 const std::string& tableName,
54 const std::string& author);
57 const std::string& versionAlias,
58 const std::string& groupName,
60 const std::string& author);
67 const std::string& configList);
71 const std::string& filterStartTime,
72 const std::string& filterEndTime,
73 const std::string& filterMode =
"created" );
76 const std::string& tableName,
78 bool allowIllegalColumns =
false,
79 bool getRawData =
false,
80 bool descriptionOnly =
false);
84 const std::string& groupName,
86 const std::string& modifiedTables,
87 bool refreshAll =
true,
88 bool getGroupInfo =
false,
89 std::map<std::string ,
91 bool outputActiveTables =
true,
92 std::string* accumulatedErrors = 0);
95 const std::string& groupName,
97 const std::string& startPath,
100 const std::string& modifiedTables,
101 const std::string& filterList,
102 const std::string& diffGroupName =
"",
107 DOMElement* parentEl,
108 bool hideStatusFalse,
109 std::optional<std::reference_wrapper<const ConfigurationTree>> diffTree = std::nullopt);
112 const std::string& groupName,
114 const std::string& startPath,
116 const std::string& modifiedTables,
117 const std::string& recordList,
118 const std::string& fieldList);
121 const std::string& groupName,
123 const std::string& startPath,
124 const std::string& modifiedTables,
125 const std::string& recordList,
126 const std::string& fieldList);
129 const std::string& groupName,
131 const std::string& startPath,
132 const std::string& modifiedTables,
133 const std::string& recordList,
134 const std::string& fieldList);
137 const std::string& groupName,
139 const std::string& startPath,
140 const std::string& modifiedTables,
141 const std::string& recordList,
142 const std::string& fieldList,
143 const std::string& valueList,
144 const std::string& author);
147 const std::string& groupName,
149 const std::string& startPath,
150 const std::string& modifiedTables,
151 const std::string& recordList,
152 const std::string& author);
155 const std::string& groupName,
157 const std::string& startPath,
158 const std::string& modifiedTables,
159 const std::string& recordList);
162 const std::string& groupName,
164 const std::string& startPath,
165 const std::string& modifiedTables,
166 const std::string& recordList,
167 const std::string& newRecordList);
170 const std::string& groupName,
172 const std::string& startPath,
173 const std::string& modifiedTables,
174 const std::string& recordList,
175 unsigned int numberOfCopies = 1);
180 const std::string& tableName,
182 const std::string& type,
183 const std::string& uid,
184 const std::string& column,
185 const std::string& newValue,
186 const std::string& author);
189 const std::string& rootGroupName,
191 const std::string& modifiedTables);
194 const std::string& linkToTableName,
196 const std::string& linkIdType,
197 const std::string& linkIndex,
198 const std::string& linkInitId);
202 const std::string& groupName,
204 const std::string& modifiedTables,
205 const std::string& author,
206 const std::string& planName,
207 const std::string& commandString);
211 const std::string& groupANameContext,
213 const std::string& groupBNameContext,
215 const std::string& groupANameConfig,
217 const std::string& groupBNameConfig,
219 const std::string& author,
220 const std::string& mergeApproach);
225 const std::string& modifiedTables);
226 void handleSaveArtdaqNodeRecordsXML (
const std::string& nodeString,
227 const std::string& subsystemString,
230 const std::string& modifiedTables);
233 const std::string& contextGroupName =
"",
237 const std::string& layoutString,
238 const std::string& contextGroupName =
"",
243 std::string targetSubsystem =
"");
246 const std::string& groupName,
249 const std::string& diffGroupName =
"");
252 const std::string& tableName,
257 const std::string& searchText,
258 const bool activeGroupsOnly,
259 const std::string& groupType,
260 const std::string& optionGroups,
261 const std::string& versionsToCheck);
264 const std::string& searchText,
265 const std::string& tableName,
266 const std::string& searchVersionToCheck,
267 bool activeTablesOnly);
269 void testXDAQContext (
void);
273 CONFIGURATION_MANAGER_EXPIRATION_TIME = 60 * 60 * 24 * 2,
274 CONFIGURATION_MANAGER_REFRESH_THRESHOLD = 60 * 60 * 24,
280 std::map<std::string, ConfigurationManagerRW*> userConfigurationManagers_;
281 std::map<std::string, time_t> userLastUseTime_;
virtual void forceSupervisorPropertyValues(void) override
override to force supervisor property values (and ignore user settings)
virtual void setSupervisorPropertyDefaults(void) override
ConfigurationGUISupervisor(xdaq::ApplicationStub *s)
static xdaq::Application * instantiate(xdaq::ApplicationStub *s)