Timesheets-Server
Timesheets server
Načítám...
Vyhledávám...
Nebylo nic nalezeno
controllerstatusorder.cpp
Zobrazit dokumentaci tohoto souboru.
1
8#include "db.h"
9
10using namespace Httpd;
11
12
13ControllerStatusOrder::ControllerStatusOrder(HobrasoftHttpd::HttpConnection *parent) : AbstractController(parent) {
14}
15
16
17void ControllerStatusOrder::serviceList (HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response) {
18 serviceOK(request, response, toList(db()->statusOrder()));
19}
20
21
22void ControllerStatusOrder::serviceIdGet(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QString& id) {
23 auto list = db()->statusOrder(id);
24 if (list.isEmpty()) {
25 serviceError(request, response, 404, "not-found", "NotFound");
26 return;
27 }
28 serviceOK(request, response, list[0].toMap());
29}
30
31
32void ControllerStatusOrder::serviceIdPut(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariantMap& data) {
33 serviceOK(request, response, putKey(db()->save(Dbt::StatusOrder::fromMap(data))));
34}
35
36
37void ControllerStatusOrder::serviceIdPost(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariantMap& data) {
38 serviceIdPut(request, response, data);
39}
40
41
42void ControllerStatusOrder::serviceIdDelete(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QString& id) {
43 db()->remove(Dbt::StatusOrder(id));
44 serviceOK(request, response);
45}
46
Virtuální třída pro vyřizování unifikovaných Http požadavků na server API.
virtual void serviceError(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, int code, const QString &error, const QVariantMap &data)
Pošle chybovou odpověď
virtual void serviceOK(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariant &data=QVariant())
Pošle odpověď 200 OK.
HobrasoftHttpd::HttpRequest * request() const
Vrací ukazatel na aktuální request.
void serviceIdPost(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariantMap &data) Q_DECL_OVERRIDE
Pošle odpověď na požadavek konkrétního ID metodou PUT - obvykle vloží nový objekt nebo přepíše existu...
void serviceIdPut(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QVariantMap &data) Q_DECL_OVERRIDE
Pošle odpověď na požadavek konkrétního ID metodou PUT - obvykle vloží nový objekt nebo přepíše existu...
void serviceIdGet(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QString &data) Q_DECL_OVERRIDE
Pošle odpověď na požadavek konkrétního ID metodou GET.
void serviceList(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response) Q_DECL_OVERRIDE
Měl by poslat v odpovědi kompletní seznam všech objektů ve třídě a ukončit se.
void serviceIdDelete(HobrasoftHttpd::HttpRequest *request, HobrasoftHttpd::HttpResponse *response, const QString &id) Q_DECL_OVERRIDE
Pošle odpověď na požadavek konkrétního ID metodou DELETE - obvykle objekt smaže.
Jmenný prostor pro obsluhu konkrétních HTTP požadavků aplikace.