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

Side by Side Diff: chrome/test/automation/automation_handle_tracker.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
« no previous file with comments | « chrome/test/automation/automation_handle_tracker.h ('k') | chrome/test/automation/tab_proxy.h » ('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 (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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/test/automation/automation_handle_tracker.h" 5 #include "chrome/test/automation/automation_handle_tracker.h"
6 6
7 #include "chrome/common/automation_messages.h" 7 #include "chrome/common/automation_messages.h"
8 #include "chrome/test/automation/automation_proxy.h" 8 #include "chrome/test/automation/automation_proxy.h"
9 9
10 AutomationResourceProxy::AutomationResourceProxy( 10 AutomationResourceProxy::AutomationResourceProxy(
(...skipping 16 matching lines...) Expand all
27 AutomationHandleTracker::~AutomationHandleTracker() { 27 AutomationHandleTracker::~AutomationHandleTracker() {
28 // Tell any live objects that the tracker is going away so they don't try to 28 // Tell any live objects that the tracker is going away so they don't try to
29 // call us when they are being destroyed. 29 // call us when they are being destroyed.
30 for (HandleToObjectMap::iterator iter = handle_to_object_.begin(); 30 for (HandleToObjectMap::iterator iter = handle_to_object_.begin();
31 iter != handle_to_object_.end(); ++iter) { 31 iter != handle_to_object_.end(); ++iter) {
32 iter->second->Invalidate(); 32 iter->second->Invalidate();
33 } 33 }
34 } 34 }
35 35
36 void AutomationHandleTracker::Add(AutomationResourceProxy* proxy) { 36 void AutomationHandleTracker::Add(AutomationResourceProxy* proxy) {
37 AutoLock lock(map_lock_); 37 base::AutoLock lock(map_lock_);
38 handle_to_object_.insert(MapEntry(proxy->handle(), proxy)); 38 handle_to_object_.insert(MapEntry(proxy->handle(), proxy));
39 } 39 }
40 40
41 void AutomationHandleTracker::Remove(AutomationResourceProxy* proxy) { 41 void AutomationHandleTracker::Remove(AutomationResourceProxy* proxy) {
42 AutoLock lock(map_lock_); 42 base::AutoLock lock(map_lock_);
43 HandleToObjectMap::iterator iter = handle_to_object_.find(proxy->handle()); 43 HandleToObjectMap::iterator iter = handle_to_object_.find(proxy->handle());
44 if (iter != handle_to_object_.end()) { 44 if (iter != handle_to_object_.end()) {
45 AutomationHandle proxy_handle = proxy->handle(); 45 AutomationHandle proxy_handle = proxy->handle();
46 handle_to_object_.erase(iter); 46 handle_to_object_.erase(iter);
47 if (channel_) 47 if (channel_)
48 channel_->Send(new AutomationMsg_HandleUnused(proxy_handle)); 48 channel_->Send(new AutomationMsg_HandleUnused(proxy_handle));
49 } 49 }
50 } 50 }
51 51
52 void AutomationHandleTracker::InvalidateHandle(AutomationHandle handle) { 52 void AutomationHandleTracker::InvalidateHandle(AutomationHandle handle) {
53 // Called in background thread. 53 // Called in background thread.
54 AutoLock lock(map_lock_); 54 base::AutoLock lock(map_lock_);
55 HandleToObjectMap::iterator iter = handle_to_object_.find(handle); 55 HandleToObjectMap::iterator iter = handle_to_object_.find(handle);
56 if (iter != handle_to_object_.end()) { 56 if (iter != handle_to_object_.end()) {
57 scoped_refptr<AutomationResourceProxy> proxy = iter->second; 57 scoped_refptr<AutomationResourceProxy> proxy = iter->second;
58 handle_to_object_.erase(iter); 58 handle_to_object_.erase(iter);
59 proxy->Invalidate(); 59 proxy->Invalidate();
60 } 60 }
61 } 61 }
62 62
63 AutomationResourceProxy* AutomationHandleTracker::GetResource( 63 AutomationResourceProxy* AutomationHandleTracker::GetResource(
64 AutomationHandle handle) { 64 AutomationHandle handle) {
65 AutoLock lock(map_lock_); 65 base::AutoLock lock(map_lock_);
66 HandleToObjectMap::iterator iter = handle_to_object_.find(handle); 66 HandleToObjectMap::iterator iter = handle_to_object_.find(handle);
67 if (iter == handle_to_object_.end()) 67 if (iter == handle_to_object_.end())
68 return NULL; 68 return NULL;
69 69
70 iter->second->AddRef(); 70 iter->second->AddRef();
71 return iter->second; 71 return iter->second;
72 } 72 }
OLDNEW
« no previous file with comments | « chrome/test/automation/automation_handle_tracker.h ('k') | chrome/test/automation/tab_proxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698