|
Cutelyst
2.14.2
|
JSON view for your data. More...
#include <Cutelyst/Plugins/JSON/viewjson.h>

Public Types | |
| enum | ExposeMode { All, String, StringList, RegularExpression } |
| enum | JsonFormat { Indented, Compact } |
Public Types inherited from Cutelyst::Component | |
| enum | Modifier { None, OnlyExecute, BeforeExecute, AroundExecute, AfterExecute } |
Public Member Functions | |
| ViewJson (QObject *parent, const QString &name=QString()) | |
| ExposeMode | exposeStashMode () const |
| JsonFormat | outputFormat () const |
| QByteArray | render (Context *c) const final |
| void | setExposeStash (const QString &key) |
| void | setExposeStash (const QStringList &keys) |
| void | setExposeStash (const QRegularExpression &re) |
| void | setOutputFormat (JsonFormat format) |
| void | setXJsonHeader (bool enable) |
| bool | xJsonHeader () const |
Public Member Functions inherited from Cutelyst::View | |
| View (QObject *parent, const QString &name) | |
| virtual Modifiers | modifiers () const override |
| void | setMinimalSizeToDeflate (qint32 minSize=-1) |
Public Member Functions inherited from Cutelyst::Component | |
| Component (QObject *parent=nullptr) | |
| bool | execute (Context *c) |
| virtual bool | init (Application *application, const QVariantHash &args) |
| QString | name () const |
| QString | reverse () const |
| void | setName (const QString &name) |
| void | setReverse (const QString &reverse) |
Public Member Functions inherited from QObject | |
| QObject (QObject *parent) | |
| bool | blockSignals (bool block) |
| const QObjectList & | children () const |
| QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const |
| void | deleteLater () |
| void | destroyed (QObject *obj) |
| bool | disconnect (const char *signal, const QObject *receiver, const char *method) const |
| bool | disconnect (const QObject *receiver, const char *method) const |
| void | dumpObjectInfo () |
| void | dumpObjectTree () |
| QList< QByteArray > | dynamicPropertyNames () const |
| virtual bool | event (QEvent *e) |
| virtual bool | eventFilter (QObject *watched, QEvent *event) |
| T | findChild (const QString &name, Qt::FindChildOptions options) const |
| QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const |
| QList< T > | findChildren (const QRegExp ®Exp, Qt::FindChildOptions options) const |
| QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const |
| bool | inherits (const char *className) const |
| void | installEventFilter (QObject *filterObj) |
| bool | isWidgetType () const |
| bool | isWindowType () const |
| void | killTimer (int id) |
| virtual const QMetaObject * | metaObject () const |
| void | moveToThread (QThread *targetThread) |
| QString | objectName () const |
| void | objectNameChanged (const QString &objectName) |
| QObject * | parent () const |
| QVariant | property (const char *name) const |
| void | removeEventFilter (QObject *obj) |
| void | setObjectName (const QString &name) |
| void | setParent (QObject *parent) |
| bool | setProperty (const char *name, const QVariant &value) |
| bool | signalsBlocked () const |
| int | startTimer (int interval, Qt::TimerType timerType) |
| QThread * | thread () const |
Additional Inherited Members | |
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 *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
| QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
| QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
| 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, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
| bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
| QString | tr (const char *sourceText, const char *disambiguation, int n) |
| QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
Protected Member Functions inherited from Cutelyst::View | |
| View (ViewPrivate *d, QObject *parent, const QString &name) | |
| A derived class using pimpl should call this constructor, to reduce the number of memory allocations. | |
Protected Member Functions inherited from Cutelyst::Component | |
| 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) |
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 |
| int | receivers (const char *signal) const |
| QObject * | sender () const |
| int | senderSignalIndex () const |
| virtual void | timerEvent (QTimerEvent *event) |
Properties inherited from QObject | |
| objectName | |
Cutelyst::ViewJSON is a Cutelyst View handler that returns stash data in JSON format.
Definition at line 27 of file viewjson.h.
This value defines which kind of exposition was defined
Definition at line 56 of file viewjson.h.
This value defines the format of the JSON byte array produced when rendering the view
| Enumerator | |
|---|---|
| Indented |
The output will be indented |
| Compact |
The output will be compact saving space |
Definition at line 38 of file viewjson.h.
Main constructor
Definition at line 34 of file viewjson.cpp.
| ViewJson::ExposeMode ViewJson::exposeStashMode | ( | ) | const |
Returns the expose mode of the stash keys, defaults to everything (All)
Definition at line 64 of file viewjson.cpp.
| ViewJson::JsonFormat ViewJson::outputFormat | ( | ) | const |
Returns the output format of JSON, defaults to Compact
Definition at line 39 of file viewjson.cpp.
|
finalvirtual |
All subclasses must reimplement this when doing it's rendering. If an error (c->error()) is not set c->response()->body() is defined with the returned value, this is useful if the view is not meant to be used as a body.
Implements Cutelyst::View.
Definition at line 103 of file viewjson.cpp.
References QJsonValue::fromVariant(), QJsonObject::fromVariantHash(), QRegularExpressionMatch::hasMatch(), QJsonObject::insert(), QRegularExpression::match(), Cutelyst::Context::response(), Cutelyst::Response::setContentType(), Cutelyst::Response::setHeader(), Cutelyst::Context::stash(), and QJsonDocument::toJson().
| void ViewJson::setExposeStash | ( | const QString & | key | ) |
Specify which stash key is exposed as a JSON response, this will change exposeStashMode() to ViewJson::String
Definition at line 70 of file viewjson.cpp.
| void ViewJson::setExposeStash | ( | const QStringList & | keys | ) |
Specify which stash keys are exposed as a JSON response, this will change exposeStashMode() to ViewJson::StringList
Definition at line 77 of file viewjson.cpp.
| void ViewJson::setExposeStash | ( | const QRegularExpression & | re | ) |
Specify which stash keys are exposed as a JSON response, this will change exposeStashMode() to ViewJson::RegularExpression
Definition at line 84 of file viewjson.cpp.
| void ViewJson::setOutputFormat | ( | JsonFormat | format | ) |
Defines the output format of JSON
Definition at line 52 of file viewjson.cpp.
| void ViewJson::setXJsonHeader | ( | bool | enable | ) |
By default this plugin does NOT sets X-JSON header if the requested client is a Prototype.js with X-JSON support. By setting true, you can opt-out this behavior so that you do not need to do eval() by your own.
Definition at line 91 of file viewjson.cpp.
| bool ViewJson::xJsonHeader | ( | ) | const |
Returns true if the X-JSON header should be sent
Definition at line 97 of file viewjson.cpp.
1.8.6