Commit 057ff81bcdd0f1f91a58770c5b35a057ea1514b9
1 parent
d4ccf4a1
Exists in
master
Implementações: Daemon do Cacic, getTest() e getConfig()
Showing
4 changed files
with
103 additions
and
30 deletions
Show diff stats
cacicD/cacicD.pro
... | ... | @@ -5,7 +5,6 @@ |
5 | 5 | #------------------------------------------------- |
6 | 6 | |
7 | 7 | QT += core |
8 | - | |
9 | 8 | QT -= gui |
10 | 9 | |
11 | 10 | TARGET = cacicD |
... | ... | @@ -21,13 +20,18 @@ TEMPLATE = app |
21 | 20 | |
22 | 21 | SOURCES += main.cpp \ |
23 | 22 | ../src/ccacic.cpp \ |
24 | - cacicd.cpp | |
23 | + cacicd.cpp \ | |
24 | + ../src/cacic_computer.cpp \ | |
25 | + ../src/operatingsystem.cpp | |
25 | 26 | |
26 | 27 | HEADERS += \ |
27 | 28 | ../src/ccacic.h \ |
28 | - cacicd.h | |
29 | + cacicd.h \ | |
30 | + ../src/cacic_computer.h \ | |
31 | + ../src/operatingsystem.h | |
29 | 32 | |
30 | 33 | include(../src/qtservice/src/qtservice.pri) |
31 | 34 | |
32 | 35 | INCLUDEPATH += ../src \ |
33 | 36 | ../src/crypto++/include/ |
37 | + | ... | ... |
cacicD/cacicd.cpp
... | ... | @@ -22,12 +22,20 @@ cacicD::~cacicD() |
22 | 22 | void cacicD::start() |
23 | 23 | { |
24 | 24 | try{ |
25 | - QCoreApplication *app = application(); | |
26 | - qDebug() << "Serviço iniciado."; | |
27 | - qDebug() << app->applicationDirPath(); | |
28 | - | |
25 | + this->app = application(); | |
26 | + qDebug() << "\nServiço iniciado em" << app->applicationDirPath(); | |
27 | + if(getTest()){ | |
28 | + qDebug() << "\ngetTest() success."; | |
29 | + }else{ | |
30 | + qDebug() << "\ngetTest() error."; | |
31 | + } | |
32 | + if(getConfig()){ | |
33 | + qDebug() << "\ngetconfig() success."; | |
34 | + }else{ | |
35 | + qDebug() << "\ngetconfig() error."; | |
36 | + } | |
29 | 37 | } catch (...){ |
30 | - qCritical() << "Error desconhecido no desconstrutor."; | |
38 | + qCritical() << "Error desconhecido ao iniciar o serviço."; | |
31 | 39 | } |
32 | 40 | } |
33 | 41 | |
... | ... | @@ -57,3 +65,70 @@ void cacicD::stop() |
57 | 65 | qCritical() << "Error desconhecido ao parar o serviço."; |
58 | 66 | } |
59 | 67 | } |
68 | + | |
69 | +bool cacicD::getTest(){ | |
70 | + try{ | |
71 | + CacicComm OCacicComm; | |
72 | + OCacicComm.setUrlGerente("http://10.1.0.137/cacic/web/app_dev.php"); | |
73 | + OCacicComm.setUsuario("cacic"); | |
74 | + OCacicComm.setPassword("cacic123"); | |
75 | + bool ok; | |
76 | + QJsonObject as; | |
77 | + as["computador"] = OCacic_Computer.toJsonObject(); | |
78 | + QJsonObject jsonresult = OCacicComm.comm("/ws/neo/login", &ok, as); | |
79 | + try{ | |
80 | + saveJson(QJsonDocument::fromVariant(jsonresult.toVariantMap()), "getTest.conf"); | |
81 | + return true; | |
82 | + } catch (...) { | |
83 | + qDebug() << "Erro ao salvar o arquivo de configurações."; | |
84 | + return false; | |
85 | + } | |
86 | + } catch (...){ | |
87 | + qDebug() << "Erro ao conectar com o servidor."; | |
88 | + return false; | |
89 | + } | |
90 | +} | |
91 | + | |
92 | +bool cacicD::getConfig(){ | |
93 | + try{ | |
94 | + CacicComm OCacicComm; | |
95 | + OCacicComm.setUrlGerente("http://10.1.0.137/cacic/web/app_dev.php"); | |
96 | + OCacicComm.setUsuario("cacic"); | |
97 | + OCacicComm.setPassword("cacic123"); | |
98 | + bool ok; | |
99 | + QJsonObject as; | |
100 | + as["computador"] = OCacic_Computer.toJsonObject(); | |
101 | + QJsonObject jsonresult = OCacicComm.comm("/ws/neo/login", &ok, as); | |
102 | + try{ | |
103 | + saveJson(QJsonDocument::fromVariant(jsonresult.toVariantMap()), "getConfig.conf"); | |
104 | + return true; | |
105 | + } catch (...) { | |
106 | + qDebug() << "Erro ao salvar o arquivo de configurações."; | |
107 | + return false; | |
108 | + } | |
109 | + } catch (...){ | |
110 | + qDebug() << "Erro ao conectar com o servidor."; | |
111 | + return false; | |
112 | + } | |
113 | +} | |
114 | + | |
115 | +void cacicD::saveJson(QJsonDocument document, QString fileName) { | |
116 | +#if defined(Q_OS_LINUX) | |
117 | + QFile jsonFile(app->applicationDirPath().append("/" + fileName)); | |
118 | +#elif defined(Q_OS_WIN) | |
119 | + QFile jsonFile(app->applicationDirPath().append("\\" + fileName)); | |
120 | +#endif | |
121 | + jsonFile.open(QFile::WriteOnly); | |
122 | + jsonFile.write(document.toJson()); | |
123 | + jsonFile.close(); | |
124 | +} | |
125 | + | |
126 | +QJsonDocument cacicD::loadJson(QString fileName) { | |
127 | +#if defined(Q_OS_LINUX) | |
128 | + QFile jsonFile(app->applicationDirPath().append("/" + fileName)); | |
129 | +#elif defined(Q_OS_WIN) | |
130 | + QFile jsonFile(app->applicationDirPath().append("\\" + fileName)); | |
131 | +#endif | |
132 | + jsonFile.open(QFile::ReadOnly); | |
133 | + return QJsonDocument().fromJson(jsonFile.readAll()); | |
134 | +} | ... | ... |
cacicD/cacicd.h
... | ... | @@ -4,40 +4,34 @@ |
4 | 4 | #include <QCoreApplication> |
5 | 5 | #include <QObject> |
6 | 6 | #include <QDebug> |
7 | +#include <QDir> | |
8 | +#include <QTextStream> | |
9 | +#include <QVariant> | |
7 | 10 | #include "qtservice.h" |
11 | +#include "cacic_comm.h" | |
12 | +#include "cacic_computer.h" | |
8 | 13 | |
9 | 14 | |
10 | 15 | class cacicD : public QtService<QCoreApplication> |
11 | 16 | { |
12 | 17 | public: |
13 | - /** | |
14 | - * @brief cacicD Construtor | |
15 | - * @param argc | |
16 | - * @param argv | |
17 | - */ | |
18 | 18 | cacicD(int argc, char **argv); |
19 | - /** | |
20 | - * @brief cacicD Desconstrutor | |
21 | - */ | |
22 | 19 | ~cacicD(); |
23 | - /** | |
24 | - * @brief inicia o serviço | |
25 | - */ | |
26 | 20 | void start(); |
27 | - /** | |
28 | - * @brief pausa o serviço | |
29 | - */ | |
30 | 21 | void pause(); |
31 | - /** | |
32 | - * @brief resume a execução do serviço | |
33 | - */ | |
34 | 22 | void resume(); |
35 | - /** | |
36 | - * @brief para a execução do serviço | |
37 | - */ | |
38 | 23 | void stop(); |
24 | + QCoreApplication *app; | |
25 | + void saveJson(QJsonDocument document, QString fileName); | |
26 | + QJsonDocument loadJson(QString fileName); | |
39 | 27 | |
40 | - | |
28 | +private: | |
29 | + QString testPath; | |
30 | + QString testIniPath; | |
31 | + QJsonObject session; | |
32 | + CACIC_Computer OCacic_Computer; | |
33 | + bool getTest(); | |
34 | + bool getConfig(); | |
41 | 35 | }; |
42 | 36 | |
43 | 37 | #endif // CACICD_H | ... | ... |
src/cacic_comm.h
... | ... | @@ -64,7 +64,7 @@ public: |
64 | 64 | url = urlSsl.isEmpty() ? "https://" + this->urlGerente + route : this->urlSsl + route; |
65 | 65 | req.setSslConfiguration(QSslConfiguration::defaultConfiguration()); |
66 | 66 | } else |
67 | - url = urlGerente + route; | |
67 | + url = "http://" + urlGerente + route; | |
68 | 68 | req.setUrl(url); |
69 | 69 | req.setHeader(QNetworkRequest::LocationHeader, "Cacic Agente"); |
70 | 70 | if (json.empty()) | ... | ... |