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 const std::string& tableGroup =
"",
228 const std::string& contextGroup =
"",
230 bool suppressMultiNode =
false);
231 void handleSaveArtdaqNodeRecordsXML (
const std::string& nodeString,
232 const std::string& subsystemString,
235 const std::string& modifiedTables);
238 const std::string& contextGroupName =
"",
242 const std::string& layoutString,
243 const std::string& contextGroupName =
"",
248 std::string targetSubsystem =
"");
251 const std::string& groupName,
254 const std::string& diffGroupName =
"");
257 const std::string& tableName,
262 const std::string& searchText,
263 const bool activeGroupsOnly,
264 const std::string& groupType,
265 const std::string& optionGroups,
266 const std::string& versionsToCheck);
269 const std::string& searchText,
270 const std::string& tableName,
271 const std::string& searchVersionToCheck,
272 bool activeTablesOnly);
274 void testXDAQContext (
void);
278 CONFIGURATION_MANAGER_EXPIRATION_TIME = 60 * 60 * 24 * 2,
279 CONFIGURATION_MANAGER_REFRESH_THRESHOLD = 60 * 60 * 24,
285 std::map<std::string, ConfigurationManagerRW*> userConfigurationManagers_;
286 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)