cesium-native 0.56.0
Loading...
Searching...
No Matches
LoginToken.h
1#pragma once
2
3#include <CesiumIonClient/Library.h>
4#include <CesiumUtility/Result.h>
5
6#include <cstdint>
7#include <ctime>
8#include <optional>
9#include <string>
10
11namespace CesiumIonClient {
12
21class CESIUMIONCLIENT_API LoginToken {
22public:
32 parse(const std::string& tokenString);
33
40 bool isValid() const;
41
48 std::optional<std::time_t> getExpirationTime() const;
49
53 const std::string& getToken() const;
54
64 const std::string& token,
65 const std::optional<std::time_t>& expirationTime);
66
67private:
68 std::string _token;
69 std::optional<std::time_t> _expirationTime;
70};
71} // namespace CesiumIonClient
std::optional< std::time_t > getExpirationTime() const
Returns the time that this token expires, represented as a number of seconds since the Unix epoch.
bool isValid() const
Returns whether this token is currently valid.
static CesiumUtility::Result< LoginToken > parse(const std::string &tokenString)
Creates a new LoginToken by parsing the provided JWT authentication token.
const std::string & getToken() const
Returns the contained token string.
LoginToken(const std::string &token, const std::optional< std::time_t > &expirationTime)
Creates a new LoginToken.
Classes for working with Cesium ion clients.
Holds the result of an operation. If the operation succeeds, it will provide a value....
Definition Result.h:16