forked from loafle/openapi-generator-original
* add line break test to petstore-security-test.yaml * add objc/swift security testing * add go,scala,qt5cpp for security test * add security test for typescript * fix go security issue, fix consumes,produces line break
100 lines
2.7 KiB
C++
100 lines
2.7 KiB
C++
/**
|
|
* Swagger Petstore *_/ ' \" =end \\r\\n \\n \\r
|
|
* This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ *_/ ' \" =end
|
|
*
|
|
* OpenAPI spec version: 1.0.0 *_/ ' \" =end \\r\\n \\n \\r
|
|
* Contact: apiteam@swagger.io *_/ ' \" =end \\r\\n \\n \\r
|
|
*
|
|
* NOTE: This class is auto generated by the swagger code generator program.
|
|
* https://github.com/swagger-api/swagger-codegen.git
|
|
* Do not edit the class manually.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
/**
|
|
* Based on http://www.creativepulse.gr/en/blog/2014/restful-api-requests-using-qt-cpp-for-linux-mac-osx-ms-windows
|
|
* By Alex Stylianos
|
|
*
|
|
**/
|
|
|
|
#ifndef HTTPREQUESTWORKER_H
|
|
#define HTTPREQUESTWORKER_H
|
|
|
|
#include <QObject>
|
|
#include <QString>
|
|
#include <QMap>
|
|
#include <QNetworkAccessManager>
|
|
#include <QNetworkReply>
|
|
|
|
enum HttpRequestVarLayout {NOT_SET, ADDRESS, URL_ENCODED, MULTIPART};
|
|
|
|
|
|
class SWGHttpRequestInputFileElement {
|
|
|
|
public:
|
|
QString variable_name;
|
|
QString local_filename;
|
|
QString request_filename;
|
|
QString mime_type;
|
|
|
|
};
|
|
|
|
|
|
class HttpRequestInput {
|
|
|
|
public:
|
|
QString url_str;
|
|
QString http_method;
|
|
HttpRequestVarLayout var_layout;
|
|
QMap<QString, QString> vars;
|
|
QMap<QString, QString> headers;
|
|
QList<SWGHttpRequestInputFileElement> files;
|
|
QByteArray request_body;
|
|
|
|
HttpRequestInput();
|
|
HttpRequestInput(QString v_url_str, QString v_http_method);
|
|
void initialize();
|
|
void add_var(QString key, QString value);
|
|
void add_file(QString variable_name, QString local_filename, QString request_filename, QString mime_type);
|
|
|
|
};
|
|
|
|
|
|
class HttpRequestWorker : public QObject {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
QByteArray response;
|
|
QNetworkReply::NetworkError error_type;
|
|
QString error_str;
|
|
|
|
explicit HttpRequestWorker(QObject *parent = 0);
|
|
virtual ~HttpRequestWorker();
|
|
|
|
QString http_attribute_encode(QString attribute_name, QString input);
|
|
void execute(HttpRequestInput *input);
|
|
|
|
signals:
|
|
void on_execution_finished(HttpRequestWorker *worker);
|
|
|
|
private:
|
|
QNetworkAccessManager *manager;
|
|
|
|
private slots:
|
|
void on_manager_finished(QNetworkReply *reply);
|
|
|
|
};
|
|
|
|
#endif // HTTPREQUESTWORKER_H
|