tdaq-develop-2025-02-12
ECLConnection.h
1 #ifndef __ECLCONNECTION_HPP_
2 #define __ECLCONNECTION_HPP_
3 
4 #include <curl/curl.h>
5 #include <iostream>
6 #include <string>
7 
8 #include <otsdaq-utilities/ECLWriter/ECL.hxx>
9 
18 {
19  public:
20  ECLConnection(std::string user, std::string password, std::string url);
21  ~ECLConnection(){};
22 
23  const std::string& getSafeURL(void) const { return _safe_url; }
24  bool Post(ECLEntry_t& e);
25  bool Get(std::string, std::string&);
26  bool Search(std::string);
27 
28  static std::string EscapeECLString(std::string input = "");
29 
30  static Attachment_t MakeAttachmentImage(std::string const& imageFileName);
31 
32  static Attachment_t MakeAttachmentFile(std::string const& fileName);
33 
34  private:
35  std::string MakeSaltString();
36  static size_t WriteMemoryCallback(char*, size_t, size_t, std::string*);
37 
38  std::string _user;
39  std::string _pwd;
40  std::string _url, _safe_url;
41  time_t _lastOperationTime = 0;
42 };
43 
44 #endif
bool Get(std::string, std::string &)
Note: make sure GET url parameter 's' is URI encoded.
Definition: ECL.hxx:495