OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Brought to you by the letter D and the number 2. | 5 // Brought to you by the letter D and the number 2. |
6 | 6 |
7 #ifndef NET_COOKIES_COOKIE_MONSTER_H_ | 7 #ifndef NET_COOKIES_COOKIE_MONSTER_H_ |
8 #define NET_COOKIES_COOKIE_MONSTER_H_ | 8 #define NET_COOKIES_COOKIE_MONSTER_H_ |
9 | 9 |
10 #include <deque> | 10 #include <deque> |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 // task will be queued in tasks_pending_for_key_ while PermanentCookieStore | 60 // task will be queued in tasks_pending_for_key_ while PermanentCookieStore |
61 // loads cookies for the specified domain key(eTLD+1) on DB thread. | 61 // loads cookies for the specified domain key(eTLD+1) on DB thread. |
62 // | 62 // |
63 // Callbacks are guaranteed to be invoked on the calling thread. | 63 // Callbacks are guaranteed to be invoked on the calling thread. |
64 // | 64 // |
65 // TODO(deanm) Implement CookieMonster, the cookie database. | 65 // TODO(deanm) Implement CookieMonster, the cookie database. |
66 // - Verify that our domain enforcement and non-dotted handling is correct | 66 // - Verify that our domain enforcement and non-dotted handling is correct |
67 class NET_EXPORT CookieMonster : public CookieStore { | 67 class NET_EXPORT CookieMonster : public CookieStore { |
68 public: | 68 public: |
69 class PersistentCookieStore; | 69 class PersistentCookieStore; |
70 typedef CookieMonsterDelegate Delegate; | |
71 | 70 |
72 // Terminology: | 71 // Terminology: |
73 // * The 'top level domain' (TLD) of an internet domain name is | 72 // * The 'top level domain' (TLD) of an internet domain name is |
74 // the terminal "." free substring (e.g. "com" for google.com | 73 // the terminal "." free substring (e.g. "com" for google.com |
75 // or world.std.com). | 74 // or world.std.com). |
76 // * The 'effective top level domain' (eTLD) is the longest | 75 // * The 'effective top level domain' (eTLD) is the longest |
77 // "." initiated terminal substring of an internet domain name | 76 // "." initiated terminal substring of an internet domain name |
78 // that is controlled by a general domain registrar. | 77 // that is controlled by a general domain registrar. |
79 // (e.g. "co.uk" for news.bbc.co.uk). | 78 // (e.g. "co.uk" for news.bbc.co.uk). |
80 // * The 'effective top level domain plus one' (eTLD+1) is the | 79 // * The 'effective top level domain plus one' (eTLD+1) is the |
(...skipping 755 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
836 virtual ~PersistentCookieStore() {} | 835 virtual ~PersistentCookieStore() {} |
837 | 836 |
838 private: | 837 private: |
839 friend class base::RefCountedThreadSafe<PersistentCookieStore>; | 838 friend class base::RefCountedThreadSafe<PersistentCookieStore>; |
840 DISALLOW_COPY_AND_ASSIGN(PersistentCookieStore); | 839 DISALLOW_COPY_AND_ASSIGN(PersistentCookieStore); |
841 }; | 840 }; |
842 | 841 |
843 } // namespace net | 842 } // namespace net |
844 | 843 |
845 #endif // NET_COOKIES_COOKIE_MONSTER_H_ | 844 #endif // NET_COOKIES_COOKIE_MONSTER_H_ |
OLD | NEW |