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

Side by Side Diff: chrome/browser/geolocation/wifi_data_provider_common.cc

Issue 6142009: Upating the app, ceee, chrome, ipc, media, and net directories to use the correct lock.h file. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Unified patch updating all references to the new base/synchronization/lock.h Created 9 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "chrome/browser/geolocation/wifi_data_provider_common.h" 5 #include "chrome/browser/geolocation/wifi_data_provider_common.h"
6 6
7 #include "base/utf_string_conversions.h" 7 #include "base/utf_string_conversions.h"
8 8
9 string16 MacAddressAsString16(const uint8 mac_as_int[6]) { 9 string16 MacAddressAsString16(const uint8 mac_as_int[6]) {
10 // mac_as_int is big-endian. Write in byte chunks. 10 // mac_as_int is big-endian. Write in byte chunks.
(...skipping 24 matching lines...) Expand all
35 } 35 }
36 36
37 void WifiDataProviderCommon::StopDataProvider() { 37 void WifiDataProviderCommon::StopDataProvider() {
38 DCHECK(CalledOnClientThread()); 38 DCHECK(CalledOnClientThread());
39 Stop(); 39 Stop();
40 } 40 }
41 41
42 bool WifiDataProviderCommon::GetData(WifiData *data) { 42 bool WifiDataProviderCommon::GetData(WifiData *data) {
43 DCHECK(CalledOnClientThread()); 43 DCHECK(CalledOnClientThread());
44 DCHECK(data); 44 DCHECK(data);
45 AutoLock lock(data_mutex_); 45 base::AutoLock lock(data_mutex_);
46 *data = wifi_data_; 46 *data = wifi_data_;
47 // If we've successfully completed a scan, indicate that we have all of the 47 // If we've successfully completed a scan, indicate that we have all of the
48 // data we can get. 48 // data we can get.
49 return is_first_scan_complete_; 49 return is_first_scan_complete_;
50 } 50 }
51 51
52 // Thread implementation 52 // Thread implementation
53 void WifiDataProviderCommon::Init() { 53 void WifiDataProviderCommon::Init() {
54 DCHECK(wlan_api_ == NULL); 54 DCHECK(wlan_api_ == NULL);
55 wlan_api_.reset(NewWlanApi()); 55 wlan_api_.reset(NewWlanApi());
(...skipping 18 matching lines...) Expand all
74 polling_policy_.reset(); 74 polling_policy_.reset();
75 } 75 }
76 76
77 void WifiDataProviderCommon::DoWifiScanTask() { 77 void WifiDataProviderCommon::DoWifiScanTask() {
78 bool update_available = false; 78 bool update_available = false;
79 WifiData new_data; 79 WifiData new_data;
80 if (!wlan_api_->GetAccessPointData(&new_data.access_point_data)) { 80 if (!wlan_api_->GetAccessPointData(&new_data.access_point_data)) {
81 ScheduleNextScan(polling_policy_->NoWifiInterval()); 81 ScheduleNextScan(polling_policy_->NoWifiInterval());
82 } else { 82 } else {
83 { 83 {
84 AutoLock lock(data_mutex_); 84 base::AutoLock lock(data_mutex_);
85 update_available = wifi_data_.DiffersSignificantly(new_data); 85 update_available = wifi_data_.DiffersSignificantly(new_data);
86 wifi_data_ = new_data; 86 wifi_data_ = new_data;
87 } 87 }
88 polling_policy_->UpdatePollingInterval(update_available); 88 polling_policy_->UpdatePollingInterval(update_available);
89 ScheduleNextScan(polling_policy_->PollingInterval()); 89 ScheduleNextScan(polling_policy_->PollingInterval());
90 } 90 }
91 if (update_available || !is_first_scan_complete_) { 91 if (update_available || !is_first_scan_complete_) {
92 is_first_scan_complete_ = true; 92 is_first_scan_complete_ = true;
93 NotifyListeners(); 93 NotifyListeners();
94 } 94 }
95 } 95 }
96 96
97 void WifiDataProviderCommon::ScheduleNextScan(int interval) { 97 void WifiDataProviderCommon::ScheduleNextScan(int interval) {
98 message_loop()->PostDelayedTask( 98 message_loop()->PostDelayedTask(
99 FROM_HERE, 99 FROM_HERE,
100 task_factory_.NewRunnableMethod(&WifiDataProviderCommon::DoWifiScanTask), 100 task_factory_.NewRunnableMethod(&WifiDataProviderCommon::DoWifiScanTask),
101 interval); 101 interval);
102 } 102 }
OLDNEW
« no previous file with comments | « chrome/browser/geolocation/wifi_data_provider_common.h ('k') | chrome/browser/hang_monitor/hung_window_detector.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698