/* * SPDX-FileCopyrightText: 2021 Anjani Kumar * SPDX-License-Identifier: LGPL-2.0-or-later */ #include "capalertmessage.h" #include "capalertinfo.h" #include "capreference.h" namespace KWeatherCore { class CAPAlertMessagePrivate : public QSharedData { public: QString identifier; QString sender; QDateTime sentTime; CAPAlertMessage::Status status = CAPAlertMessage::Status::UnknownStatus; CAPAlertMessage::MessageType msgType = CAPAlertMessage::MessageType::UnknownMessageType; CAPAlertMessage::Scope scope = CAPAlertMessage::Scope::UnknownScope; QString note; std::vector infoVec; std::vector references; }; CAPAlertMessage::CAPAlertMessage() : d(new CAPAlertMessagePrivate) { } CAPAlertMessage::CAPAlertMessage(const CAPAlertMessage &other) = default; CAPAlertMessage::CAPAlertMessage(CAPAlertMessage &&other) noexcept = default; CAPAlertMessage::~CAPAlertMessage() = default; CAPAlertMessage &CAPAlertMessage::operator=(const CAPAlertMessage &other) = default; CAPAlertMessage &CAPAlertMessage::operator=(CAPAlertMessage &&other) noexcept = default; QString CAPAlertMessage::identifier() const { return d->identifier; } QString CAPAlertMessage::sender() const { return d->sender; } QDateTime CAPAlertMessage::sentTime() const { return d->sentTime; } CAPAlertMessage::Status CAPAlertMessage::status() const { return d->status; } CAPAlertMessage::MessageType CAPAlertMessage::messageType() const { return d->msgType; } CAPAlertMessage::Scope CAPAlertMessage::scope() const { return d->scope; } QString CAPAlertMessage::note() const { return d->note; } const std::vector &CAPAlertMessage::alertInfos() const { return d->infoVec; } const std::vector &CAPAlertMessage::references() const { return d->references; } CAPReference CAPAlertMessage::ownReference() const { return CAPReference(sender(), identifier(), sentTime()); } void CAPAlertMessage::setIdentifier(const QString &identifier) { d->identifier = identifier; } void CAPAlertMessage::setSender(const QString &sender) { d->sender = sender; } void CAPAlertMessage::setSentTime(const QDateTime &dateTime) { d->sentTime = dateTime; } void CAPAlertMessage::setStatus(Status status) { d->status = status; } void CAPAlertMessage::setMessageType(MessageType msgType) { d->msgType = msgType; } void CAPAlertMessage::setScope(Scope scope) { d->scope = scope; } void CAPAlertMessage::setNote(const QString ¬e) { d->note = note; } void CAPAlertMessage::addInfo(CAPAlertInfo &&alertInfo) { d->infoVec.emplace_back(alertInfo); } void CAPAlertMessage::setReferences(std::vector &&references) { d->references = std::move(references); } } #include "moc_capalertmessage.cpp"