| 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 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 199 */ | 199 */ |
| 200 typedef std::function<void(const std::string&)> UpdateCheckDoneCallback; | 200 typedef std::function<void(const std::string&)> UpdateCheckDoneCallback; |
| 201 | 201 |
| 202 /** | 202 /** |
| 203 * Callback type invoked when the filters change. | 203 * Callback type invoked when the filters change. |
| 204 * The first parameter is the action event code (see | 204 * The first parameter is the action event code (see |
| 205 * [FilterNotifier.triggerListeners](https://adblockplus.org/jsdoc/adblockpl
uscore/FilterNotifier.html#.triggerListeners) | 205 * [FilterNotifier.triggerListeners](https://adblockplus.org/jsdoc/adblockpl
uscore/FilterNotifier.html#.triggerListeners) |
| 206 * for the full list). | 206 * for the full list). |
| 207 * The second parameter is the filter/subscription object affected, if any. | 207 * The second parameter is the filter/subscription object affected, if any. |
| 208 */ | 208 */ |
| 209 typedef std::function<void(const std::string&, const JsValuePtr)> FilterChan
geCallback; | 209 typedef std::function<void(const std::string&, const JsValue&)> FilterChange
Callback; |
| 210 | 210 |
| 211 /** | 211 /** |
| 212 * Container of name-value pairs representing a set of preferences. | 212 * Container of name-value pairs representing a set of preferences. |
| 213 */ | 213 */ |
| 214 typedef std::map<std::string, AdblockPlus::JsValuePtr> Prefs; | 214 typedef std::map<std::string, AdblockPlus::JsValuePtr> Prefs; |
| 215 | 215 |
| 216 /** | 216 /** |
| 217 * Callback type invoked when a new notification should be shown. | 217 * Callback type invoked when a new notification should be shown. |
| 218 * The parameter is the Notification object to be shown. | 218 * The parameter is the Notification object to be shown. |
| 219 */ | 219 */ |
| (...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 428 * @param pref Preference name. | 428 * @param pref Preference name. |
| 429 * @return Preference value, or `null` if it doesn't exist. | 429 * @return Preference value, or `null` if it doesn't exist. |
| 430 */ | 430 */ |
| 431 JsValuePtr GetPref(const std::string& pref) const; | 431 JsValuePtr GetPref(const std::string& pref) const; |
| 432 | 432 |
| 433 /** | 433 /** |
| 434 * Sets a preference value. | 434 * Sets a preference value. |
| 435 * @param pref Preference name. | 435 * @param pref Preference name. |
| 436 * @param value New value of the preference. | 436 * @param value New value of the preference. |
| 437 */ | 437 */ |
| 438 void SetPref(const std::string& pref, JsValuePtr value); | 438 void SetPref(const std::string& pref, const JsValuePtr& value); |
| 439 | 439 |
| 440 /** | 440 /** |
| 441 * Extracts the host from a URL. | 441 * Extracts the host from a URL. |
| 442 * @param url URL to extract the host from. | 442 * @param url URL to extract the host from. |
| 443 * @return Extracted host. | 443 * @return Extracted host. |
| 444 */ | 444 */ |
| 445 std::string GetHostFromURL(const std::string& url) const; | 445 std::string GetHostFromURL(const std::string& url) const; |
| 446 | 446 |
| 447 /** | 447 /** |
| 448 * Sets the callback invoked when an application update becomes available. | 448 * Sets the callback invoked when an application update becomes available. |
| 449 * @param callback Callback to invoke. | 449 * @param callback Callback to invoke. |
| 450 */ | 450 */ |
| 451 void SetUpdateAvailableCallback(UpdateAvailableCallback callback); | 451 void SetUpdateAvailableCallback(const UpdateAvailableCallback& callback); |
| 452 | 452 |
| 453 /** | 453 /** |
| 454 * Removes the callback invoked when an application update becomes | 454 * Removes the callback invoked when an application update becomes |
| 455 * available. | 455 * available. |
| 456 */ | 456 */ |
| 457 void RemoveUpdateAvailableCallback(); | 457 void RemoveUpdateAvailableCallback(); |
| 458 | 458 |
| 459 /** | 459 /** |
| 460 * Forces an immediate update check. | 460 * Forces an immediate update check. |
| 461 * `FilterEngine` will automatically check for updates in regular intervals, | 461 * `FilterEngine` will automatically check for updates in regular intervals, |
| 462 * so applications should only call this when the user triggers an update | 462 * so applications should only call this when the user triggers an update |
| 463 * check manually. | 463 * check manually. |
| 464 * @param callback Optional callback to invoke when the update check is | 464 * @param callback Optional callback to invoke when the update check is |
| 465 * finished. The string parameter will be empty when the update check | 465 * finished. The string parameter will be empty when the update check |
| 466 * succeeded, or contain an error message if it failed. | 466 * succeeded, or contain an error message if it failed. |
| 467 * Note that the callback will be invoked whether updates are | 467 * Note that the callback will be invoked whether updates are |
| 468 * available or not - to react to updates being available, use | 468 * available or not - to react to updates being available, use |
| 469 * `FilterEngine::SetUpdateAvailableCallback()`. | 469 * `FilterEngine::SetUpdateAvailableCallback()`. |
| 470 */ | 470 */ |
| 471 void ForceUpdateCheck(const UpdateCheckDoneCallback& callback = UpdateCheckD
oneCallback()); | 471 void ForceUpdateCheck(const UpdateCheckDoneCallback& callback = UpdateCheckD
oneCallback()); |
| 472 | 472 |
| 473 /** | 473 /** |
| 474 * Sets the callback invoked when the filters change. | 474 * Sets the callback invoked when the filters change. |
| 475 * @param callback Callback to invoke. | 475 * @param callback Callback to invoke. |
| 476 */ | 476 */ |
| 477 void SetFilterChangeCallback(FilterChangeCallback callback); | 477 void SetFilterChangeCallback(const FilterChangeCallback& callback); |
| 478 | 478 |
| 479 /** | 479 /** |
| 480 * Removes the callback invoked when the filters change. | 480 * Removes the callback invoked when the filters change. |
| 481 */ | 481 */ |
| 482 void RemoveFilterChangeCallback(); | 482 void RemoveFilterChangeCallback(); |
| 483 | 483 |
| 484 /** | 484 /** |
| 485 * Stores the value indicating what connection types are allowed, it is | 485 * Stores the value indicating what connection types are allowed, it is |
| 486 * passed to CreateParameters::isConnectionAllowed callback. | 486 * passed to CreateParameters::isConnectionAllowed callback. |
| 487 * @param value Stored value. nullptr means removing of any previously | 487 * @param value Stored value. nullptr means removing of any previously |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 527 JsEnginePtr jsEngine; | 527 JsEnginePtr jsEngine; |
| 528 bool firstRun; | 528 bool firstRun; |
| 529 int updateCheckId; | 529 int updateCheckId; |
| 530 static const std::map<ContentType, std::string> contentTypes; | 530 static const std::map<ContentType, std::string> contentTypes; |
| 531 | 531 |
| 532 explicit FilterEngine(const JsEnginePtr& jsEngine); | 532 explicit FilterEngine(const JsEnginePtr& jsEngine); |
| 533 | 533 |
| 534 FilterPtr CheckFilterMatch(const std::string& url, | 534 FilterPtr CheckFilterMatch(const std::string& url, |
| 535 ContentTypeMask contentTypeMask, | 535 ContentTypeMask contentTypeMask, |
| 536 const std::string& documentUrl) const; | 536 const std::string& documentUrl) const; |
| 537 void UpdateAvailable(UpdateAvailableCallback callback, JsValueList& params)
const; | 537 void UpdateAvailable(const UpdateAvailableCallback& callback, const JsValueL
ist& params) const; |
| 538 void UpdateCheckDone(const std::string& eventName, | 538 void UpdateCheckDone(const std::string& eventName, |
| 539 UpdateCheckDoneCallback callback, JsValueList& params); | 539 const UpdateCheckDoneCallback& callback, const JsValueL
ist& params); |
| 540 void FilterChanged(FilterChangeCallback callback, JsValueList& params) const
; | 540 void FilterChanged(const FilterChangeCallback& callback, const JsValueList&
params) const; |
| 541 void ShowNotification(const ShowNotificationCallback& callback, | 541 void ShowNotification(const ShowNotificationCallback& callback, |
| 542 const JsValueList& params) const; | 542 const JsValueList& params) const; |
| 543 FilterPtr GetWhitelistingFilter(const std::string& url, | 543 FilterPtr GetWhitelistingFilter(const std::string& url, |
| 544 ContentTypeMask contentTypeMask, const std::string& documentUrl) const; | 544 ContentTypeMask contentTypeMask, const std::string& documentUrl) const; |
| 545 FilterPtr GetWhitelistingFilter(const std::string& url, | 545 FilterPtr GetWhitelistingFilter(const std::string& url, |
| 546 ContentTypeMask contentTypeMask, | 546 ContentTypeMask contentTypeMask, |
| 547 const std::vector<std::string>& documentUrls) const; | 547 const std::vector<std::string>& documentUrls) const; |
| 548 }; | 548 }; |
| 549 } | 549 } |
| 550 | 550 |
| 551 #endif | 551 #endif |
| OLD | NEW |