17 #ifndef MASTODON_EASY_CPP_HPP 18 #define MASTODON_EASY_CPP_HPP 26 #include <jsoncpp/json/json.h> 30 #include "mastodon-cpp.hpp" 32 #include <mastodon-cpp/mastodon-cpp.hpp> 36 using std::uint_fast64_t;
37 using std::chrono::system_clock;
116 typedef std::map<Easy::notification_type, bool>
alertmap;
129 explicit Link(
const string &link_header);
134 const uint_fast64_t
next()
const;
139 const uint_fast64_t
max_id()
const;
144 const uint_fast64_t
prev()
const;
149 const uint_fast64_t
since_id()
const;
165 explicit Easy(
const string &instance,
const string &access_token);
183 static const std::vector<stream_event>
209 static const string strtime_utc(
const system_clock::time_point &timepoint,
210 const string &format);
219 static const string strtime_local(
const system_clock::time_point &timepoint,
220 const string &format);
233 explicit Entity(
const string &json);
257 const bool valid()
const;
262 const string error()
const;
299 const Json::Value
get(
const string &key)
const;
306 const string get_string(
const string &key)
const;
313 const uint_fast64_t
get_uint64(
const string &key)
const;
320 const double get_double(
const string &key)
const;
328 const bool get_bool(
const string &key)
const;
335 const system_clock::time_point
get_time_point(
const string &key)
const;
343 const std::vector<string>
get_vector(
const string &key)
const;
345 const std::uint_fast64_t stouint64(
const string &str)
const;
350 mutable bool _was_set;
371 inline static const string strtime
372 (
const system_clock::time_point &timepoint,
373 const string &format,
const bool &utc);
377 #endif // MASTODON_EASY_CPP_HPP Class for the Mastodon API.
Definition: mastodon-cpp.hpp:75
static const string strtime_utc(const system_clock::time_point &timepoint, const string &format)
Converts a time_point to a string.
Definition: easy.cpp:85
Class to hold tags.
Definition: tag.hpp:38
Link(const string &link_header)
Definition: easy.cpp:118
const void from_string(const string &json)
Replaces the Entity with a new one from a JSON string.
Definition: entity.cpp:37
const uint_fast64_t next() const
Returns max_id.
Definition: easy.cpp:136
Entity()
Constructs an empty Entity object.
Definition: entity.cpp:70
Class to hold the Link-header.
Definition: easy.hpp:123
Class to hold notifications.
Definition: notification.hpp:46
Class to hold attachments.
Definition: attachment.hpp:42
Class to hold cards.
Definition: card.hpp:40
card_type
Describes the card type.
Definition: easy.hpp:85
Child of Mastodon::API with abstract methods.
Definition: easy.hpp:44
const uint_fast64_t prev() const
Returns since_id.
Definition: easy.cpp:146
Class to hold instances.
Definition: instance.hpp:41
Class to hold push subscriptions.
Definition: pushsubscription.hpp:43
static const std::vector< string > json_array_to_vector(const string &json)
Turns a JSON array into a vector of strings.
Definition: easy.cpp:31
const double get_double(const string &key) const
Returns the value of key as double.
Definition: entity.cpp:159
Easy(const string &instance, const string &access_token)
Constructs a new Easy object.
Definition: easy.cpp:27
visibility_type
Describes visibility of toots.
Definition: easy.hpp:61
attachment_type
Describes the attachment type.
Definition: easy.hpp:73
notification_type
Describes the notification type.
Definition: easy.hpp:97
const Json::Value to_object() const
Returns the JSON object of the Entity.
Definition: entity.cpp:65
Class to hold mentions.
Definition: mention.hpp:41
std::map< Easy::notification_type, bool > alertmap
Map of 'notification type' and 'push is requested or not'.
Definition: easy.hpp:116
const bool was_set() const
Returns true if the last requested value was set, false if it was unset.
Definition: entity.cpp:85
Class to hold reports.
Definition: report.hpp:40
static const string strtime_local(const system_clock::time_point &timepoint, const string &format)
See strtime_utc.
Definition: easy.cpp:91
const uint_fast64_t max_id() const
Returns max_id.
Definition: easy.cpp:141
event_type
Describes the event type.
Definition: easy.hpp:50
const uint_fast64_t since_id() const
Returns since_id.
Definition: easy.cpp:151
Class to hold statuses.
Definition: status.hpp:55
Class to hold accounts.
Definition: account.hpp:42
Class to hold contexts.
Definition: context.hpp:41
Definition: mastodon-cpp.hpp:51
Base class for all entities.
Definition: easy.hpp:225
const string error() const
Returns error string sent by the server.
Definition: entity.cpp:80
Class to hold results.
Definition: results.hpp:43
Class to hold relationships.
Definition: relationship.hpp:40
Class to hold lists.
Definition: list.hpp:41
Class to hold emojis.
Definition: emoji.hpp:38
static const std::vector< stream_event > parse_stream(const std::string &streamdata)
Split stream into a vector of events.
Definition: easy.cpp:53
const bool valid() const
Returns true if the Entity holds valid data.
Definition: entity.cpp:75
const string get_string(const string &key) const
Returns the value of key as std::string.
Definition: entity.cpp:131
const system_clock::time_point get_time_point(const string &key) const
Returns the value of key as time_point.
Definition: entity.cpp:188
const bool get_bool(const string &key) const
Returns the value of key as bool.
Definition: entity.cpp:173
const std::vector< string > get_vector(const string &key) const
Returns the value of key as vector.
Definition: entity.cpp:207
const Link get_link() const
Gets the links from the last answer.
Definition: easy.cpp:80
Class to hold applications.
Definition: application.hpp:38
std::pair< event_type, string > stream_event
Used for stream events.
Definition: easy.hpp:109
const uint_fast64_t get_uint64(const string &key) const
Returns the value of key as std::uint_fast64_t.
Definition: entity.cpp:145