diff options
author | JackLivio <jack@livio.io> | 2018-10-19 15:05:09 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-19 15:05:09 -0400 |
commit | d36316738785c96dab2ee892762ed08c059fffde (patch) | |
tree | 168a7c0705b5bc8f0dee7ce4b511ccf71759d9b4 /src/components/remote_control/src/commands/on_interior_vehicle_data_notification.cc | |
parent | 7f7fcbb998fb17f2954fd103349af67ea9b71a3f (diff) | |
parent | 83c5e805346d55ec7fb9f4ba8b6f6855d992273e (diff) | |
download | sdl_core-hotfix/templates_updates.tar.gz |
Merge pull request #2572 from smartdevicelink/release/5.0.05.0.0hotfix/templates_updatesfeature/show_app_menufeature/progress_bar_seekfeature/open-menu-rpcfeature/open-menu-rfeature/button
Release 5.0.0
Diffstat (limited to 'src/components/remote_control/src/commands/on_interior_vehicle_data_notification.cc')
-rw-r--r-- | src/components/remote_control/src/commands/on_interior_vehicle_data_notification.cc | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/src/components/remote_control/src/commands/on_interior_vehicle_data_notification.cc b/src/components/remote_control/src/commands/on_interior_vehicle_data_notification.cc deleted file mode 100644 index fccd8392c7..0000000000 --- a/src/components/remote_control/src/commands/on_interior_vehicle_data_notification.cc +++ /dev/null @@ -1,103 +0,0 @@ -/* - Copyright (c) 2017, Ford Motor Company - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following - disclaimer in the documentation and/or other materials provided with the - distribution. - - Neither the name of the Ford Motor Company nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - */ - -#include "remote_control/commands/on_interior_vehicle_data_notification.h" -#include <algorithm> -#include <vector> -#include "json/json.h" -#include "utils/make_shared.h" -#include "remote_control/rc_module_constants.h" -#include "remote_control/message_helper.h" -#include "remote_control/remote_control_plugin.h" -#include "remote_control/rc_app_extension.h" - -namespace remote_control { - -namespace commands { - -CREATE_LOGGERPTR_GLOBAL(logger_, "OnInteriorVehicleDataNotification") - -OnInteriorVehicleDataNotification::OnInteriorVehicleDataNotification( - const application_manager::MessagePtr& message, - RemotePluginInterface& rc_module) - : BaseCommandNotification(message, rc_module) {} - -OnInteriorVehicleDataNotification::~OnInteriorVehicleDataNotification() {} - -void OnInteriorVehicleDataNotification::Execute() { - LOG4CXX_AUTO_TRACE(logger_); - - Json::Value json; - - application_manager::MessagePtr msg = message(); - - json = MessageHelper::StringToValue(msg->json_message()); - - Json::Value module_type = ModuleType(json); - - typedef std::vector<application_manager::ApplicationSharedPtr> AppPtrs; - AppPtrs apps = service_->GetApplications(rc_module_.GetModuleID()); - - for (AppPtrs::iterator it = apps.begin(); it != apps.end(); ++it) { - DCHECK(*it); - application_manager::Application& app = **it; - - RCAppExtensionPtr extension = - application_manager::AppExtensionPtr::static_pointer_cast< - RCAppExtension>(app.QueryInterface(rc_module_.GetModuleID())); - DCHECK(extension); - LOG4CXX_TRACE(logger_, "Check subscription for " << app.app_id()); - if (extension->IsSubscibedToInteriorVehicleData(module_type)) { - application_manager::MessagePtr message = - utils::MakeShared<application_manager::Message>(*msg); - message->set_message_type( - application_manager::MessageType::kNotification); - message->set_protocol_version(app.protocol_version()); - message->set_function_id(functional_modules::ON_INTERIOR_VEHICLE_DATA); - message->set_function_name(MessageHelper::GetMobileAPIName( - functional_modules::ON_INTERIOR_VEHICLE_DATA)); - message->set_connection_key(app.app_id()); - NotifyOneApplication(message); - } - } -} - -std::string OnInteriorVehicleDataNotification::ModuleType( - const Json::Value& message) { - const Json::Value& module_data = - message.get(message_params::kModuleData, Json::Value(Json::objectValue)); - return module_data.get(message_params::kModuleType, "").asString(); -} - -} // namespace commands - -} // namespace remote_control |