summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Oleynik <aoleynik@luxoft.com>2016-12-23 11:26:49 +0200
committerAndrey Oleynik <aoleynik@luxoft.com>2016-12-23 11:26:49 +0200
commit8ba7ec3b4f3509723a6984fd036453bd15fd5c7b (patch)
tree9d2473752d7aedbafd0c3396894a4283e8436b46
parentf85204d2a01ad3a94b32b22fbd1a1305ac2c4d86 (diff)
downloadsdl_core-8ba7ec3b4f3509723a6984fd036453bd15fd5c7b.tar.gz
Addresses comments
-rw-r--r--src/components/policy/policy_external/include/policy/status.h88
-rw-r--r--src/components/policy/policy_external/src/status.cc72
-rw-r--r--src/components/policy/policy_external/src/update_status_manager.cc3
-rw-r--r--src/components/policy/policy_regular/include/policy/status.h93
-rw-r--r--src/components/policy/policy_regular/src/status.cc70
-rw-r--r--src/components/policy/policy_regular/src/update_status_manager.cc3
6 files changed, 153 insertions, 176 deletions
diff --git a/src/components/policy/policy_external/include/policy/status.h b/src/components/policy/policy_external/include/policy/status.h
index 99026f7444..34890c6223 100644
--- a/src/components/policy/policy_external/include/policy/status.h
+++ b/src/components/policy/policy_external/include/policy/status.h
@@ -63,6 +63,12 @@ class UpdateStatusManager;
class Status {
public:
/**
+ * @brief Constructor
+ */
+ Status(const std::string& string_status,
+ const policy::PolicyTableStatus enum_status);
+
+ /**
* @brief Destructor
*/
virtual ~Status();
@@ -70,22 +76,23 @@ class Status {
/**
* @brief Process event by setting next status in case event can affect
* current status or ignores the event
- * @param mng Status manager pointer
+ * @param manager Status manager pointer
* @param event Event which needs to be processed
*/
- virtual void ProcessEvent(UpdateStatusManager* mng, UpdateEvent event) = 0;
+ virtual void ProcessEvent(UpdateStatusManager* manager,
+ UpdateEvent event) = 0;
/**
* @brief Return current status as string value
* @return Status as string
*/
- virtual const std::string get_status_string() const = 0;
+ virtual const std::string get_status_string() const;
/**
* @brief Return status as enum value
* @return Status as enum value
*/
- virtual PolicyTableStatus get_status() const = 0;
+ virtual PolicyTableStatus get_status() const;
/**
* @brief Check whether update is required in terms of status
@@ -98,6 +105,10 @@ class Status {
* @return True if update is pending, otherwise - false
*/
virtual bool IsUpdatePending() const;
+
+ private:
+ const std::string string_status_;
+ const PolicyTableStatus enum_status_;
};
/**
@@ -106,24 +117,17 @@ class Status {
class UpToDateStatus : public Status {
public:
/**
+ * @brief Constructor
+ */
+ UpToDateStatus();
+
+ /**
* @brief Process event by setting next status in case event can affect
* current status or ignores the event
- * @param mng Status manager pointer
+ * @param manager Status manager pointer
* @param event Event which needs to be processed
*/
- void ProcessEvent(UpdateStatusManager* mng, UpdateEvent event) OVERRIDE;
-
- /**
- * @brief Return current status as string value
- * @return Status as string
- */
- const std::string get_status_string() const OVERRIDE;
-
- /**
- * @brief Return status as enum value
- * @return Status as enum value
- */
- PolicyTableStatus get_status() const OVERRIDE;
+ void ProcessEvent(UpdateStatusManager* manager, UpdateEvent event) FINAL;
};
/**
@@ -132,30 +136,23 @@ class UpToDateStatus : public Status {
class UpdateNeededStatus : public Status {
public:
/**
+ * @brief Constructor
+ */
+ UpdateNeededStatus();
+
+ /**
* @brief Process event by setting next status in case event can affect
* current status or ignores the event
- * @param mng Status manager pointer
+ * @param manager Status manager pointer
* @param event Event which needs to be processed
*/
- void ProcessEvent(UpdateStatusManager* mng, UpdateEvent event) OVERRIDE;
-
- /**
- * @brief Return current status as string value
- * @return Status as string
- */
- const std::string get_status_string() const OVERRIDE;
-
- /**
- * @brief Return status as enum value
- * @return Status as enum value
- */
- PolicyTableStatus get_status() const OVERRIDE;
+ void ProcessEvent(UpdateStatusManager* manager, UpdateEvent event) FINAL;
/**
* @brief Check whether update is required in terms of status
* @return True if update is required, otherwise - false
*/
- bool IsUpdateRequired() const OVERRIDE;
+ bool IsUpdateRequired() const FINAL;
};
/**
@@ -164,36 +161,29 @@ class UpdateNeededStatus : public Status {
class UpdatingStatus : public Status {
public:
/**
+ * @brief Constructor
+ */
+ UpdatingStatus();
+
+ /**
* @brief Process event by setting next status in case event can affect
* current status or ignores the event
- * @param mng Status manager pointer
+ * @param manager Status manager pointer
* @param event Event which needs to be processed
*/
- void ProcessEvent(UpdateStatusManager* mng, UpdateEvent event) OVERRIDE;
-
- /**
- * @brief Return current status as string value
- * @return Status as string
- */
- const std::string get_status_string() const OVERRIDE;
-
- /**
- * @brief Return status as enum value
- * @return Status as enum value
- */
- PolicyTableStatus get_status() const OVERRIDE;
+ void ProcessEvent(UpdateStatusManager* manager, UpdateEvent event) FINAL;
/**
* @brief Check whether update is required in terms of status
* @return True if update is required, otherwise - false
*/
- bool IsUpdateRequired() const OVERRIDE;
+ bool IsUpdateRequired() const FINAL;
/**
* @brief Check whether update is pending in terms of status
* @return True if update is pending, otherwise - false
*/
- bool IsUpdatePending() const OVERRIDE;
+ bool IsUpdatePending() const FINAL;
};
}
diff --git a/src/components/policy/policy_external/src/status.cc b/src/components/policy/policy_external/src/status.cc
index 8f44766ba3..15e5b9b290 100644
--- a/src/components/policy/policy_external/src/status.cc
+++ b/src/components/policy/policy_external/src/status.cc
@@ -34,93 +34,79 @@
#include "policy/update_status_manager.h"
#include "utils/make_shared.h"
-void policy::UpToDateStatus::ProcessEvent(UpdateStatusManager* mng,
+policy::UpToDateStatus::UpToDateStatus()
+ : Status("UP_TO_DATE", policy::PolicyTableStatus::StatusUpToDate) {}
+
+void policy::UpToDateStatus::ProcessEvent(UpdateStatusManager* manager,
policy::UpdateEvent event) {
switch (event) {
case kOnNewAppRegistered:
case kOnResetPolicyTableRequireUpdate:
case kScheduleUpdate:
case kOnResetRetrySequence:
- mng->SetNextStatus(new UpdateNeededStatus());
+ manager->SetNextStatus(utils::MakeShared<UpdateNeededStatus>());
break;
default:
break;
}
}
-const std::string policy::UpToDateStatus::get_status_string() const {
- return "UP_TO_DATE";
-}
-
-policy::PolicyTableStatus policy::UpToDateStatus::get_status() const {
- return PolicyTableStatus::StatusUpToDate;
+policy::UpdateNeededStatus::UpdateNeededStatus()
+ : Status("UPDATE_NEEDED", policy::PolicyTableStatus::StatusUpdateRequired) {
}
-void policy::UpdateNeededStatus::ProcessEvent(policy::UpdateStatusManager* mng,
- policy::UpdateEvent event) {
+void policy::UpdateNeededStatus::ProcessEvent(
+ policy::UpdateStatusManager* manager, policy::UpdateEvent event) {
switch (event) {
case kOnUpdateSentOut:
- mng->SetNextStatus(utils::MakeShared<UpdatingStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpdatingStatus>());
break;
case kOnResetPolicyTableRequireUpdate:
- mng->SetNextStatus(utils::MakeShared<UpToDateStatus>());
- mng->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpToDateStatus>());
+ manager->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
break;
case kOnResetPolicyTableNoUpdate:
- mng->SetNextStatus(utils::MakeShared<UpToDateStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpToDateStatus>());
break;
default:
break;
}
}
-const std::string policy::UpdateNeededStatus::get_status_string() const {
- return "UPDATE_NEEDED";
-}
-
-policy::PolicyTableStatus policy::UpdateNeededStatus::get_status() const {
- return PolicyTableStatus::StatusUpdateRequired;
-}
-
bool policy::UpdateNeededStatus::IsUpdateRequired() const {
return true;
}
-void policy::UpdatingStatus::ProcessEvent(policy::UpdateStatusManager* mng,
+policy::UpdatingStatus::UpdatingStatus()
+ : Status("UPDATING", policy::PolicyTableStatus::StatusUpdatePending) {}
+
+void policy::UpdatingStatus::ProcessEvent(policy::UpdateStatusManager* manager,
policy::UpdateEvent event) {
switch (event) {
case kOnValidUpdateReceived:
case kOnResetPolicyTableNoUpdate:
- mng->SetNextStatus(utils::MakeShared<UpToDateStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpToDateStatus>());
break;
case kOnNewAppRegistered:
- mng->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
break;
case kOnWrongUpdateReceived:
case kOnUpdateTimeout:
- mng->SetNextStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpdateNeededStatus>());
break;
case kOnResetPolicyTableRequireUpdate:
- mng->SetNextStatus(utils::MakeShared<UpToDateStatus>());
- mng->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpToDateStatus>());
+ manager->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
break;
case kScheduleUpdate:
case kOnResetRetrySequence:
- mng->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
break;
default:
break;
}
}
-const std::string policy::UpdatingStatus::get_status_string() const {
- return "UPDATING";
-}
-
-policy::PolicyTableStatus policy::UpdatingStatus::get_status() const {
- return PolicyTableStatus::StatusUpdatePending;
-}
-
bool policy::UpdatingStatus::IsUpdatePending() const {
return true;
}
@@ -129,8 +115,20 @@ bool policy::UpdatingStatus::IsUpdateRequired() const {
return true;
}
+policy::Status::Status(const std::string& string_status,
+ const policy::PolicyTableStatus enum_status)
+ : string_status_(string_status), enum_status_(enum_status) {}
+
policy::Status::~Status() {}
+const std::string policy::Status::get_status_string() const {
+ return string_status_;
+}
+
+policy::PolicyTableStatus policy::Status::get_status() const {
+ return enum_status_;
+}
+
bool policy::Status::IsUpdateRequired() const {
return false;
}
diff --git a/src/components/policy/policy_external/src/update_status_manager.cc b/src/components/policy/policy_external/src/update_status_manager.cc
index b2ef91d4a6..6ec3b60778 100644
--- a/src/components/policy/policy_external/src/update_status_manager.cc
+++ b/src/components/policy/policy_external/src/update_status_manager.cc
@@ -33,6 +33,7 @@
#include "policy/update_status_manager.h"
#include "policy/policy_listener.h"
#include "utils/logger.h"
+#include "utils/make_shared.h"
namespace policy {
@@ -40,7 +41,7 @@ CREATE_LOGGERPTR_GLOBAL(logger_, "Policy")
UpdateStatusManager::UpdateStatusManager()
: listener_(NULL)
- , current_status_(new UpToDateStatus())
+ , current_status_(utils::MakeShared<UpToDateStatus>())
, apps_search_in_progress_(false)
, app_registered_from_non_consented_device_(true) {
update_status_thread_delegate_ = new UpdateThreadDelegate(this);
diff --git a/src/components/policy/policy_regular/include/policy/status.h b/src/components/policy/policy_regular/include/policy/status.h
index 913b8daefe..eb1a0b481d 100644
--- a/src/components/policy/policy_regular/include/policy/status.h
+++ b/src/components/policy/policy_regular/include/policy/status.h
@@ -63,6 +63,12 @@ class UpdateStatusManagerInterface;
class Status {
public:
/**
+ * @brief Constructor
+ */
+ Status(const std::string& string_status,
+ const policy::PolicyTableStatus enum_status);
+
+ /**
* @brief Destructor
*/
virtual ~Status();
@@ -70,23 +76,23 @@ class Status {
/**
* @brief Process event by setting next status in case event can affect
* current status or ignores the event
- * @param mng Status manager pointer
+ * @param manager Status manager pointer
* @param event Event which needs to be processed
*/
- virtual void ProcessEvent(UpdateStatusManagerInterface* mng,
+ virtual void ProcessEvent(UpdateStatusManagerInterface* manager,
UpdateEvent event) = 0;
/**
* @brief Return current status as string value
* @return Status as string
*/
- virtual const std::string get_status_string() const = 0;
+ virtual const std::string get_status_string() const;
/**
* @brief Return status as enum value
* @return Status as enum value
*/
- virtual PolicyTableStatus get_status() const = 0;
+ virtual PolicyTableStatus get_status() const;
/**
* @brief Check whether update is required in terms of status
@@ -99,6 +105,10 @@ class Status {
* @return True if update is pending, otherwise - false
*/
virtual bool IsUpdatePending() const;
+
+ private:
+ const std::string string_status_;
+ const PolicyTableStatus enum_status_;
};
/**
@@ -107,25 +117,18 @@ class Status {
class UpToDateStatus : public Status {
public:
/**
+ * @brief Constructor
+ */
+ UpToDateStatus();
+
+ /**
* @brief Process event by setting next status in case event can affect
* current status or ignores the event
- * @param mng Status manager pointer
+ * @param manager Status manager pointer
* @param event Event which needs to be processed
*/
- void ProcessEvent(UpdateStatusManagerInterface* mng,
- UpdateEvent event) OVERRIDE;
-
- /**
- * @brief Return current status as string value
- * @return Status as string
- */
- const std::string get_status_string() const OVERRIDE;
-
- /**
- * @brief Return status as enum value
- * @return Status as enum value
- */
- PolicyTableStatus get_status() const OVERRIDE;
+ void ProcessEvent(UpdateStatusManagerInterface* manager,
+ UpdateEvent event) FINAL;
};
/**
@@ -134,31 +137,24 @@ class UpToDateStatus : public Status {
class UpdateNeededStatus : public Status {
public:
/**
+ * @brief Constructor
+ */
+ UpdateNeededStatus();
+
+ /**
* @brief Process event by setting next status in case event can affect
* current status or ignores the event
- * @param mng Status manager pointer
+ * @param manager Status manager pointer
* @param event Event which needs to be processed
*/
- void ProcessEvent(UpdateStatusManagerInterface* mng,
- UpdateEvent event) OVERRIDE;
-
- /**
- * @brief Return current status as string value
- * @return Status as string
- */
- const std::string get_status_string() const OVERRIDE;
-
- /**
- * @brief Return status as enum value
- * @return Status as enum value
- */
- PolicyTableStatus get_status() const OVERRIDE;
+ void ProcessEvent(UpdateStatusManagerInterface* manager,
+ UpdateEvent event) FINAL;
/**
* @brief Check whether update is required in terms of status
* @return True if update is required, otherwise - false
*/
- bool IsUpdateRequired() const OVERRIDE;
+ bool IsUpdateRequired() const FINAL;
};
/**
@@ -167,37 +163,30 @@ class UpdateNeededStatus : public Status {
class UpdatingStatus : public Status {
public:
/**
+ * @brief Constructor
+ */
+ UpdatingStatus();
+
+ /**
* @brief Process event by setting next status in case event can affect
* current status or ignores the event
- * @param mng Status manager pointer
+ * @param manager Status manager pointer
* @param event Event which needs to be processed
*/
- void ProcessEvent(UpdateStatusManagerInterface* mng,
- UpdateEvent event) OVERRIDE;
-
- /**
- * @brief Return current status as string value
- * @return Status as string
- */
- const std::string get_status_string() const OVERRIDE;
-
- /**
- * @brief Return status as enum value
- * @return Status as enum value
- */
- PolicyTableStatus get_status() const OVERRIDE;
+ void ProcessEvent(UpdateStatusManagerInterface* manager,
+ UpdateEvent event) FINAL;
/**
* @brief Check whether update is required in terms of status
* @return True if update is required, otherwise - false
*/
- bool IsUpdateRequired() const OVERRIDE;
+ bool IsUpdateRequired() const FINAL;
/**
* @brief Check whether update is pending in terms of status
* @return True if update is pending, otherwise - false
*/
- bool IsUpdatePending() const OVERRIDE;
+ bool IsUpdatePending() const FINAL;
};
}
diff --git a/src/components/policy/policy_regular/src/status.cc b/src/components/policy/policy_regular/src/status.cc
index 1971261432..0d42c807d8 100644
--- a/src/components/policy/policy_regular/src/status.cc
+++ b/src/components/policy/policy_regular/src/status.cc
@@ -34,93 +34,79 @@
#include "policy/update_status_manager_interface.h"
#include "utils/make_shared.h"
-void policy::UpToDateStatus::ProcessEvent(UpdateStatusManagerInterface* mng,
+policy::UpToDateStatus::UpToDateStatus()
+ : Status("UP_TO_DATE", policy::PolicyTableStatus::StatusUpToDate) {}
+
+void policy::UpToDateStatus::ProcessEvent(UpdateStatusManagerInterface* manager,
policy::UpdateEvent event) {
switch (event) {
case kOnNewAppRegistered:
case kOnResetPolicyTableRequireUpdate:
case kScheduleUpdate:
case kOnResetRetrySequence:
- mng->SetNextStatus(new UpdateNeededStatus());
+ manager->SetNextStatus(utils::MakeShared<UpdateNeededStatus>());
break;
default:
break;
}
}
-const std::string policy::UpToDateStatus::get_status_string() const {
- return "UP_TO_DATE";
-}
-
-policy::PolicyTableStatus policy::UpToDateStatus::get_status() const {
- return PolicyTableStatus::StatusUpToDate;
+policy::UpdateNeededStatus::UpdateNeededStatus()
+ : Status("UPDATE_NEEDED", policy::PolicyTableStatus::StatusUpdateRequired) {
}
void policy::UpdateNeededStatus::ProcessEvent(
- policy::UpdateStatusManagerInterface* mng, policy::UpdateEvent event) {
+ policy::UpdateStatusManagerInterface* manager, policy::UpdateEvent event) {
switch (event) {
case kOnUpdateSentOut:
- mng->SetNextStatus(utils::MakeShared<UpdatingStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpdatingStatus>());
break;
case kOnResetPolicyTableRequireUpdate:
- mng->SetNextStatus(utils::MakeShared<UpToDateStatus>());
- mng->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpToDateStatus>());
+ manager->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
break;
case kOnResetPolicyTableNoUpdate:
- mng->SetNextStatus(utils::MakeShared<UpToDateStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpToDateStatus>());
break;
default:
break;
}
}
-const std::string policy::UpdateNeededStatus::get_status_string() const {
- return "UPDATE_NEEDED";
-}
-
-policy::PolicyTableStatus policy::UpdateNeededStatus::get_status() const {
- return PolicyTableStatus::StatusUpdateRequired;
-}
-
bool policy::UpdateNeededStatus::IsUpdateRequired() const {
return true;
}
+policy::UpdatingStatus::UpdatingStatus()
+ : Status("UPDATING", policy::PolicyTableStatus::StatusUpdatePending) {}
+
void policy::UpdatingStatus::ProcessEvent(
- policy::UpdateStatusManagerInterface* mng, policy::UpdateEvent event) {
+ policy::UpdateStatusManagerInterface* manager, policy::UpdateEvent event) {
switch (event) {
case kOnValidUpdateReceived:
case kOnResetPolicyTableNoUpdate:
- mng->SetNextStatus(utils::MakeShared<UpToDateStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpToDateStatus>());
break;
case kOnNewAppRegistered:
- mng->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
break;
case kOnWrongUpdateReceived:
case kOnUpdateTimeout:
- mng->SetNextStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpdateNeededStatus>());
break;
case kOnResetPolicyTableRequireUpdate:
- mng->SetNextStatus(utils::MakeShared<UpToDateStatus>());
- mng->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetNextStatus(utils::MakeShared<UpToDateStatus>());
+ manager->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
break;
case kScheduleUpdate:
case kOnResetRetrySequence:
- mng->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
+ manager->SetPostponedStatus(utils::MakeShared<UpdateNeededStatus>());
break;
default:
break;
}
}
-const std::string policy::UpdatingStatus::get_status_string() const {
- return "UPDATING";
-}
-
-policy::PolicyTableStatus policy::UpdatingStatus::get_status() const {
- return PolicyTableStatus::StatusUpdatePending;
-}
-
bool policy::UpdatingStatus::IsUpdatePending() const {
return true;
}
@@ -129,8 +115,20 @@ bool policy::UpdatingStatus::IsUpdateRequired() const {
return true;
}
+policy::Status::Status(const std::string& string_status,
+ const policy::PolicyTableStatus enum_status)
+ : string_status_(string_status), enum_status_(enum_status) {}
+
policy::Status::~Status() {}
+const std::string policy::Status::get_status_string() const {
+ return string_status_;
+}
+
+policy::PolicyTableStatus policy::Status::get_status() const {
+ return enum_status_;
+}
+
bool policy::Status::IsUpdateRequired() const {
return false;
}
diff --git a/src/components/policy/policy_regular/src/update_status_manager.cc b/src/components/policy/policy_regular/src/update_status_manager.cc
index b2ef91d4a6..6ec3b60778 100644
--- a/src/components/policy/policy_regular/src/update_status_manager.cc
+++ b/src/components/policy/policy_regular/src/update_status_manager.cc
@@ -33,6 +33,7 @@
#include "policy/update_status_manager.h"
#include "policy/policy_listener.h"
#include "utils/logger.h"
+#include "utils/make_shared.h"
namespace policy {
@@ -40,7 +41,7 @@ CREATE_LOGGERPTR_GLOBAL(logger_, "Policy")
UpdateStatusManager::UpdateStatusManager()
: listener_(NULL)
- , current_status_(new UpToDateStatus())
+ , current_status_(utils::MakeShared<UpToDateStatus>())
, apps_search_in_progress_(false)
, app_registered_from_non_consented_device_(true) {
update_status_thread_delegate_ = new UpdateThreadDelegate(this);