1 // Copyright (c) 2014 Intel Corporation. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "xwalk/application/common/manifest_handlers/tizen_setting_handler.h"
10 #include "base/strings/utf_string_conversions.h"
11 #include "xwalk/application/common/application_manifest_constants.h"
15 namespace keys = application_widget_keys;
17 namespace application {
19 TizenSettingInfo::TizenSettingInfo()
20 : hwkey_enabled_(true) {}
22 TizenSettingInfo::~TizenSettingInfo() {}
24 TizenSettingHandler::TizenSettingHandler() {}
26 TizenSettingHandler::~TizenSettingHandler() {}
28 bool TizenSettingHandler::Parse(scoped_refptr<ApplicationData> application,
29 base::string16* error) {
30 scoped_ptr<TizenSettingInfo> app_info(new TizenSettingInfo);
31 const Manifest* manifest = application->GetManifest();
35 manifest->GetString(keys::kTizenHardwareKey, &hwkey);
36 app_info->set_hwkey_enabled(hwkey != "disable");
38 application->SetManifestData(keys::kTizenSettingKey,
43 bool TizenSettingHandler::Validate(
44 scoped_refptr<const ApplicationData> application,
45 std::string* error) const {
46 const Manifest* manifest = application->GetManifest();
49 manifest->GetString(keys::kTizenHardwareKey, &hwkey);
50 if (!hwkey.empty() && hwkey != "enable" && hwkey != "disable") {
51 *error = std::string("The hwkey value must be 'enable'/'disable',"
52 " or not specified in configuration file.");
58 std::vector<std::string> TizenSettingHandler::Keys() const {
59 return std::vector<std::string>(1, keys::kTizenSettingKey);
62 } // namespace application