- Sep 06, 2018
-
-
Sergey Linev authored
-
Sergey Linev authored
Only in such mode multithreading is allowed. In async mode one can meaningfully use send completion callback. Default mode is synchronous (as before), which allows to use handler only from main thread
-
Sergey Linev authored
Before one could submit as many operation as one wants to the websocket. In case of longpoll socket this lead to extra queue, which was not controlled by the user. Now each send operation is confirmed by callback. Only after such callback next send operation via websocket is allowed. Queue is organized externally (like in TWebWindow). For the longpoll engine this simplify internal logic and avoids queueing
-
Sergey Linev authored
Now no queues are allowed, all operation are confirmed by WS handler
-
Sergey Linev authored
-
Sergey Linev authored
Now one can directly register WS handlers to THttpServer If allowed, handlers can be precessed directly in the civetweb threads without involving of THttpServer thread at all. This allows to run many connections for many different web widgets absolutely independent from each other - there are no one bottleneck in http thread (or any other main thread)
-
Sergey Linev authored
-
Sergey Linev authored
-
Sergey Linev authored
In that folder all objects are registered, used by THttpServer This allows to avoid all kind of global lists and exclude interfereance between different instances of THttpServer. Such feature of main importance for TWebWindow(s), which should be possible to run from many threads without interfearing with gROOT
-
Sergey Linev authored
To avoid 100% of CPU usage, made regulat short sleeps for 1ms
-
Sergey Linev authored
Should be used only with default sniffer, which does not have access to any global lists
-
Sergey Linev authored
-
Sergey Linev authored
web socket engine should support this (default off) and web socket handler have to allow this
-
Sergey Linev authored
-
- Apr 24, 2018
-
-
Olivier Couet authored
-
Sergey Linev authored
THttpServer::SetTerminate() should only be used when really terminating application. In such mode connections and websockets not cleaned up properly Signed-off-by:
Olivier Couet <olivier.couet@gmail.com>
-
- Apr 19, 2018
-
-
Sergey Linev authored
target
-
Sergey Linev authored
Now all these classes defined in http library internally
-
Sergey Linev authored
-
Sergey Linev authored
Was used to implement text-based CEF messaging, which is not efficient
-
Sergey Linev authored
Set ownership and websocket ID directly in that method
-
Sergey Linev authored
-
Sergey Linev authored
-
Sergey Linev authored
-
Sergey Linev authored
It is small sub-class, which allows to start http server like: new THttpServer("https:4567?ssl_cert=certificate.pem"); Certificate should be provided in any case
-
- Apr 12, 2018
-
-
Sergey Linev authored
-
Sergey Linev authored
-
Sergey Linev authored
This data send by qt5 in URL, which does not support POST data. While Base64 coding may include "&", "?" or "=" symbols, they could harm UTL parsing.
-
Sergey Linev authored
-
Sergey Linev authored
In raw mode one should always use binary and add prefix
-
Sergey Linev authored
-
Sergey Linev authored
Should consistently solve all memory allocation - deallocation issues
-
Sergey Linev authored
Let set text, xml, json, binary content types and content itself
-
Sergey Linev authored
std::string also capable to keep binary data without limitation. Of course, c_str() makes no big sense, but anyway interpretation of that data fully user-specific
-
Sergey Linev authored
By using THttpCallArg::SetPostData(std::string &&buf) signature, one clearly identify that value will be moved and invalid afterwards
-
Sergey Linev authored
-
Sergey Linev authored
-
Sergey Linev authored
completed
-
Sergey Linev authored
In case of long poll engine requests should be holded until next send operation from the server starts. To correctly resolve ownership, shared_ptr should be used on all stages of processing
-
Sergey Linev authored
One can use std::string also for binary data (which may include '\0'). Of course, when use such data, one should be avare that str.length() can be larger then position of first '\0' symbol.
-