Cutelyst
2.13.0
|
The Cutelyst Component base class. More...
#include <Cutelyst/Component>
Public Types | |
enum | Modifier { None, OnlyExecute, BeforeExecute, AroundExecute, AfterExecute } |
Public Member Functions | |
Component (QObject *parent=nullptr) | |
bool | execute (Context *c) |
virtual bool | init (Application *application, const QVariantHash &args) |
virtual Modifiers | modifiers () const |
QString | name () const |
QString | reverse () const |
void | setName (const QString &name) |
void | setReverse (const QString &reverse) |
Protected Member Functions | |
Component (ComponentPrivate *d, QObject *parent=nullptr) | |
A derived class using pimpl should call this constructor, to reduce the number of memory allocations. | |
virtual bool | afterExecute (Context *c) |
void | applyRoles (const QStack< Component * > &roles) |
virtual bool | aroundExecute (Context *c, QStack< Component * > stack) |
virtual bool | beforeExecute (Context *c) |
virtual bool | dispatcherReady (const Dispatcher *dispatch, Controller *controller) |
virtual bool | doExecute (Context *c) |
Friends | |
class | Controller |
This is the base class of a Cutelyst component
Definition at line 38 of file component.h.
This value defines which kind of modifiers should be executed
Definition at line 45 of file component.h.
|
explicit |
This is the base class for many Cutelyst objects, prividing access to name and reverse for actions, and modifiers to customize execution.
Definition at line 24 of file component.cpp.
|
protectedvirtual |
Reimplement this if you want to do processing after doExecute
Definition at line 132 of file component.cpp.
|
protected |
Call this to install before, around and after roles
Definition at line 144 of file component.cpp.
Reimplement this if you want to do processing around doExecute, you must call doExecute yourself then
Reimplemented in Cutelyst::RoleACL.
Definition at line 114 of file component.cpp.
References aroundExecute(), and doExecute().
Referenced by Cutelyst::RoleACL::aroundExecute(), aroundExecute(), and execute().
|
protectedvirtual |
Reimplement this if you want to do processing before doExecute
Definition at line 108 of file component.cpp.
|
protectedvirtual |
Called by dispatcher once it's done preparing actions
Subclasses might want to implement this to cache special actions, such as special methods for REST actions
Reimplemented in Cutelyst::RoleACL.
Definition at line 165 of file component.cpp.
|
protectedvirtual |
Reimplement this for the main processing
Reimplemented in Cutelyst::RenderView, Cutelyst::Action, Cutelyst::ActionChain, and Cutelyst::ActionREST.
Definition at line 138 of file component.cpp.
Referenced by aroundExecute(), and execute().
bool Component::execute | ( | Context * | c | ) |
Executes this component agains the Context
Definition at line 75 of file component.cpp.
References aroundExecute(), and doExecute().
Referenced by Cutelyst::Context::execute().
|
virtual |
A Does class is always attached to an action, if this method returns false the application will fail to start. Often useful if the user misconfigured the settings
Reimplemented in Cutelyst::RoleACL, and Cutelyst::RenderView.
Definition at line 68 of file component.cpp.
Referenced by Cutelyst::RenderView::init(), and Cutelyst::Action::setupAction().
|
virtual |
Reimplement to return custom Modifiers, default is None
Reimplemented in Cutelyst::Action, Cutelyst::View, and Cutelyst::RoleACL.
Definition at line 39 of file component.cpp.
QString Component::name | ( | ) | const |
Returns the sub name of this Component.
Definition at line 44 of file component.cpp.
Referenced by Cutelyst::Action::attribute(), Cutelyst::AuthenticationRealm::AuthenticationRealm(), Cutelyst::Context::execute(), Cutelyst::DispatchTypeChained::registerAction(), Cutelyst::Application::registerView(), setName(), Cutelyst::ClearSilver::setWrapper(), Cutelyst::GrantleeView::setWrapper(), Cutelyst::CuteleeView::setWrapper(), Cutelyst::Authentication::userInRealm(), and Cutelyst::View::View().
QString Component::reverse | ( | ) | const |
Returns the private name of this component.
Definition at line 56 of file component.cpp.
Referenced by Cutelyst::Context::execute(), Cutelyst::DispatchTypeChained::list(), Cutelyst::DispatchTypeChained::match(), Cutelyst::DispatchTypeChained::registerAction(), Cutelyst::ClearSilver::render(), Cutelyst::GrantleeView::render(), Cutelyst::CuteleeView::render(), setReverse(), and Cutelyst::Application::setup().
void Component::setName | ( | const QString & | name | ) |
Defines the sub name of this Component.
Definition at line 50 of file component.cpp.
References name().
Referenced by Cutelyst::ActionChain::ActionChain(), Cutelyst::AuthenticationRealm::AuthenticationRealm(), and Cutelyst::View::View().
void Component::setReverse | ( | const QString & | reverse | ) |
Defines the private name of this Component.
Definition at line 62 of file component.cpp.
References reverse().
Referenced by Cutelyst::ActionChain::ActionChain(), and Cutelyst::Application::setup().