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

Side by Side Diff: chrome/browser/push_messaging/push_messaging_app_identifier.h

Issue 2697793004: Push API: Validate storage before returning cached subscriptions (Closed)
Patch Set: Comment out PUSH_GETREGISTRATION_STATUS_PUBLIC_KEY_UNAVAILABLE Created 3 years, 10 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_PUSH_MESSAGING_PUSH_MESSAGING_APP_IDENTIFIER_H_ 5 #ifndef CHROME_BROWSER_PUSH_MESSAGING_PUSH_MESSAGING_APP_IDENTIFIER_H_
6 #define CHROME_BROWSER_PUSH_MESSAGING_PUSH_MESSAGING_APP_IDENTIFIER_H_ 6 #define CHROME_BROWSER_PUSH_MESSAGING_PUSH_MESSAGING_APP_IDENTIFIER_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 #include <string> 10 #include <string>
(...skipping 25 matching lines...) Expand all
36 36
37 // Returns whether the modern InstanceID API should be used with this app_id 37 // Returns whether the modern InstanceID API should be used with this app_id
38 // (rather than legacy GCM registration). 38 // (rather than legacy GCM registration).
39 static bool UseInstanceID(const std::string& app_id); 39 static bool UseInstanceID(const std::string& app_id);
40 40
41 // Generates a new app identifier, with partially random app_id. 41 // Generates a new app identifier, with partially random app_id.
42 static PushMessagingAppIdentifier Generate( 42 static PushMessagingAppIdentifier Generate(
43 const GURL& origin, 43 const GURL& origin,
44 int64_t service_worker_registration_id); 44 int64_t service_worker_registration_id);
45 45
46 // Generates a new app identifier for legacy GCM (not modern InstanceID).
47 static PushMessagingAppIdentifier LegacyGenerateForTesting(
Peter Beverloo 2017/03/20 23:50:13 It's unfortunate that this has to be public. Can w
johnme 2017/03/30 18:36:37 Done.
48 const GURL& origin,
49 int64_t service_worker_registration_id);
50
46 // Looks up an app identifier by app_id. If not found, is_null() will be true. 51 // Looks up an app identifier by app_id. If not found, is_null() will be true.
47 static PushMessagingAppIdentifier FindByAppId(Profile* profile, 52 static PushMessagingAppIdentifier FindByAppId(Profile* profile,
48 const std::string& app_id); 53 const std::string& app_id);
49 54
50 // Looks up an app identifier by origin & service worker registration id. 55 // Looks up an app identifier by origin & service worker registration id.
51 // If not found, is_null() will be true. 56 // If not found, is_null() will be true.
52 static PushMessagingAppIdentifier FindByServiceWorker( 57 static PushMessagingAppIdentifier FindByServiceWorker(
53 Profile* profile, 58 Profile* profile,
54 const GURL& origin, 59 const GURL& origin,
55 int64_t service_worker_registration_id); 60 int64_t service_worker_registration_id);
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 99
95 int64_t service_worker_registration_id() const { 100 int64_t service_worker_registration_id() const {
96 DCHECK(!is_null()); 101 DCHECK(!is_null());
97 return service_worker_registration_id_; 102 return service_worker_registration_id_;
98 } 103 }
99 104
100 private: 105 private:
101 friend class PushMessagingAppIdentifierTest; 106 friend class PushMessagingAppIdentifierTest;
102 FRIEND_TEST_ALL_PREFIXES(PushMessagingAppIdentifierTest, FindLegacy); 107 FRIEND_TEST_ALL_PREFIXES(PushMessagingAppIdentifierTest, FindLegacy);
103 108
109 static PushMessagingAppIdentifier GenerateInternal(
110 const GURL& origin,
111 int64_t service_worker_registration_id,
112 bool use_instance_id);
113
104 // Constructs an invalid app identifier. 114 // Constructs an invalid app identifier.
105 PushMessagingAppIdentifier(); 115 PushMessagingAppIdentifier();
106 // Constructs a valid app identifier. 116 // Constructs a valid app identifier.
107 PushMessagingAppIdentifier(const std::string& app_id, 117 PushMessagingAppIdentifier(const std::string& app_id,
108 const GURL& origin, 118 const GURL& origin,
109 int64_t service_worker_registration_id); 119 int64_t service_worker_registration_id);
110 120
111 // Validates that all the fields contain valid values. 121 // Validates that all the fields contain valid values.
112 void DCheckValid() const; 122 void DCheckValid() const;
113 123
114 std::string app_id_; 124 std::string app_id_;
115 GURL origin_; 125 GURL origin_;
116 int64_t service_worker_registration_id_; 126 int64_t service_worker_registration_id_;
117 }; 127 };
118 128
119 #endif // CHROME_BROWSER_PUSH_MESSAGING_PUSH_MESSAGING_APP_IDENTIFIER_H_ 129 #endif // CHROME_BROWSER_PUSH_MESSAGING_PUSH_MESSAGING_APP_IDENTIFIER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698