Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: chrome/browser/safe_browsing/certificate_reporting_service_factory.h

Issue 2503243003: Wire up CertificateReportingService to handle report uploads (Closed)
Patch Set: Rebase Created 3 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef CHROME_BROWSER_SAFE_BROWSING_CERTIFICATE_REPORTING_SERVICE_FACTORY_H_ 5 #ifndef CHROME_BROWSER_SAFE_BROWSING_CERTIFICATE_REPORTING_SERVICE_FACTORY_H_
6 #define CHROME_BROWSER_SAFE_BROWSING_CERTIFICATE_REPORTING_SERVICE_FACTORY_H_ 6 #define CHROME_BROWSER_SAFE_BROWSING_CERTIFICATE_REPORTING_SERVICE_FACTORY_H_
7 7
8 #include "base/memory/singleton.h" 8 #include "base/memory/singleton.h"
9 #include "components/keyed_service/content/browser_context_keyed_service_factory .h" 9 #include "components/keyed_service/content/browser_context_keyed_service_factory .h"
10 10
11 namespace content { 11 namespace content {
12 class BrowserContext; 12 class BrowserContext;
13 } 13 }
14 14
15 class CertificateReportingService; 15 class CertificateReportingService;
16 16
17 class CertificateReportingServiceFactory 17 class CertificateReportingServiceFactory
18 : public BrowserContextKeyedServiceFactory { 18 : public BrowserContextKeyedServiceFactory {
19 public: 19 public:
20 // Returns singleton instance of CertificateReportingServiceFactory. 20 // Returns singleton instance of CertificateReportingServiceFactory.
21 static CertificateReportingServiceFactory* GetInstance(); 21 static CertificateReportingServiceFactory* GetInstance();
22 22
23 // Returns the reporting service associated with |context|. 23 // Returns the reporting service associated with |context|.
24 static CertificateReportingService* GetForBrowserContext( 24 static CertificateReportingService* GetForBrowserContext(
25 content::BrowserContext* context); 25 content::BrowserContext* context);
26 26
27 // Setters for testing.
28 void SetReportEncryptionParamsForTesting(uint8_t* server_public_key,
29 uint32_t server_public_key_version);
30 void SetClockForTesting(std::unique_ptr<base::Clock> clock);
31 void SetQueuedReportTTLForTesting(base::TimeDelta queued_report_ttl);
32 void SetMaxQueuedReportCountForTesting(size_t max_report_count);
33
27 private: 34 private:
28 friend struct base::DefaultSingletonTraits< 35 friend struct base::DefaultSingletonTraits<
29 CertificateReportingServiceFactory>; 36 CertificateReportingServiceFactory>;
30 37
31 CertificateReportingServiceFactory(); 38 CertificateReportingServiceFactory();
32 ~CertificateReportingServiceFactory() override; 39 ~CertificateReportingServiceFactory() override;
33 40
34 // BrowserContextKeyedServiceFactory overrides: 41 // BrowserContextKeyedServiceFactory overrides:
35 KeyedService* BuildServiceInstanceFor( 42 KeyedService* BuildServiceInstanceFor(
36 content::BrowserContext* context) const override; 43 content::BrowserContext* context) const override;
37 content::BrowserContext* GetBrowserContextToUse( 44 content::BrowserContext* GetBrowserContextToUse(
38 content::BrowserContext* context) const override; 45 content::BrowserContext* context) const override;
39 46
47 // Encryption parameters for certificate reports.
48 uint8_t* server_public_key_;
49 uint32_t server_public_key_version_;
50
51 std::unique_ptr<base::Clock> clock_;
52 base::TimeDelta queued_report_ttl_;
53 size_t max_queued_report_count_;
54
40 DISALLOW_COPY_AND_ASSIGN(CertificateReportingServiceFactory); 55 DISALLOW_COPY_AND_ASSIGN(CertificateReportingServiceFactory);
41 }; 56 };
42 57
43 #endif // CHROME_BROWSER_SAFE_BROWSING_CERTIFICATE_REPORTING_SERVICE_FACTORY_H_ 58 #endif // CHROME_BROWSER_SAFE_BROWSING_CERTIFICATE_REPORTING_SERVICE_FACTORY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698