App: Add support for <date> metadata element

This commit is contained in:
Chris Hennes
2022-09-22 10:26:48 -05:00
parent 7470d800fd
commit ef6aacc318
5 changed files with 44 additions and 3 deletions

View File

@@ -149,7 +149,11 @@ std::string Metadata::name() const
Meta::Version Metadata::version() const
{
return _version;
return _version; }
std::string App::Metadata::date() const
{
return _date;
}
std::string Metadata::description() const
@@ -257,7 +261,11 @@ void Metadata::setName(const std::string& name)
void Metadata::setVersion(const Meta::Version& version)
{
_version = version;
_version = version; }
void App::Metadata::setDate(const std::string &date)
{
_date = date;
}
void Metadata::setDescription(const std::string& description)
@@ -661,6 +669,9 @@ void Metadata::appendToElement(DOMElement* root) const
// Only append version if it's not 0.0.0
appendSimpleXMLNode(root, "version", _version.str());
if (!_date.empty())
appendSimpleXMLNode(root, "date", _date);
for (const auto& maintainer : _maintainer) {
auto element = appendSimpleXMLNode(root, "maintainer", maintainer.name);
if (element)
@@ -689,6 +700,7 @@ void Metadata::appendToElement(DOMElement* root) const
case Meta::UrlType::bugtracker: typeAsString = "bugtracker"; break;
case Meta::UrlType::readme: typeAsString = "readme"; break;
case Meta::UrlType::documentation: typeAsString = "documentation"; break;
case Meta::UrlType::discussion: typeAsString = "discussion"; break;
}
addAttribute(element, "type", typeAsString);
if (url.type == Meta::UrlType::repository) {
@@ -882,6 +894,8 @@ Meta::Url::Url(const XERCES_CPP_NAMESPACE::DOMElement* e)
type = UrlType::readme;
else if (typeAttribute == "documentation")
type = UrlType::documentation;
else if (typeAttribute == "discussion")
type = UrlType::discussion;
else
type = UrlType::website;