| 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-2016 Eyeo GmbH | 3 * Copyright (C) 2006-2016 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 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 { | 55 { |
| 56 try | 56 try |
| 57 { | 57 { |
| 58 AdblockPlus::AppInfo appInfo; | 58 AdblockPlus::AppInfo appInfo; |
| 59 appInfo.version = "1.0"; | 59 appInfo.version = "1.0"; |
| 60 appInfo.name = "abpshell"; | 60 appInfo.name = "abpshell"; |
| 61 appInfo.application = "standalone"; | 61 appInfo.application = "standalone"; |
| 62 appInfo.applicationVersion = "1.0"; | 62 appInfo.applicationVersion = "1.0"; |
| 63 appInfo.locale = "en-US"; | 63 appInfo.locale = "en-US"; |
| 64 AdblockPlus::JsEnginePtr jsEngine(AdblockPlus::JsEngine::New(appInfo)); | 64 AdblockPlus::JsEnginePtr jsEngine(AdblockPlus::JsEngine::New(appInfo)); |
| 65 AdblockPlus::FilterEngine filterEngine(jsEngine); | 65 auto filterEngine = AdblockPlus::FilterEngine::Create(jsEngine); |
| 66 | 66 |
| 67 CommandMap commands; | 67 CommandMap commands; |
| 68 Add(commands, new GcCommand(jsEngine)); | 68 Add(commands, new GcCommand(jsEngine)); |
| 69 Add(commands, new HelpCommand(commands)); | 69 Add(commands, new HelpCommand(commands)); |
| 70 Add(commands, new FiltersCommand(filterEngine)); | 70 Add(commands, new FiltersCommand(*filterEngine)); |
| 71 Add(commands, new SubscriptionsCommand(filterEngine)); | 71 Add(commands, new SubscriptionsCommand(*filterEngine)); |
| 72 Add(commands, new MatchesCommand(filterEngine)); | 72 Add(commands, new MatchesCommand(*filterEngine)); |
| 73 Add(commands, new PrefsCommand(filterEngine)); | 73 Add(commands, new PrefsCommand(*filterEngine)); |
| 74 | 74 |
| 75 std::string commandLine; | 75 std::string commandLine; |
| 76 while (ReadCommandLine(commandLine)) | 76 while (ReadCommandLine(commandLine)) |
| 77 { | 77 { |
| 78 std::string commandName; | 78 std::string commandName; |
| 79 std::string arguments; | 79 std::string arguments; |
| 80 ParseCommandLine(commandLine, commandName, arguments); | 80 ParseCommandLine(commandLine, commandName, arguments); |
| 81 const CommandMap::const_iterator it = commands.find(commandName); | 81 const CommandMap::const_iterator it = commands.find(commandName); |
| 82 try | 82 try |
| 83 { | 83 { |
| 84 if (it != commands.end()) | 84 if (it != commands.end()) |
| 85 (*it->second)(arguments); | 85 (*it->second)(arguments); |
| 86 else | 86 else |
| 87 throw NoSuchCommandError(commandName); | 87 throw NoSuchCommandError(commandName); |
| 88 } | 88 } |
| 89 catch (NoSuchCommandError error) | 89 catch (NoSuchCommandError error) |
| 90 { | 90 { |
| 91 std::cout << error.what() << std::endl; | 91 std::cout << error.what() << std::endl; |
| 92 } | 92 } |
| 93 } | 93 } |
| 94 } | 94 } |
| 95 catch (const std::exception& e) | 95 catch (const std::exception& e) |
| 96 { | 96 { |
| 97 std::cerr << "Exception: " << e.what() << std::endl; | 97 std::cerr << "Exception: " << e.what() << std::endl; |
| 98 } | 98 } |
| 99 return 0; | 99 return 0; |
| 100 } | 100 } |
| OLD | NEW |