19 #include "controller.h"
35 return Component::OnlyExecute;
43 d->evaluateBool =
true;
47 d->listSignature =
true;
70 d->numberOfArgs = qint8(argsAttr.
toInt());
75 d->numberOfCaptures = qint8(capturesAttr.
toInt());
88 return d->attributes.value(
name, defaultValue);
106 return d->controller;
116 return d->numberOfArgs == -1 || d->numberOfArgs ==
numberOfArgs;
126 return d->numberOfCaptures == -1 || d->numberOfCaptures ==
numberOfCaptures;
138 return d->numberOfArgs;
144 return d->numberOfCaptures;
155 if (d->evaluateBool) {
158 if (d->listSignature) {
159 ret = d->method.invoke(d->controller,
161 Q_RETURN_ARG(
bool, methodRet),
167 args.
append(d->emptyArgs);
169 ret = d->method.invoke(d->controller,
171 Q_RETURN_ARG(
bool, methodRet),
195 if (d->listSignature) {
196 ret = d->method.invoke(d->controller,
203 args.
append(d->emptyArgs);
205 ret = d->method.invoke(d->controller,
223 #include "moc_action.cpp"
This class represents a Cutelyst Action.
void setAttributes(const ParamsMultiMap &attributes)
QString attribute(const QString &name, const QString &defaultValue=QString()) const
void setupAction(const QVariantHash &args, Application *app)
virtual bool match(int numberOfArgs) const
virtual qint8 numberOfArgs() const
virtual bool doExecute(Context *c) override
ParamsMultiMap attributes() const
QString className() const
void setMethod(const QMetaMethod &method)
Action(QObject *parent=nullptr)
virtual qint8 numberOfCaptures() const
virtual Modifiers modifiers() const override
void setController(Controller *controller)
virtual bool matchCaptures(int numberOfCaptures) const
Controller * controller() const
The Cutelyst Application.
The Cutelyst Component base class.
virtual bool init(Application *application, const QVariantHash &args)
void setState(bool state)
Sets the state of the current executed action, setting to false will make the dispatcher skip non pro...
void detach(Action *action=nullptr)
Cutelyst Controller base class
The Cutelyst namespace holds all public Cutelyst API.
void append(const T &value)
const T & at(int i) const const
const T value(const Key &key, const T &defaultValue) const const
QString fromLatin1(const char *str, int size)
bool isEmpty() const const
int toInt(bool *ok, int base) const const