Definition at line 23 of file THttpLongPollEngine.h.
Public Member Functions | |
THttpLongPollEngine (bool raw=false) | |
constructor More... | |
virtual | ~THttpLongPollEngine ()=default |
void | ClearHandle (Bool_t) override |
clear request, normally called shortly before destructor More... | |
UInt_t | GetId () const override |
returns ID of the engine, created from this pointer More... | |
void | PostProcess (std::shared_ptr< THttpCallArg > &arg) override |
Normally requests from client does not replied directly for longpoll socket Therefore one can use such request to send data, which was submitted before to the queue. More... | |
Bool_t | PreProcess (std::shared_ptr< THttpCallArg > &arg) override |
Preview data for given socket Method called by WS handler before processing websocket data Returns kTRUE when user should ignore such http request - it is for internal use. More... | |
void | Send (const void *buf, int len) override |
Send binary data via connection. More... | |
void | SendCharStar (const char *buf) override |
Send const char data Either do it immediately or keep in internal buffer. More... | |
void | SendHeader (const char *hdr, const void *buf, int len) override |
Send binary data with text header via connection. More... | |
Public Member Functions inherited from THttpWSEngine | |
virtual | ~THttpWSEngine ()=default |
virtual void | ClearHandle (Bool_t)=0 |
virtual UInt_t | GetId () const =0 |
virtual void | PostProcess (std::shared_ptr< THttpCallArg > &arg) |
Method invoked after user process data received via websocket. More... | |
virtual Bool_t | PreProcess (std::shared_ptr< THttpCallArg > &arg) |
Method should be invoked before processing data coming from websocket If method returns kTRUE, data is processed internally and not dedicated for further usage. More... | |
virtual void | Send (const void *buf, int len)=0 |
virtual void | SendCharStar (const char *str) |
Envelope for sending string via the websocket. More... | |
virtual void | SendHeader (const char *hdr, const void *buf, int len)=0 |
Protected Member Functions | |
virtual Bool_t | CanSendDirectly () override |
Indicate that polling requests is there and can be immediately invoked. More... | |
std::string | MakeBuffer (const void *buf, int len, const char *hdr=nullptr) |
!< default reply on the longpoll request More... | |
Protected Member Functions inherited from THttpWSEngine | |
THttpWSEngine ()=default | |
virtual Bool_t | CanSendDirectly () |
One always can send data to websocket - as long as previous send operation completed. More... | |
virtual Bool_t | SupportSendThrd () const |
Indicate if engine require extra thread to complete postponed thread operation. More... | |
Protected Attributes | |
std::mutex | fMutex |
!< if true, only content can be used for data transfer More... | |
std::shared_ptr< THttpCallArg > | fPoll |
!< protect polling request to use it from different threads More... | |
bool | fRaw {false} |
Static Protected Attributes | |
static const std::string | gLongPollNope = "<<nope>>" |
!< hold polling request, which can be immediately used for the next sending More... | |
Friends | |
class | THttpServer |
THttpLongPollEngine::THttpLongPollEngine | ( | bool | raw = false | ) |
constructor
Definition at line 35 of file THttpLongPollEngine.cxx.
|
virtualdefault |
|
overrideprotectedvirtual |
Indicate that polling requests is there and can be immediately invoked.
Reimplemented from THttpWSEngine.
Definition at line 220 of file THttpLongPollEngine.cxx.
clear request, normally called shortly before destructor
Implements THttpWSEngine.
Definition at line 51 of file THttpLongPollEngine.cxx.
|
overridevirtual |
returns ID of the engine, created from this pointer
Implements THttpWSEngine.
Definition at line 42 of file THttpLongPollEngine.cxx.
|
protected |
!< default reply on the longpoll request
Create raw buffer which should be send as reply For the raw mode all information must be send via binary response.
Definition at line 70 of file THttpLongPollEngine.cxx.
|
overridevirtual |
Normally requests from client does not replied directly for longpoll socket Therefore one can use such request to send data, which was submitted before to the queue.
Reimplemented from THttpWSEngine.
Definition at line 211 of file THttpLongPollEngine.cxx.
|
overridevirtual |
Preview data for given socket Method called by WS handler before processing websocket data Returns kTRUE when user should ignore such http request - it is for internal use.
Reimplemented from THttpWSEngine.
Definition at line 176 of file THttpLongPollEngine.cxx.
Send binary data via connection.
Implements THttpWSEngine.
Definition at line 100 of file THttpLongPollEngine.cxx.
|
overridevirtual |
Send const char data Either do it immediately or keep in internal buffer.
Reimplemented from THttpWSEngine.
Definition at line 149 of file THttpLongPollEngine.cxx.
|
overridevirtual |
Send binary data with text header via connection.
Implements THttpWSEngine.
Definition at line 123 of file THttpLongPollEngine.cxx.
|
friend |
Definition at line 24 of file THttpLongPollEngine.h.
|
protected |
!< if true, only content can be used for data transfer
Definition at line 29 of file THttpLongPollEngine.h.
|
protected |
!< protect polling request to use it from different threads
Definition at line 30 of file THttpLongPollEngine.h.
|
protected |
Definition at line 28 of file THttpLongPollEngine.h.
|
staticprotected |
!< hold polling request, which can be immediately used for the next sending
Definition at line 31 of file THttpLongPollEngine.h.