![]() |
cutelyst 4.3.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
|

Public Types | |
| enum | OpCode { OpCodeContinue , OpCodeText , OpCodeBinary , OpCodeReserved3 , OpCodeReserved4 , OpCodeReserved5 , OpCodeReserved6 , OpCodeReserved7 , OpCodeClose , OpCodePing , OpCodePong , OpCodeReservedB , OpCodeReservedC , OpCodeReservedD , OpCodeReservedE , OpCodeReservedF } |
| enum | WebSocketPhase { WebSocketPhaseHeaders , WebSocketPhaseSize , WebSocketPhaseMask , WebSocketPhasePayload } |
Public Types inherited from Cutelyst::ProtocolData | |
| enum class | HeaderConnection { NotSet , Keep , Close , Upgrade } |
| enum | ParserState { MethodLine , HeaderLine , ContentBody , H2Frames } |
Public Types inherited from Cutelyst::EngineRequest | |
| enum | StatusFlag : quint8 { InitialState , FinalizedHeaders , IOWrite , Chunked , ChunkedDone , Async , Finalized } |
Public Member Functions | |
| ProtoRequestHttp (Socket *sock, int bufferSize) | |
| qint64 | doWrite (const char *data, qint64 len) override final |
| qint64 | doWrite (const QByteArray &data) |
| void | processingFinished () override final |
| void | resetData () override final |
| void | setupNewConnection (Socket *sock) override final |
| virtual void | socketDisconnected () override final |
| bool | webSocketClose (quint16 code, const QString &reason) override final |
| bool | webSocketSendBinaryMessage (const QByteArray &message) override final |
| bool | webSocketSendPing (const QByteArray &payload) override final |
| bool | webSocketSendTextMessage (const QString &message) override final |
| bool | writeHeaders (quint16 status, const Cutelyst::Headers &headers) override final |
Public Member Functions inherited from Cutelyst::ProtocolData | |
| ProtocolData (Socket *sock, int bufferSize) | |
Public Member Functions inherited from Cutelyst::EngineRequest | |
| void | finalize () |
| virtual void | finalizeBody () |
| virtual void | finalizeCookies () |
| virtual void | finalizeError () |
| virtual bool | finalizeHeaders () |
| void | setPath (char *rawPath, const int len) |
| void | setPath (QByteArray &path) |
| bool | webSocketHandshake (const QByteArray &key, const QByteArray &origin, const QByteArray &protocol) |
| qint64 | write (const char *data, qint64 len) |
Public Attributes | |
| int | beginLine |
| int | last |
| quint8 | websocket_continue_opcode |
| quint8 | websocket_finn_opcode |
| quint32 | websocket_mask |
| QByteArray | websocket_message |
| quint32 | websocket_need |
| QByteArray | websocket_payload |
| quint64 | websocket_payload_size |
| int | websocket_phase |
| int | websocket_start_of_frame |
| bool | websocketUpgraded |
Public Attributes inherited from Cutelyst::ProtocolData | |
| int | buf_size |
| char * | buffer |
| ParserState | connState |
| qint64 | contentLength |
| HeaderConnection | headerConnection |
| bool | headerHost |
| QIODevice * | io |
| Socket * | sock |
| ProtocolData * | upgradedFrom |
| bool | X_Forwarded_For |
| bool | X_Forwarded_Host |
| bool | X_Forwarded_Proto |
Public Attributes inherited from Cutelyst::EngineRequest | |
| QIODevice * | body |
| Context * | context |
| Headers | headers |
| bool | isSecure |
| QByteArray | method |
| QString | path |
| QByteArray | protocol |
| QByteArray | query |
| QHostAddress | remoteAddress |
| quint16 | remotePort |
| QString | remoteUser |
| QByteArray | serverAddress |
| TimePointSteady | startOfRequest |
| Status | status |
Protected Member Functions | |
| bool | webSocketHandshakeDo (const QByteArray &key, const QByteArray &origin, const QByteArray &protocol) override final |
Definition at line 18 of file protocolhttp.h.
| enum Cutelyst::ProtoRequestHttp::OpCode |
Definition at line 32 of file protocolhttp.h.
| enum Cutelyst::ProtoRequestHttp::WebSocketPhase |
Definition at line 24 of file protocolhttp.h.
| ProtoRequestHttp::ProtoRequestHttp | ( | Socket * | sock, |
| int | bufferSize | ||
| ) |
Definition at line 321 of file protocolhttp.cpp.
|
override |
Definition at line 327 of file protocolhttp.cpp.
|
finaloverridevirtual |
Reimplement this to do the RAW writing to the client
Implements Cutelyst::EngineRequest.
Definition at line 397 of file protocolhttp.cpp.
References QIODevice::write().
|
inline |
Definition at line 60 of file protocolhttp.h.
|
finaloverridevirtual |
This is called when the Application chain is finished processing this request, here the request can send final bytes to the client or do a clean up.
Default implementation deletes both body and context.
If a WebSocket upgrade was made then you will want to keep the context object around.
Reimplemented from Cutelyst::EngineRequest.
Definition at line 402 of file protocolhttp.cpp.
References Cutelyst::EngineRequest::status.
|
inlinefinaloverridevirtual |
Reimplemented from Cutelyst::ProtocolData.
Definition at line 72 of file protocolhttp.h.
|
finaloverridevirtual |
Implements Cutelyst::ProtocolData.
Definition at line 331 of file protocolhttp.cpp.
|
finaloverridevirtual |
Reimplemented from Cutelyst::ProtocolData.
Definition at line 495 of file protocolhttp.cpp.
|
finaloverridevirtual |
Reimplemented from Cutelyst::EngineRequest.
Definition at line 480 of file protocolhttp.cpp.
|
finaloverrideprotectedvirtual |
Reimplemented from Cutelyst::EngineRequest.
Definition at line 505 of file protocolhttp.cpp.
|
finaloverridevirtual |
Reimplemented from Cutelyst::EngineRequest.
Definition at line 452 of file protocolhttp.cpp.
|
finaloverridevirtual |
Reimplemented from Cutelyst::EngineRequest.
Definition at line 466 of file protocolhttp.cpp.
|
finaloverridevirtual |
Reimplemented from Cutelyst::EngineRequest.
Definition at line 437 of file protocolhttp.cpp.
|
finaloverridevirtual |
Reimplement this to write the headers back to the client
Implements Cutelyst::EngineRequest.
Definition at line 338 of file protocolhttp.cpp.
References QByteArray::append(), Qt::CaseInsensitive, QByteArray::compare(), Cutelyst::Headers::data(), Cutelyst::EngineRequest::headers, Cutelyst::Engine::httpStatusMessage(), Cutelyst::EngineRequest::protocol, QByteArray::size(), Cutelyst::EngineRequest::status, and QIODevice::write().
| int Cutelyst::ProtoRequestHttp::beginLine |
Definition at line 106 of file protocolhttp.h.
| int Cutelyst::ProtoRequestHttp::last |
Definition at line 105 of file protocolhttp.h.
| quint8 Cutelyst::ProtoRequestHttp::websocket_continue_opcode |
Definition at line 109 of file protocolhttp.h.
| quint8 Cutelyst::ProtoRequestHttp::websocket_finn_opcode |
Definition at line 110 of file protocolhttp.h.
| quint32 Cutelyst::ProtoRequestHttp::websocket_mask |
Definition at line 104 of file protocolhttp.h.
| QByteArray Cutelyst::ProtoRequestHttp::websocket_message |
Definition at line 100 of file protocolhttp.h.
| quint32 Cutelyst::ProtoRequestHttp::websocket_need |
Definition at line 103 of file protocolhttp.h.
| QByteArray Cutelyst::ProtoRequestHttp::websocket_payload |
Definition at line 101 of file protocolhttp.h.
| quint64 Cutelyst::ProtoRequestHttp::websocket_payload_size |
Definition at line 102 of file protocolhttp.h.
| int Cutelyst::ProtoRequestHttp::websocket_phase |
Definition at line 108 of file protocolhttp.h.
| int Cutelyst::ProtoRequestHttp::websocket_start_of_frame |
Definition at line 107 of file protocolhttp.h.
| bool Cutelyst::ProtoRequestHttp::websocketUpgraded |
Definition at line 111 of file protocolhttp.h.