| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
| 3  * Copyright (C) 2006-2017 eyeo GmbH | 3  * Copyright (C) 2006-2017 eyeo GmbH | 
| 4  * | 4  * | 
| 5  * Adblock Plus is free software: you can redistribute it and/or modify | 5  * Adblock Plus is free software: you can redistribute it and/or modify | 
| 6  * it under the terms of the GNU General Public License version 3 as | 6  * it under the terms of the GNU General Public License version 3 as | 
| 7  * published by the Free Software Foundation. | 7  * published by the Free Software Foundation. | 
| 8  * | 8  * | 
| 9  * Adblock Plus is distributed in the hope that it will be useful, | 9  * Adblock Plus is distributed in the hope that it will be useful, | 
| 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| (...skipping 23 matching lines...) Expand all  Loading... | 
| 34   { | 34   { | 
| 35     ShowUsage(); | 35     ShowUsage(); | 
| 36     return; | 36     return; | 
| 37   } | 37   } | 
| 38 | 38 | 
| 39   if (action == "show") | 39   if (action == "show") | 
| 40   { | 40   { | 
| 41     std::string pref; | 41     std::string pref; | 
| 42     argumentStream >> pref; | 42     argumentStream >> pref; | 
| 43 | 43 | 
| 44     AdblockPlus::JsValuePtr value = filterEngine.GetPref(pref); | 44     auto value = filterEngine.GetPref(pref); | 
| 45     if (value->IsUndefined()) | 45     if (value.IsUndefined()) | 
| 46       std::cout << "No such preference" << std::endl; | 46       std::cout << "No such preference" << std::endl; | 
| 47     else | 47     else | 
| 48     { | 48     { | 
| 49       if (value->IsString()) | 49       if (value.IsString()) | 
| 50         std::cout << "(string) "; | 50         std::cout << "(string) "; | 
| 51       else if (value->IsNumber()) | 51       else if (value.IsNumber()) | 
| 52         std::cout << "(number) "; | 52         std::cout << "(number) "; | 
| 53       else if (value->IsBool()) | 53       else if (value.IsBool()) | 
| 54         std::cout << "(bool) "; | 54         std::cout << "(bool) "; | 
| 55       else | 55       else | 
| 56         std::cout << "(unknown type) "; | 56         std::cout << "(unknown type) "; | 
| 57       std::cout << value->AsString() << std::endl; | 57       std::cout << value.AsString() << std::endl; | 
| 58     } | 58     } | 
| 59   } | 59   } | 
| 60   else if (action == "set") | 60   else if (action == "set") | 
| 61   { | 61   { | 
| 62     std::string pref; | 62     std::string pref; | 
| 63     argumentStream >> pref; | 63     argumentStream >> pref; | 
| 64 | 64 | 
| 65     AdblockPlus::JsValuePtr current = filterEngine.GetPref(pref); | 65     auto current = filterEngine.GetPref(pref); | 
| 66     if (current->IsUndefined()) | 66     if (current.IsUndefined()) | 
| 67       std::cout << "No such preference" << std::endl; | 67       std::cout << "No such preference" << std::endl; | 
| 68     else if (current->IsString()) | 68     else if (current.IsString()) | 
| 69     { | 69     { | 
| 70       std::string value; | 70       std::string value; | 
| 71       std::getline(argumentStream, value); | 71       std::getline(argumentStream, value); | 
| 72       filterEngine.SetPref(pref, filterEngine.GetJsEngine()->NewValue(value)); | 72       filterEngine.SetPref(pref, filterEngine.GetJsEngine()->NewValue(value)); | 
| 73     } | 73     } | 
| 74     else if (current->IsNumber()) | 74     else if (current.IsNumber()) | 
| 75     { | 75     { | 
| 76       int64_t value; | 76       int64_t value; | 
| 77       argumentStream >> value; | 77       argumentStream >> value; | 
| 78       filterEngine.SetPref(pref, filterEngine.GetJsEngine()->NewValue(value)); | 78       filterEngine.SetPref(pref, filterEngine.GetJsEngine()->NewValue(value)); | 
| 79     } | 79     } | 
| 80     else if (current->IsBool()) | 80     else if (current.IsBool()) | 
| 81     { | 81     { | 
| 82       bool value; | 82       bool value; | 
| 83       argumentStream >> value; | 83       argumentStream >> value; | 
| 84       filterEngine.SetPref(pref, filterEngine.GetJsEngine()->NewValue(value)); | 84       filterEngine.SetPref(pref, filterEngine.GetJsEngine()->NewValue(value)); | 
| 85     } | 85     } | 
| 86     else | 86     else | 
| 87       std::cout << "Cannot set a preference of unknown type" << std::endl; | 87       std::cout << "Cannot set a preference of unknown type" << std::endl; | 
| 88   } | 88   } | 
| 89   else | 89   else | 
| 90     throw NoSuchCommandError(name + " " + action); | 90     throw NoSuchCommandError(name + " " + action); | 
| 91 } | 91 } | 
| 92 | 92 | 
| 93 std::string PrefsCommand::GetDescription() const | 93 std::string PrefsCommand::GetDescription() const | 
| 94 { | 94 { | 
| 95   return "Get and set preferences"; | 95   return "Get and set preferences"; | 
| 96 } | 96 } | 
| 97 | 97 | 
| 98 std::string PrefsCommand::GetUsage() const | 98 std::string PrefsCommand::GetUsage() const | 
| 99 { | 99 { | 
| 100   return name + " [show PREF|set PREF VALUE]"; | 100   return name + " [show PREF|set PREF VALUE]"; | 
| 101 } | 101 } | 
| OLD | NEW | 
|---|