| 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-present eyeo GmbH |   3  * Copyright (C) 2006-present 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 | 
|  11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the |  11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|  12  * GNU General Public License for more details. |  12  * GNU General Public License for more details. | 
|  13  * |  13  * | 
|  14  * You should have received a copy of the GNU General Public License |  14  * You should have received a copy of the GNU General Public License | 
|  15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. |  15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 
|  16  */ |  16  */ | 
|  17  |  17  | 
|  18 #pragma once |  18 #pragma once | 
|  19  |  19  | 
 |  20 #include "../base.h" | 
|  20 #include "../subscription/Subscription.h" |  21 #include "../subscription/Subscription.h" | 
|  21 #include "../bindings/runtime.h" |  22 #include "../bindings/runtime.h" | 
|  22  |  23  | 
 |  24 ABP_NS_BEGIN | 
 |  25  | 
|  23 class FilterStorage |  26 class FilterStorage | 
|  24 { |  27 { | 
|  25 public: |  28 public: | 
|  26   typedef std::vector<SubscriptionPtr> Subscriptions; |  29   typedef std::vector<SubscriptionPtr> Subscriptions; | 
|  27  |  30  | 
|  28 private: |  31 private: | 
|  29   Subscriptions mSubscriptions; |  32   Subscriptions mSubscriptions; | 
|  30   static FilterStorage* mInstance; |  33   static FilterStorage* mInstance; | 
|  31  |  34  | 
|  32 public: |  35 public: | 
|  33   static FilterStorage* BINDINGS_EXPORTED GetInstance() |  36   static FilterStorage* BINDINGS_EXPORTED GetInstance() | 
|  34   { |  37   { | 
|  35     return mInstance; |  38     return mInstance; | 
|  36   } |  39   } | 
|  37   Subscriptions::size_type BINDINGS_EXPORTED GetSubscriptionCount() const; |  40   Subscriptions::size_type BINDINGS_EXPORTED GetSubscriptionCount() const; | 
|  38   Subscription* BINDINGS_EXPORTED SubscriptionAt( |  41   Subscription* BINDINGS_EXPORTED SubscriptionAt( | 
|  39       Subscriptions::size_type index) const; |  42       Subscriptions::size_type index) const; | 
|  40   int BINDINGS_EXPORTED IndexOfSubscription( |  43   int BINDINGS_EXPORTED IndexOfSubscription( | 
|  41       const Subscription& subscription) const; |  44       const Subscription& subscription) const; | 
|  42   Subscription* BINDINGS_EXPORTED GetSubscriptionForFilter( |  45   Subscription* BINDINGS_EXPORTED GetSubscriptionForFilter( | 
|  43       const Filter& filter) const; |  46       const Filter& filter) const; | 
|  44   bool BINDINGS_EXPORTED AddSubscription(Subscription& subscription); |  47   bool BINDINGS_EXPORTED AddSubscription(Subscription& subscription); | 
|  45   bool BINDINGS_EXPORTED RemoveSubscription(Subscription& subscription); |  48   bool BINDINGS_EXPORTED RemoveSubscription(Subscription& subscription); | 
|  46   bool BINDINGS_EXPORTED MoveSubscription(Subscription& subscription, |  49   bool BINDINGS_EXPORTED MoveSubscription(Subscription& subscription, | 
|  47       const Subscription* insertBefore); |  50       const Subscription* insertBefore); | 
|  48 }; |  51 }; | 
 |  52  | 
 |  53 ABP_NS_END | 
| OLD | NEW |