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

Side by Side Diff: google_apis/gcm/engine/gcm_store_impl.cc

Issue 135303002: Adding a user list (to be consumed by GCM Client Implementation) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixing Win64 compilation issue and adding comments to test Created 6 years, 11 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
« no previous file with comments | « google_apis/gcm/engine/gcm_store.cc ('k') | google_apis/gcm/engine/gcm_store_impl_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #include "google_apis/gcm/engine/gcm_store_impl.h" 5 #include "google_apis/gcm/engine/gcm_store_impl.h"
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/file_util.h" 10 #include "base/file_util.h"
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
159 << status.ToString(); 159 << status.ToString();
160 foreground_task_runner_->PostTask(FROM_HERE, base::Bind(callback, result)); 160 foreground_task_runner_->PostTask(FROM_HERE, base::Bind(callback, result));
161 return; 161 return;
162 } 162 }
163 db_.reset(db); 163 db_.reset(db);
164 164
165 if (!LoadDeviceCredentials(&result.device_android_id, 165 if (!LoadDeviceCredentials(&result.device_android_id,
166 &result.device_security_token) || 166 &result.device_security_token) ||
167 !LoadIncomingMessages(&result.incoming_messages) || 167 !LoadIncomingMessages(&result.incoming_messages) ||
168 !LoadOutgoingMessages(&result.outgoing_messages) || 168 !LoadOutgoingMessages(&result.outgoing_messages) ||
169 !LoadNextSerialNumber(&result.next_serial_number) || 169 !LoadNextSerialNumber(
170 !LoadUserSerialNumberMap(&result.user_serial_numbers)) { 170 &result.serial_number_mappings.next_serial_number) ||
171 !LoadUserSerialNumberMap(
172 &result.serial_number_mappings.user_serial_numbers)) {
171 result.device_android_id = 0; 173 result.device_android_id = 0;
172 result.device_security_token = 0; 174 result.device_security_token = 0;
173 result.incoming_messages.clear(); 175 result.incoming_messages.clear();
174 STLDeleteContainerPairSecondPointers(result.outgoing_messages.begin(), 176 STLDeleteContainerPairSecondPointers(result.outgoing_messages.begin(),
175 result.outgoing_messages.end()); 177 result.outgoing_messages.end());
176 result.outgoing_messages.clear(); 178 result.outgoing_messages.clear();
177 foreground_task_runner_->PostTask(FROM_HERE, base::Bind(callback, result)); 179 foreground_task_runner_->PostTask(FROM_HERE, base::Bind(callback, result));
178 return; 180 return;
179 } 181 }
180 182
181 // Only record histograms if GCM had already been set up for this device. 183 // Only record histograms if GCM had already been set up for this device.
182 if (result.device_android_id != 0 && result.device_security_token != 0) { 184 if (result.device_android_id != 0 && result.device_security_token != 0) {
183 int64 file_size = 0; 185 int64 file_size = 0;
184 if (base::GetFileSize(path_, &file_size)) { 186 if (base::GetFileSize(path_, &file_size)) {
185 UMA_HISTOGRAM_COUNTS("GCM.StoreSizeKB", 187 UMA_HISTOGRAM_COUNTS("GCM.StoreSizeKB",
186 static_cast<int>(file_size / 1024)); 188 static_cast<int>(file_size / 1024));
187 } 189 }
188 UMA_HISTOGRAM_COUNTS("GCM.RestoredOutgoingMessages", 190 UMA_HISTOGRAM_COUNTS("GCM.RestoredOutgoingMessages",
189 result.outgoing_messages.size()); 191 result.outgoing_messages.size());
190 UMA_HISTOGRAM_COUNTS("GCM.RestoredIncomingMessages", 192 UMA_HISTOGRAM_COUNTS("GCM.RestoredIncomingMessages",
191 result.incoming_messages.size()); 193 result.incoming_messages.size());
192 UMA_HISTOGRAM_COUNTS("GCM.NumUsers", result.user_serial_numbers.size()); 194 UMA_HISTOGRAM_COUNTS(
195 "GCM.NumUsers",
196 result.serial_number_mappings.user_serial_numbers.size());
193 } 197 }
194 198
195
196 DVLOG(1) << "Succeeded in loading " << result.incoming_messages.size() 199 DVLOG(1) << "Succeeded in loading " << result.incoming_messages.size()
197 << " unacknowledged incoming messages and " 200 << " unacknowledged incoming messages and "
198 << result.outgoing_messages.size() 201 << result.outgoing_messages.size()
199 << " unacknowledged outgoing messages."; 202 << " unacknowledged outgoing messages.";
200 result.success = true; 203 result.success = true;
201 foreground_task_runner_->PostTask(FROM_HERE, base::Bind(callback, result)); 204 foreground_task_runner_->PostTask(FROM_HERE, base::Bind(callback, result));
202 return; 205 return;
203 } 206 }
204 207
205 void GCMStoreImpl::Backend::Destroy(const UpdateCallback& callback) { 208 void GCMStoreImpl::Backend::Destroy(const UpdateCallback& callback) {
(...skipping 583 matching lines...) Expand 10 before | Expand all | Expand 10 after
789 removed_message_counts.begin(); 792 removed_message_counts.begin();
790 iter != removed_message_counts.end(); ++iter) { 793 iter != removed_message_counts.end(); ++iter) {
791 DCHECK_NE(app_message_counts_.count(iter->first), 0U); 794 DCHECK_NE(app_message_counts_.count(iter->first), 0U);
792 app_message_counts_[iter->first] -= iter->second; 795 app_message_counts_[iter->first] -= iter->second;
793 DCHECK_GE(app_message_counts_[iter->first], 0); 796 DCHECK_GE(app_message_counts_[iter->first], 0);
794 } 797 }
795 callback.Run(true); 798 callback.Run(true);
796 } 799 }
797 800
798 } // namespace gcm 801 } // namespace gcm
OLDNEW
« no previous file with comments | « google_apis/gcm/engine/gcm_store.cc ('k') | google_apis/gcm/engine/gcm_store_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698