From c994739d2dfd080cd9848d9fb25291bbdf535530 Mon Sep 17 00:00:00 2001 From: Seungkeun Lee Date: Wed, 27 May 2015 12:11:29 +0900 Subject: [PATCH] Remove useless ManifestHandler in ApplicationData class And Fix GetStartResource bug Change-Id: Iac452d1ff137125e514e0ac683333e0f88bfa39c --- src/common/application_data.cc | 81 ++++++++++++++---------------------------- src/common/application_data.h | 26 +++++--------- src/common/resource_manager.cc | 18 +++------- 3 files changed, 39 insertions(+), 86 deletions(-) mode change 100644 => 100755 src/common/application_data.cc diff --git a/src/common/application_data.cc b/src/common/application_data.cc old mode 100644 new mode 100755 index f9917b9..21f75bd --- a/src/common/application_data.cc +++ b/src/common/application_data.cc @@ -69,16 +69,6 @@ ApplicationData::ApplicationData(const std::string& appid) : app_id_(appid) { ApplicationData::~ApplicationData() {} -std::shared_ptr - ApplicationData::application_icons_info() const { - return application_icons_info_; -} - -std::shared_ptr - ApplicationData::app_widget_info() const { - return app_widget_info_; -} - std::shared_ptr ApplicationData::app_control_info_list() const { return app_control_info_list_; @@ -89,19 +79,14 @@ std::shared_ptr return category_info_list_; } -std::shared_ptr - ApplicationData::ime_info() const { - return ime_info_; -} - std::shared_ptr ApplicationData::meta_data_info() const { return meta_data_info_; } std::shared_ptr - ApplicationData::navigation_info() const { - return navigation_info_; + ApplicationData::allowed_navigation_info() const { + return allowed_navigation_info_; } std::shared_ptr @@ -109,11 +94,6 @@ std::shared_ptr return permissions_info_; } -std::shared_ptr - ApplicationData::service_list() const { - return service_list_; -} - std::shared_ptr ApplicationData::setting_info() const { return setting_info_; @@ -134,6 +114,12 @@ std::shared_ptr return widget_info_; } +std::shared_ptr + ApplicationData::content_info() const { + return content_info_; +} + + bool ApplicationData::LoadManifestData() { std::string config_xml_path(application_path_ + kConfigXml); if (!utils::Exists(config_xml_path)) { @@ -143,35 +129,29 @@ bool ApplicationData::LoadManifestData() { } enum ManifestHandlerType { - APPLICATION_ICONS_HANDLER = 0, - APP_WIDGET_HANDLER, - APP_CONTROL_HANDLER, + APP_CONTROL_HANDLER = 0, CATEGORY_HANDLER, - IME_HANDLER, META_DATA_HANDLER, NAVIGATION_HANDLER, PERMISSIONS_HANDLER, - SERVICE_HANDLER, SETTING_HANDLER, SPLASH_SCREEN_HANDLER, TIZEN_APPLICATION_HANDLER, - WIDGET_HANDLER + WIDGET_HANDLER, + CONTENT_HANDLER }; std::vector handlers = { - new wgt::parse::ApplicationIconsHandler, // APPLICATION_ICONS_HANDLER - new wgt::parse::AppWidgetHandler, // APP_WIDGET_HANDLER new wgt::parse::AppControlHandler, // APP_CONTROL_HANDLER new wgt::parse::CategoryHandler, // CATEGORY_HANDLER - new wgt::parse::ImeHandler, // IME_HANDLER new wgt::parse::MetaDataHandler, // META_DATA_HANDLER new wgt::parse::NavigationHandler, // NAVIGATION_HANDLER new wgt::parse::PermissionsHandler, // PERMISSIONS_HANDLER - new wgt::parse::ServiceHandler, // SERVICE_HANDLER new wgt::parse::SettingHandler, // SETTING_HANDLER new wgt::parse::SplashScreenHandler, // SPLASH_SCREEN_HANDLER new wgt::parse::TizenApplicationHandler, // TIZEN_APPLICATION_HANDLER - new wgt::parse::WidgetHandler // WIDGET_HANDLER + new wgt::parse::WidgetHandler, // WIDGET_HANDLER + new wgt::parse::ContentHandler // CONTENT_HANDLER }; std::unique_ptr registry; @@ -187,16 +167,6 @@ bool ApplicationData::LoadManifestData() { return false; } - application_icons_info_ = - std::static_pointer_cast( - manifest_parser.GetManifestData( - handlers[ManifestHandlerType::APPLICATION_ICONS_HANDLER]->Key())); - - app_widget_info_ = - std::static_pointer_cast( - manifest_parser.GetManifestData( - handlers[ManifestHandlerType::APP_WIDGET_HANDLER]->Key())); - app_control_info_list_ = std::static_pointer_cast( manifest_parser.GetManifestData( @@ -207,17 +177,12 @@ bool ApplicationData::LoadManifestData() { manifest_parser.GetManifestData( handlers[ManifestHandlerType::CATEGORY_HANDLER]->Key())); - ime_info_ = - std::static_pointer_cast( - manifest_parser.GetManifestData( - handlers[ManifestHandlerType::IME_HANDLER]->Key())); - meta_data_info_ = std::static_pointer_cast( manifest_parser.GetManifestData( handlers[ManifestHandlerType::META_DATA_HANDLER]->Key())); - navigation_info_ = + allowed_navigation_info_ = std::static_pointer_cast( manifest_parser.GetManifestData( handlers[ManifestHandlerType::NAVIGATION_HANDLER]->Key())); @@ -227,11 +192,6 @@ bool ApplicationData::LoadManifestData() { manifest_parser.GetManifestData( handlers[ManifestHandlerType::PERMISSIONS_HANDLER]->Key())); - service_list_ = - std::static_pointer_cast( - manifest_parser.GetManifestData( - handlers[ManifestHandlerType::SERVICE_HANDLER]->Key())); - setting_info_ = std::static_pointer_cast( manifest_parser.GetManifestData( @@ -252,10 +212,23 @@ bool ApplicationData::LoadManifestData() { manifest_parser.GetManifestData( handlers[ManifestHandlerType::WIDGET_HANDLER]->Key())); + content_info_ = + std::static_pointer_cast( + manifest_parser.GetManifestData( + handlers[ManifestHandlerType::CONTENT_HANDLER]->Key())); + for (auto iter = handlers.begin(); iter != handlers.end(); ++iter) { delete *iter; } + // Set default empty object + if (widget_info_.get() == NULL) { + widget_info_.reset(new wgt::parse::WidgetInfo); + } + if (setting_info_.get() == NULL) { + setting_info_.reset(new wgt::parse::SettingInfo); + } + return true; } diff --git a/src/common/application_data.h b/src/common/application_data.h index 8a13e72..94e1600 100755 --- a/src/common/application_data.h +++ b/src/common/application_data.h @@ -19,6 +19,8 @@ #include #include #include +#include + #include #include @@ -32,24 +34,16 @@ class ApplicationData { bool LoadManifestData(); - std::shared_ptr - application_icons_info() const; - std::shared_ptr - app_widget_info() const; std::shared_ptr app_control_info_list() const; std::shared_ptr category_info_list() const; - std::shared_ptr - ime_info() const; std::shared_ptr meta_data_info() const; std::shared_ptr - navigation_info() const; + allowed_navigation_info() const; std::shared_ptr permissions_info() const; - std::shared_ptr - service_list() const; std::shared_ptr setting_info() const; std::shared_ptr @@ -58,30 +52,24 @@ class ApplicationData { tizen_application_info() const; std::shared_ptr widget_info() const; + std::shared_ptr + content_info() const; const std::string application_path() const { return application_path_; } const std::string pkg_id() const { return pkg_id_; } const std::string app_id() const { return app_id_; } private: - std::shared_ptr - application_icons_info_; - std::shared_ptr - app_widget_info_; std::shared_ptr app_control_info_list_; std::shared_ptr category_info_list_; - std::shared_ptr - ime_info_; std::shared_ptr meta_data_info_; std::shared_ptr - navigation_info_; + allowed_navigation_info_; std::shared_ptr permissions_info_; - std::shared_ptr - service_list_; std::shared_ptr setting_info_; std::shared_ptr @@ -90,6 +78,8 @@ class ApplicationData { tizen_application_info_; std::shared_ptr widget_info_; + std::shared_ptr + content_info_; std::string application_path_; std::string pkg_id_; diff --git a/src/common/resource_manager.cc b/src/common/resource_manager.cc index e044fea..597a7d0 100755 --- a/src/common/resource_manager.cc +++ b/src/common/resource_manager.cc @@ -197,24 +197,14 @@ ResourceManager::ResourceManager(ApplicationData* application_data, } std::string ResourceManager::GetDefaultOrEmpty() { - using wgt::parse::AppWidgetVector; std::string default_src; - // TODO(yons.kim): tizen content src - // content src - auto app_widget_info = application_data_->app_widget_info(); - if (app_widget_info) { - const AppWidgetVector app_widgets = app_widget_info->app_widgets(); - for (auto iter = app_widgets.begin(); - iter != app_widgets.end(); ++iter) { - if (iter->id == appid_) { - default_src = iter->content_src; - break; - } - } + auto content_info = application_data_->content_info(); + if (content_info) { + default_src = content_info->src(); } else { - LOGGER(WARN) << "AppWidgetInfo is NULL."; + LOGGER(WARN) << "ContentInfo is NULL."; } if (!default_src.empty()) { -- 2.7.4