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::uint_fast16_t;
38 using std::chrono::system_clock;
117 typedef std::map<Easy::notification_type, bool>
alertmap;
147 explicit Link(
const string &link_header);
152 const uint_fast64_t
next()
const;
157 const uint_fast64_t
max_id()
const;
162 const uint_fast64_t
prev()
const;
167 const uint_fast64_t
since_id()
const;
183 explicit Easy(
const string &instance,
const string &access_token);
201 static const std::vector<stream_event>
227 static const string strtime_utc(
const system_clock::time_point &timepoint,
228 const string &format);
237 static const string strtime_local(
const system_clock::time_point &timepoint,
238 const string &format);
265 explicit Entity(
const string &json);
289 const bool valid()
const;
294 const string error()
const;
331 const Json::Value
get(
const string &key)
const;
338 const string get_string(
const string &key)
const;
345 const uint_fast64_t
get_uint64(
const string &key)
const;
352 const double get_double(
const string &key)
const;
360 const bool get_bool(
const string &key)
const;
367 const system_clock::time_point
get_time_point(
const string &key)
const;
375 const std::vector<string>
get_vector(
const string &key)
const;
382 const void set(
const string &key,
const Json::Value &value);
384 const std::uint_fast64_t stouint64(
const string &str)
const;
389 mutable bool _was_set;
393 inline static const string strtime
394 (
const system_clock::time_point &timepoint,
395 const string &format,
const bool &utc);
399 #endif // MASTODON_EASY_CPP_HPP Class for the Mastodon API.
Definition: mastodon-cpp.hpp:74
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:42
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:141
Class to hold notifications.
Definition: notification.hpp:46
Class to hold attachments.
Definition: attachment.hpp:42
Class to hold cards.
Definition: card.hpp:40
const Status send_toot(const Status &status, uint_fast16_t error=0)
Sends a toot.
Definition: simple_calls.cpp:24
card_type
Describes the card type.
Definition: easy.hpp:86
Child of Mastodon::API with abstract methods.
Definition: easy.hpp:45
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:62
attachment_type
Describes the attachment type.
Definition: easy.hpp:74
notification_type
Describes the notification type.
Definition: easy.hpp:98
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:117
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:51
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:44
Class to hold contexts.
Definition: context.hpp:41
Definition: mastodon-cpp.hpp:52
Base class for all entities.
Definition: easy.hpp:257
const string error() const
Returns error string sent by the server.
Definition: entity.cpp:80
Class to hold results.
Definition: results.hpp:45
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:110
const uint_fast64_t get_uint64(const string &key) const
Returns the value of key as std::uint_fast64_t.
Definition: entity.cpp:145