mirror of
https://github.com/Telecominfraproject/wlan-cloud-owprov.git
synced 2026-03-20 03:40:31 +00:00
111 lines
3.7 KiB
C++
111 lines
3.7 KiB
C++
//
|
|
// Created by stephane bourque on 2022-10-25.
|
|
//
|
|
|
|
#pragma once
|
|
|
|
#include <string>
|
|
|
|
#include "Poco/JSON/Object.h"
|
|
#include "Poco/Net/HTTPServerResponse.h"
|
|
|
|
#include "framework/OpenWifiTypes.h"
|
|
|
|
namespace OpenWifi {
|
|
|
|
class OpenAPIRequestGet {
|
|
public:
|
|
explicit OpenAPIRequestGet( const std::string & Type,
|
|
const std::string & EndPoint,
|
|
const Types::StringPairVec & QueryData,
|
|
uint64_t msTimeout,
|
|
const std::string &LoggingStr=""):
|
|
Type_(Type),
|
|
EndPoint_(EndPoint),
|
|
QueryData_(QueryData),
|
|
msTimeout_(msTimeout),
|
|
LoggingStr_(LoggingStr){};
|
|
Poco::Net::HTTPServerResponse::HTTPStatus Do(Poco::JSON::Object::Ptr &ResponseObject, const std::string & BearerToken = "");
|
|
private:
|
|
std::string Type_;
|
|
std::string EndPoint_;
|
|
Types::StringPairVec QueryData_;
|
|
uint64_t msTimeout_;
|
|
std::string LoggingStr_;
|
|
};
|
|
|
|
class OpenAPIRequestPut {
|
|
public:
|
|
explicit OpenAPIRequestPut( const std::string & Type,
|
|
const std::string & EndPoint,
|
|
const Types::StringPairVec & QueryData,
|
|
const Poco::JSON::Object & Body,
|
|
uint64_t msTimeout,
|
|
const std::string &LoggingStr=""):
|
|
Type_(Type),
|
|
EndPoint_(EndPoint),
|
|
QueryData_(QueryData),
|
|
msTimeout_(msTimeout),
|
|
Body_(Body),
|
|
LoggingStr_(LoggingStr){};
|
|
|
|
Poco::Net::HTTPServerResponse::HTTPStatus Do(Poco::JSON::Object::Ptr &ResponseObject, const std::string & BearerToken = "");
|
|
|
|
private:
|
|
std::string Type_;
|
|
std::string EndPoint_;
|
|
Types::StringPairVec QueryData_;
|
|
uint64_t msTimeout_;
|
|
Poco::JSON::Object Body_;
|
|
std::string LoggingStr_;
|
|
};
|
|
|
|
class OpenAPIRequestPost {
|
|
public:
|
|
explicit OpenAPIRequestPost( const std::string & Type,
|
|
const std::string & EndPoint,
|
|
const Types::StringPairVec & QueryData,
|
|
const Poco::JSON::Object & Body,
|
|
uint64_t msTimeout,
|
|
const std::string &LoggingStr=""):
|
|
Type_(Type),
|
|
EndPoint_(EndPoint),
|
|
QueryData_(QueryData),
|
|
msTimeout_(msTimeout),
|
|
Body_(Body),
|
|
LoggingStr_(LoggingStr){};
|
|
Poco::Net::HTTPServerResponse::HTTPStatus Do(Poco::JSON::Object::Ptr &ResponseObject, const std::string & BearerToken = "");
|
|
private:
|
|
std::string Type_;
|
|
std::string EndPoint_;
|
|
Types::StringPairVec QueryData_;
|
|
uint64_t msTimeout_;
|
|
Poco::JSON::Object Body_;
|
|
std::string LoggingStr_;
|
|
};
|
|
|
|
class OpenAPIRequestDelete {
|
|
public:
|
|
explicit OpenAPIRequestDelete( const std::string & Type,
|
|
const std::string & EndPoint,
|
|
const Types::StringPairVec & QueryData,
|
|
uint64_t msTimeout,
|
|
const std::string &LoggingStr=""):
|
|
Type_(Type),
|
|
EndPoint_(EndPoint),
|
|
QueryData_(QueryData),
|
|
msTimeout_(msTimeout),
|
|
LoggingStr_(LoggingStr){};
|
|
Poco::Net::HTTPServerResponse::HTTPStatus Do(const std::string & BearerToken = "");
|
|
|
|
private:
|
|
std::string Type_;
|
|
std::string EndPoint_;
|
|
Types::StringPairVec QueryData_;
|
|
uint64_t msTimeout_;
|
|
Poco::JSON::Object Body_;
|
|
std::string LoggingStr_;
|
|
};
|
|
|
|
} // namespace OpenWifi
|