OLD | NEW |
| (Empty) |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef CHROME_BROWSER_NET_SSL_CONFIG_SERVICE_MANAGER_H_ | |
6 #define CHROME_BROWSER_NET_SSL_CONFIG_SERVICE_MANAGER_H_ | |
7 | |
8 namespace net { | |
9 class SSLConfigService; | |
10 } // namespace net | |
11 | |
12 class PrefService; | |
13 class PrefRegistrySimple; | |
14 | |
15 // An interface for creating SSLConfigService objects. | |
16 class SSLConfigServiceManager { | |
17 public: | |
18 // Create an instance of the SSLConfigServiceManager. The lifetime of the | |
19 // PrefService objects must be longer than that of the manager. Get SSL | |
20 // preferences from local_state object. | |
21 static SSLConfigServiceManager* CreateDefaultManager( | |
22 PrefService* local_state); | |
23 | |
24 static void RegisterPrefs(PrefRegistrySimple* registry); | |
25 | |
26 virtual ~SSLConfigServiceManager() {} | |
27 | |
28 // Get an SSLConfigService instance. It may be a new instance or the manager | |
29 // may return the same instance multiple times. | |
30 // The caller should hold a reference as long as it needs the instance (eg, | |
31 // using scoped_refptr.) | |
32 virtual net::SSLConfigService* Get() = 0; | |
33 }; | |
34 | |
35 #endif // CHROME_BROWSER_NET_SSL_CONFIG_SERVICE_MANAGER_H_ | |
OLD | NEW |