Line data Source code
1 : /* This Source Code Form is subject to the terms of the Mozilla
2 : * License, v. 2.0. If a copy of the MPL was not distributed with this
3 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4 :
5 : #ifndef nsUrlClassifierInfo_h_
6 : #define nsUrlClassifierInfo_h_
7 :
8 : #include "nsIUrlClassifierInfo.h"
9 : #include "nsString.h"
10 :
11 : class nsUrlClassifierPositiveCacheEntry final : public nsIUrlClassifierPositiveCacheEntry
12 : {
13 : public:
14 : nsUrlClassifierPositiveCacheEntry();
15 :
16 : NS_DECL_THREADSAFE_ISUPPORTS
17 : NS_DECL_NSIURLCLASSIFIERPOSITIVECACHEENTRY
18 :
19 : private:
20 0 : ~nsUrlClassifierPositiveCacheEntry() {}
21 :
22 : public:
23 : nsCString fullhash;
24 :
25 : int64_t expirySec;
26 : };
27 :
28 : class nsUrlClassifierCacheEntry final : public nsIUrlClassifierCacheEntry
29 : {
30 : public:
31 : nsUrlClassifierCacheEntry();
32 :
33 : NS_DECL_THREADSAFE_ISUPPORTS
34 : NS_DECL_NSIURLCLASSIFIERCACHEENTRY
35 :
36 : private:
37 0 : ~nsUrlClassifierCacheEntry() {}
38 :
39 : public:
40 : nsCString prefix;
41 :
42 : int64_t expirySec;
43 :
44 : nsTArray<nsCOMPtr<nsIUrlClassifierPositiveCacheEntry>> matches;
45 : };
46 :
47 : class nsUrlClassifierCacheInfo final : public nsIUrlClassifierCacheInfo
48 : {
49 : public:
50 : nsUrlClassifierCacheInfo();
51 :
52 : NS_DECL_THREADSAFE_ISUPPORTS
53 : NS_DECL_NSIURLCLASSIFIERCACHEINFO
54 :
55 : private:
56 0 : ~nsUrlClassifierCacheInfo() {}
57 :
58 : public:
59 : nsCString table;
60 :
61 : nsTArray<nsCOMPtr<nsIUrlClassifierCacheEntry>> entries;
62 : };
63 :
64 : #endif // nsUrlClassifierInfo_h_
|