cutelyst 4.3.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
Cutelyst::ServerEngine Class Referencefinal
Inheritance diagram for Cutelyst::ServerEngine:

Signals

void shutdown ()
 
void shutdownCompleted (Cutelyst::ServerEngine *engine)
 
void started ()
 
- Signals inherited from Cutelyst::Engine
void processRequestAsync (Cutelyst::EngineRequest *request)
 

Public Member Functions

 ServerEngine (Cutelyst::Application *localApp, int workerCore, const QVariantMap &opts, Server *wsgi)
 
void handleSocketShutdown (Socket *sock)
 
virtual bool init () override
 
QByteArray lastDate ()
 
void postFork (int workerId)
 
void setServers (const std::vector< QObject * > &servers)
 
virtual int workerId () const override
 
- Public Member Functions inherited from Cutelyst::Engine
 Engine (Application *app, int workerCore, const QVariantMap &opts)
 
virtual ~Engine ()
 
Applicationapp () const
 
QVariantMap config (const QString &entity) const
 
bool isZeroWorker () const
 
QVariantMap opts () const
 
void processRequest (EngineRequest *request)
 
void setConfig (const QVariantMap &config)
 
int workerCore () const
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
bool blockSignals (bool block)
 
const QObjectListchildren () const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectInfo () const const
 
void dumpObjectTree () const const
 
QList< QByteArraydynamicPropertyNames () const const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (Qt::FindChildOptions options) const const
 
bool inherits (const char *className) const const
 
void installEventFilter (QObject *filterObj)
 
bool isQuickItemType () const const
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const const
 
void moveToThread (QThread *targetThread)
 
QString objectName () const const
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
QVariant property (const char *name) const const
 
 Q_CLASSINFO (Name, Value)
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUM_NS (...)
 
 Q_ENUMS (...)
 
 Q_FLAG (...)
 
 Q_FLAG_NS (...)
 
 Q_FLAGS (...)
 
 Q_GADGET Q_GADGET
 
 Q_GADGET_EXPORT (EXPORT_MACRO)
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_MOC_INCLUDE Q_MOC_INCLUDE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qobject_cast (const QObject *object)
 
qobject_cast (QObject *object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
void removeEventFilter (QObject *obj)
 
void setObjectName (const QString &name)
 
void setObjectName (QAnyStringView name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const const
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
QThreadthread () const const
 

Public Attributes

int m_workerId
 
- Public Attributes inherited from QObject
typedef QObjectList
 

Protected Member Functions

void serverShutdown ()
 
void startSocketTimeout ()
 
void stopSocketTimeout ()
 
- Protected Member Functions inherited from Cutelyst::Engine
HeadersdefaultHeaders ()
 
bool initApplication ()
 
bool postForkApplication ()
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
QObjectsender () const const
 
int senderSignalIndex () const const
 
virtual void timerEvent (QTimerEvent *event)
 

Static Protected Member Functions

static QByteArray dateHeader ()
 

Friends

class Connection
 
class LocalServer
 
class ProtocolFastCGI
 
class ProtocolHttp
 
class Socket
 
class TcpServer
 
class TcpSslServer
 

Additional Inherited Members

- Static Public Member Functions inherited from Cutelyst::Engine
static const char * httpStatusMessage (quint16 status, int *len=nullptr)
 
static QVariantMap loadIniConfig (const QString &filename)
 
static QVariantMap loadJsonConfig (const QString &filename)
 
- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Definition at line 24 of file serverengine.h.

Constructor & Destructor Documentation

◆ ServerEngine()

ServerEngine::ServerEngine ( Cutelyst::Application localApp,
int  workerCore,
const QVariantMap &  opts,
Server wsgi 
)

Definition at line 41 of file serverengine.cpp.

◆ ~ServerEngine()

ServerEngine::~ServerEngine ( )
overridevirtual

Definition at line 76 of file serverengine.cpp.

Member Function Documentation

◆ dateHeader()

QByteArray ServerEngine::dateHeader ( )
staticprotected

Definition at line 161 of file serverengine.cpp.

◆ handleSocketShutdown()

void ServerEngine::handleSocketShutdown ( Socket sock)

Definition at line 207 of file serverengine.cpp.

◆ init()

bool ServerEngine::init ( )
overridevirtual

Initialize the engine and return true on success.

Implements Cutelyst::Engine.

Definition at line 198 of file serverengine.cpp.

References Cutelyst::Engine::initApplication().

◆ lastDate()

QByteArray Cutelyst::ServerEngine::lastDate ( )
inline

Definition at line 44 of file serverengine.h.

◆ postFork()

void ServerEngine::postFork ( int  workerId)

Definition at line 144 of file serverengine.cpp.

◆ serverShutdown()

void Cutelyst::ServerEngine::serverShutdown ( )
inlineprotected

Definition at line 75 of file serverengine.h.

◆ setServers()

void ServerEngine::setServers ( const std::vector< QObject * > &  servers)

Definition at line 88 of file serverengine.cpp.

◆ startSocketTimeout()

void Cutelyst::ServerEngine::startSocketTimeout ( )
inlineprotected

Definition at line 61 of file serverengine.h.

◆ stopSocketTimeout()

void Cutelyst::ServerEngine::stopSocketTimeout ( )
inlineprotected

Definition at line 68 of file serverengine.h.

◆ workerId()

int ServerEngine::workerId ( ) const
overridevirtual

Reimplement this to get the workerId of the engine subclass, this is the same as processes id.

The id is the number of the spawned engine process, a single process workerId = 0, two process 0 for the first 1 for the second.

Note
The value returned from this function is only valid when postFork() is issued.

Implements Cutelyst::Engine.

Definition at line 83 of file serverengine.cpp.

Friends And Related Symbol Documentation

◆ Connection

friend class Connection
friend

Definition at line 90 of file serverengine.h.

◆ LocalServer

friend class LocalServer
friend

Definition at line 87 of file serverengine.h.

◆ ProtocolFastCGI

friend class ProtocolFastCGI
friend

Definition at line 86 of file serverengine.h.

◆ ProtocolHttp

friend class ProtocolHttp
friend

Definition at line 85 of file serverengine.h.

◆ Socket

friend class Socket
friend

Definition at line 91 of file serverengine.h.

◆ TcpServer

friend class TcpServer
friend

Definition at line 88 of file serverengine.h.

◆ TcpSslServer

friend class TcpSslServer
friend

Definition at line 89 of file serverengine.h.

Member Data Documentation

◆ m_workerId

int Cutelyst::ServerEngine::m_workerId

Definition at line 40 of file serverengine.h.