35 lines
803 B
C
35 lines
803 B
C
|
#ifndef CPR_BEARER_H
|
||
|
#define CPR_BEARER_H
|
||
|
|
||
|
#include <curl/curlver.h>
|
||
|
#include <string>
|
||
|
|
||
|
#include <utility>
|
||
|
|
||
|
namespace cpr {
|
||
|
|
||
|
// Only supported with libcurl >= 7.61.0.
|
||
|
// As an alternative use SetHeader and add the token manually.
|
||
|
#if LIBCURL_VERSION_NUM >= 0x073D00
|
||
|
class Bearer {
|
||
|
public:
|
||
|
// NOLINTNEXTLINE(google-explicit-constructor, hicpp-explicit-conversions)
|
||
|
Bearer(std::string token) : token_string_{std::move(token)} {}
|
||
|
Bearer(const Bearer& other) = default;
|
||
|
Bearer(Bearer&& old) noexcept = default;
|
||
|
virtual ~Bearer() noexcept;
|
||
|
|
||
|
Bearer& operator=(Bearer&& old) noexcept = default;
|
||
|
Bearer& operator=(const Bearer& other) = default;
|
||
|
|
||
|
virtual const char* GetToken() const noexcept;
|
||
|
|
||
|
protected:
|
||
|
std::string token_string_;
|
||
|
};
|
||
|
#endif
|
||
|
|
||
|
} // namespace cpr
|
||
|
|
||
|
#endif
|