summaryrefslogtreecommitdiff
path: root/src/components/application_manager/src/app_service_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/application_manager/src/app_service_manager.cc')
-rw-r--r--src/components/application_manager/src/app_service_manager.cc22
1 files changed, 19 insertions, 3 deletions
diff --git a/src/components/application_manager/src/app_service_manager.cc b/src/components/application_manager/src/app_service_manager.cc
index 24c21dc201..d148e4ef61 100644
--- a/src/components/application_manager/src/app_service_manager.cc
+++ b/src/components/application_manager/src/app_service_manager.cc
@@ -45,8 +45,6 @@
#include "smart_objects/enum_schema_item.h"
#include "utils/logger.h"
-#include "smart_objects/enum_schema_item.h"
-
CREATE_LOGGERPTR_GLOBAL(logger_, "AppServiceManager")
namespace application_manager {
@@ -56,7 +54,9 @@ const char* kDefaults = "defaults";
AppServiceManager::AppServiceManager(ApplicationManager& app_manager,
resumption::LastState& last_state)
- : app_manager_(app_manager), last_state_(last_state) {}
+ : app_manager_(app_manager)
+ , last_state_(last_state)
+ , rpc_passing_handler_(*this, app_manager_) {}
AppServiceManager::~AppServiceManager() {
LOG4CXX_AUTO_TRACE(logger_);
@@ -544,4 +544,20 @@ void AppServiceManager::AppServiceUpdated(
services[-1] = service;
}
+std::vector<std::pair<std::string, AppService> >
+AppServiceManager::GetActiveServices() {
+ std::vector<std::pair<std::string, AppService> > active_services;
+ for (auto it = published_services_.begin(); it != published_services_.end();
+ ++it) {
+ if (it->second.record[strings::service_active].asBool()) {
+ active_services.push_back(*it);
+ }
+ }
+ return active_services;
+}
+
+RPCPassingHandler& AppServiceManager::GetRPCPassingHandler() {
+ return rpc_passing_handler_;
+}
+
} // namespace application_manager