Enhanced Entity::valid
the build was successful
Details
the build was successful
Details
It now checks if all non-nullable attributes are set. fixes #10
This commit is contained in:
parent
2565ff8d15
commit
b74381ceed
|
@ -1,6 +1,6 @@
|
||||||
cmake_minimum_required (VERSION 3.7)
|
cmake_minimum_required (VERSION 3.7)
|
||||||
project (mastodon-cpp
|
project (mastodon-cpp
|
||||||
VERSION 0.18.1
|
VERSION 0.18.2
|
||||||
LANGUAGES CXX
|
LANGUAGES CXX
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -341,9 +341,9 @@ public:
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns true if the Entity holds valid data
|
* @brief Returns true if the Entity holds valid data
|
||||||
*
|
*
|
||||||
* @since before 0.11.0
|
* @since before 0.11.0 (virtual since 0.18.2)
|
||||||
*/
|
*/
|
||||||
const bool valid() const;
|
virtual const bool valid() const = 0;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns error string sent by the server
|
* @brief Returns error string sent by the server
|
||||||
|
@ -444,9 +444,20 @@ public:
|
||||||
|
|
||||||
const std::uint_fast64_t stouint64(const string &str) const;
|
const std::uint_fast64_t stouint64(const string &str) const;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @brief Checks if an Entity is valid
|
||||||
|
*
|
||||||
|
* @param attributes The attributes to check
|
||||||
|
*
|
||||||
|
* @return true if all attributes are set
|
||||||
|
*
|
||||||
|
* @since 0.18.2
|
||||||
|
*/
|
||||||
|
const bool
|
||||||
|
check_valid(const std::vector<string> &attributes) const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Json::Value _tree;
|
Json::Value _tree;
|
||||||
bool _valid;
|
|
||||||
mutable bool _was_set;
|
mutable bool _was_set;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <array>
|
||||||
#include "account.hpp"
|
#include "account.hpp"
|
||||||
#include "macros.hpp"
|
#include "macros.hpp"
|
||||||
|
|
||||||
|
@ -28,6 +29,30 @@ Account::Account()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Account::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"id",
|
||||||
|
"username",
|
||||||
|
"acct",
|
||||||
|
"display_name",
|
||||||
|
"locked",
|
||||||
|
"created_at",
|
||||||
|
"followers_count",
|
||||||
|
"following_count",
|
||||||
|
"statuses_count",
|
||||||
|
"note",
|
||||||
|
"url",
|
||||||
|
"avatar",
|
||||||
|
"avatar_static",
|
||||||
|
"header",
|
||||||
|
"header_static"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const string Account::acct() const
|
const string Account::acct() const
|
||||||
{
|
{
|
||||||
return get_string("acct");
|
return get_string("acct");
|
||||||
|
|
|
@ -69,6 +69,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Account();
|
Account();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns username
|
* @brief Returns username
|
||||||
*
|
*
|
||||||
|
|
|
@ -27,6 +27,11 @@ Application::Application()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Application::valid() const
|
||||||
|
{
|
||||||
|
return Entity::check_valid({"name"});
|
||||||
|
}
|
||||||
|
|
||||||
const string Application::name() const
|
const string Application::name() const
|
||||||
{
|
{
|
||||||
return get_string("name");
|
return get_string("name");
|
||||||
|
|
|
@ -56,6 +56,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Application();
|
Application();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns the name of the application
|
* @brief Returns the name of the application
|
||||||
*
|
*
|
||||||
|
|
|
@ -29,6 +29,19 @@ Attachment::Attachment()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Attachment::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"id",
|
||||||
|
"type",
|
||||||
|
"url",
|
||||||
|
"preview_url"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const double Attachment::aspect() const
|
const double Attachment::aspect() const
|
||||||
{
|
{
|
||||||
return get_double("meta.original.aspect");
|
return get_double("meta.original.aspect");
|
||||||
|
|
|
@ -60,6 +60,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Attachment();
|
Attachment();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Aspect of original image
|
* @brief Aspect of original image
|
||||||
*
|
*
|
||||||
|
|
|
@ -28,6 +28,19 @@ Card::Card()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Card::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"url",
|
||||||
|
"title",
|
||||||
|
"description",
|
||||||
|
"type"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const string Card::author_name() const
|
const string Card::author_name() const
|
||||||
{
|
{
|
||||||
return get_string("author_name");
|
return get_string("author_name");
|
||||||
|
|
|
@ -58,6 +58,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Card();
|
Card();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns the name of the author
|
* @brief Returns the name of the author
|
||||||
*
|
*
|
||||||
|
|
|
@ -28,6 +28,17 @@ Context::Context()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Context::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"ancestors",
|
||||||
|
"descendants"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const std::vector<Easy::Status> Context::ancestors() const
|
const std::vector<Easy::Status> Context::ancestors() const
|
||||||
{
|
{
|
||||||
const Json::Value node = get("ancestors");
|
const Json::Value node = get("ancestors");
|
||||||
|
|
|
@ -59,6 +59,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Context();
|
Context();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns the ancestors of the Status as vector of Statuses
|
* @brief Returns the ancestors of the Status as vector of Statuses
|
||||||
*
|
*
|
||||||
|
|
|
@ -28,6 +28,18 @@ Emoji::Emoji()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Emoji::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"shortcode",
|
||||||
|
"static_url",
|
||||||
|
"url"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const string Emoji::shortcode() const
|
const string Emoji::shortcode() const
|
||||||
{
|
{
|
||||||
return get_string("shortcode");
|
return get_string("shortcode");
|
||||||
|
|
|
@ -56,6 +56,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Emoji();
|
Emoji();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns the shortcode of the emoji
|
* @brief Returns the shortcode of the emoji
|
||||||
*
|
*
|
||||||
|
|
|
@ -30,6 +30,23 @@ Instance::Instance()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Instance::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"uri",
|
||||||
|
"title",
|
||||||
|
"description",
|
||||||
|
"email",
|
||||||
|
"version",
|
||||||
|
"urls",
|
||||||
|
"languages",
|
||||||
|
"contact_account"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const Easy::Account Instance::contact_account() const
|
const Easy::Account Instance::contact_account() const
|
||||||
{
|
{
|
||||||
const Json::Value node = get("contact_account");
|
const Json::Value node = get("contact_account");
|
||||||
|
|
|
@ -59,6 +59,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Instance();
|
Instance();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns the Account of the admin or another contact person
|
* @brief Returns the Account of the admin or another contact person
|
||||||
*
|
*
|
||||||
|
|
|
@ -29,6 +29,17 @@ List::List()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool List::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"id",
|
||||||
|
"title"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const uint_fast64_t List::id() const
|
const uint_fast64_t List::id() const
|
||||||
{
|
{
|
||||||
return stouint64(get_string("id"));
|
return stouint64(get_string("id"));
|
||||||
|
|
|
@ -59,6 +59,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
List();
|
List();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns list-ID
|
* @brief Returns list-ID
|
||||||
*
|
*
|
||||||
|
|
|
@ -27,6 +27,19 @@ Mention::Mention()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Mention::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"url",
|
||||||
|
"username",
|
||||||
|
"acct",
|
||||||
|
"id"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const string Mention::acct() const
|
const string Mention::acct() const
|
||||||
{
|
{
|
||||||
return get_string("acct");
|
return get_string("acct");
|
||||||
|
|
|
@ -59,6 +59,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Mention();
|
Mention();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns acct
|
* @brief Returns acct
|
||||||
*
|
*
|
||||||
|
|
|
@ -28,6 +28,19 @@ Notification::Notification()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Notification::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"id",
|
||||||
|
"type",
|
||||||
|
"created_at",
|
||||||
|
"account"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const Easy::Account Notification::account() const
|
const Easy::Account Notification::account() const
|
||||||
{
|
{
|
||||||
const Json::Value node = get("account");
|
const Json::Value node = get("account");
|
||||||
|
|
|
@ -64,6 +64,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Notification();
|
Notification();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns the Account sending the notification to the user
|
* @brief Returns the Account sending the notification to the user
|
||||||
*
|
*
|
||||||
|
|
|
@ -32,6 +32,18 @@ PushSubscription::PushSubscription()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool PushSubscription::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"id",
|
||||||
|
"endpoint",
|
||||||
|
"server_key"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const string PushSubscription::endpoint() const
|
const string PushSubscription::endpoint() const
|
||||||
{
|
{
|
||||||
return get_string("endpoint");
|
return get_string("endpoint");
|
||||||
|
|
|
@ -59,6 +59,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
PushSubscription();
|
PushSubscription();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns push subscription ID
|
* @brief Returns push subscription ID
|
||||||
*
|
*
|
||||||
|
|
|
@ -27,6 +27,23 @@ Relationship::Relationship()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Relationship::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"id",
|
||||||
|
"following",
|
||||||
|
"followed_by",
|
||||||
|
"blocking",
|
||||||
|
"muting",
|
||||||
|
"muting_notifications",
|
||||||
|
"requested",
|
||||||
|
"domain_blocking"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const bool Relationship::blocking() const
|
const bool Relationship::blocking() const
|
||||||
{
|
{
|
||||||
return get_bool("blocking");
|
return get_bool("blocking");
|
||||||
|
|
|
@ -58,6 +58,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Relationship();
|
Relationship();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns true if the user is blocking the account
|
* @brief Returns true if the user is blocking the account
|
||||||
*
|
*
|
||||||
|
|
|
@ -27,6 +27,17 @@ Report::Report()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Report::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"id",
|
||||||
|
"action_taken"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const bool Report::action_taken() const
|
const bool Report::action_taken() const
|
||||||
{
|
{
|
||||||
return get_bool("action_taken");
|
return get_bool("action_taken");
|
||||||
|
|
|
@ -58,6 +58,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Report();
|
Report();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns true if an action was taken in response to the
|
* @brief Returns true if an action was taken in response to the
|
||||||
* report
|
* report
|
||||||
|
|
|
@ -28,6 +28,18 @@ Results::Results()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Results::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"accounts",
|
||||||
|
"statuses",
|
||||||
|
"hashtags"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const std::vector<Easy::Account> Results::accounts() const
|
const std::vector<Easy::Account> Results::accounts() const
|
||||||
{
|
{
|
||||||
const Json::Value node = get("accounts");
|
const Json::Value node = get("accounts");
|
||||||
|
|
|
@ -63,6 +63,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Results();
|
Results();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns an array of matched Accounts
|
* @brief Returns an array of matched Accounts
|
||||||
*
|
*
|
||||||
|
|
|
@ -29,6 +29,29 @@ Status::Status()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Status::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"id",
|
||||||
|
"uri",
|
||||||
|
"account",
|
||||||
|
"content",
|
||||||
|
"created_at",
|
||||||
|
"emojis",
|
||||||
|
"reblogs_count",
|
||||||
|
"favourites_count",
|
||||||
|
"sensitive",
|
||||||
|
"spoiler_text",
|
||||||
|
"visibility",
|
||||||
|
"media_attachments",
|
||||||
|
"mentions",
|
||||||
|
"tags"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const Easy::Account Status::account() const
|
const Easy::Account Status::account() const
|
||||||
{
|
{
|
||||||
const Json::Value node = get("account");
|
const Json::Value node = get("account");
|
||||||
|
|
|
@ -73,6 +73,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Status();
|
Status();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns an array of matched accounts.
|
* @brief Returns an array of matched accounts.
|
||||||
*
|
*
|
||||||
|
|
|
@ -30,6 +30,17 @@ Tag::Tag()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Tag::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"name",
|
||||||
|
"url"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const string Tag::name() const
|
const string Tag::name() const
|
||||||
{
|
{
|
||||||
return get_string("name");
|
return get_string("name");
|
||||||
|
@ -66,6 +77,18 @@ Tag::History::History()
|
||||||
: Entity()
|
: Entity()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
const bool Tag::History::valid() const
|
||||||
|
{
|
||||||
|
const std::vector<string> attributes =
|
||||||
|
{{
|
||||||
|
"day",
|
||||||
|
"uses",
|
||||||
|
"accounts"
|
||||||
|
}};
|
||||||
|
|
||||||
|
return Entity::check_valid(attributes);
|
||||||
|
}
|
||||||
|
|
||||||
const uint_fast64_t Tag::History::accounts()
|
const uint_fast64_t Tag::History::accounts()
|
||||||
{
|
{
|
||||||
return stouint64(get_string("accounts"));
|
return stouint64(get_string("accounts"));
|
||||||
|
|
|
@ -68,6 +68,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
History();
|
History();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns the number of accounts using that hashtag.
|
* @brief Returns the number of accounts using that hashtag.
|
||||||
*
|
*
|
||||||
|
@ -106,6 +108,8 @@ namespace Mastodon
|
||||||
*/
|
*/
|
||||||
Tag();
|
Tag();
|
||||||
|
|
||||||
|
virtual const bool valid() const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @brief Returns the name of the tag
|
* @brief Returns the name of the tag
|
||||||
*
|
*
|
||||||
|
|
|
@ -28,7 +28,6 @@ using std::chrono::system_clock;
|
||||||
|
|
||||||
Easy::Entity::Entity(const string &json)
|
Easy::Entity::Entity(const string &json)
|
||||||
: _tree(Json::nullValue)
|
: _tree(Json::nullValue)
|
||||||
, _valid(false)
|
|
||||||
,_was_set(false)
|
,_was_set(false)
|
||||||
{
|
{
|
||||||
from_string(json);
|
from_string(json);
|
||||||
|
@ -56,10 +55,6 @@ const void Easy::Entity::from_string(const string &json)
|
||||||
ttdebug << "ERROR: Server returned an error\n";
|
ttdebug << "ERROR: Server returned an error\n";
|
||||||
ttdebug << "String was: " << json << '\n';
|
ttdebug << "String was: " << json << '\n';
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
_valid = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const Json::Value Easy::Entity::to_object() const
|
const Json::Value Easy::Entity::to_object() const
|
||||||
|
@ -68,13 +63,22 @@ const Json::Value Easy::Entity::to_object() const
|
||||||
}
|
}
|
||||||
|
|
||||||
Easy::Entity::Entity()
|
Easy::Entity::Entity()
|
||||||
: _valid(false)
|
: _was_set(false)
|
||||||
, _was_set(false)
|
|
||||||
{}
|
{}
|
||||||
|
|
||||||
const bool Easy::Entity::valid() const
|
const bool
|
||||||
|
Easy::Entity::check_valid(const std::vector<string> &attributes) const
|
||||||
{
|
{
|
||||||
return _valid;
|
for (const string &attribute: attributes)
|
||||||
|
{
|
||||||
|
get(attribute);
|
||||||
|
if (!was_set())
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const string Easy::Entity::error() const
|
const string Easy::Entity::error() const
|
||||||
|
|
Reference in New Issue