LEFT | RIGHT |
1 #include <vector> | 1 #include <vector> |
2 #include <string> | 2 #include <string> |
3 | 3 |
4 namespace AdblockPlus | 4 namespace AdblockPlus |
5 { | 5 { |
6 class JsEngine; | 6 class JsEngine; |
7 | 7 |
8 struct Subscription | 8 struct Subscription |
9 { | 9 { |
| 10 std::string url; |
10 std::string title; | 11 std::string title; |
11 std::string url; | 12 |
| 13 Subscription(const std::string& url, const std::string& title); |
12 }; | 14 }; |
13 | 15 |
14 class FilterEngine | 16 class FilterEngine |
15 { | 17 { |
16 public: | 18 public: |
17 FilterEngine(JsEngine& jsEngine); | 19 explicit FilterEngine(JsEngine& jsEngine); |
18 void AddSubscription(Subscription subscription); | 20 void AddSubscription(Subscription subscription); |
19 void RemoveSubscription(const Subscription& subscription); | 21 void RemoveSubscription(const Subscription& subscription); |
20 std::vector<Subscription> GetSubscriptions(); | 22 const Subscription* FindSubscription(const std::string& url) const; |
| 23 const std::vector<Subscription>& GetSubscriptions() const; |
21 void UpdateSubscriptionFilters(const Subscription& subscription); | 24 void UpdateSubscriptionFilters(const Subscription& subscription); |
22 std::vector<Subscription> FetchSubscriptionList(); | 25 std::vector<Subscription> FetchAvailableSubscriptions(); |
23 bool FiltersMatch(const std::string& url, | 26 bool Matches(const std::string& url, |
24 const std::string& contentType) const; | 27 const std::string& contentType) const; |
25 std::vector<std::string> GetElementHidingRules() const; | 28 std::vector<std::string> GetElementHidingRules() const; |
26 | 29 |
27 private: | 30 private: |
28 JsEngine& jsEngine; | 31 JsEngine& jsEngine; |
| 32 std::vector<Subscription> subscriptions; |
29 }; | 33 }; |
30 } | 34 } |
LEFT | RIGHT |