I use a standard set of templates, changes are made in api-header.mustache and api-source.mustache. Their _old versions contain the originals. Additions are necessary for the header argument in the generated functions so that you can authenticate using cookies.
48 lines
1.2 KiB
Text
48 lines
1.2 KiB
Text
{{>licenseInfo}}
|
|
/*
|
|
* ApiException.h
|
|
*
|
|
* This is the exception being thrown in case the api call was not successful
|
|
*/
|
|
|
|
#ifndef {{apiHeaderGuardPrefix}}_ApiException_H_
|
|
#define {{apiHeaderGuardPrefix}}_ApiException_H_
|
|
|
|
{{{defaultInclude}}}
|
|
|
|
#include <cpprest/details/basic_types.h>
|
|
#include <cpprest/http_msg.h>
|
|
|
|
#include <memory>
|
|
#include <map>
|
|
|
|
{{#apiNamespaceDeclarations}}
|
|
namespace {{this}} {
|
|
{{/apiNamespaceDeclarations}}
|
|
|
|
class {{declspec}} ApiException
|
|
: public web::http::http_exception
|
|
{
|
|
public:
|
|
ApiException( int errorCode
|
|
, const utility::string_t& message
|
|
, std::shared_ptr<std::istream> content = nullptr );
|
|
ApiException( int errorCode
|
|
, const utility::string_t& message
|
|
, std::map<utility::string_t, utility::string_t>& headers
|
|
, std::shared_ptr<std::istream> content = nullptr );
|
|
virtual ~ApiException();
|
|
|
|
std::map<utility::string_t, utility::string_t>& getHeaders();
|
|
std::shared_ptr<std::istream> getContent() const;
|
|
|
|
protected:
|
|
std::shared_ptr<std::istream> m_Content;
|
|
std::map<utility::string_t, utility::string_t> m_Headers;
|
|
};
|
|
|
|
{{#apiNamespaceDeclarations}}
|
|
}
|
|
{{/apiNamespaceDeclarations}}
|
|
|
|
#endif /* {{apiHeaderGuardPrefix}}_ApiBase_H_ */
|