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

Side by Side Diff: base/memory/memory_coordinator_proxy.cc

Issue 2565323002: Stop using callbacks in MemoryCoordinatorProxy (Closed)
Patch Set: Created 4 years 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 #include "base/memory/memory_coordinator_proxy.h" 5 #include "base/memory/memory_coordinator_proxy.h"
6 6
7 namespace base { 7 namespace base {
8 8
9 MemoryCoordinatorProxy::MemoryCoordinatorProxy() { 9 MemoryCoordinatorProxy::MemoryCoordinatorProxy() {
10 } 10 }
11 11
12 MemoryCoordinatorProxy::~MemoryCoordinatorProxy() { 12 MemoryCoordinatorProxy::~MemoryCoordinatorProxy() {
13 } 13 }
14 14
15 // static
15 MemoryCoordinatorProxy* MemoryCoordinatorProxy::GetInstance() { 16 MemoryCoordinatorProxy* MemoryCoordinatorProxy::GetInstance() {
16 return Singleton<base::MemoryCoordinatorProxy>::get(); 17 return Singleton<base::MemoryCoordinatorProxy>::get();
17 } 18 }
18 19
19 MemoryState MemoryCoordinatorProxy::GetCurrentMemoryState() const { 20 void MemoryCoordinatorProxy::Set(WeakPtr<MemoryCoordinatorInterface> instance) {
20 if (!getter_callback_) 21 instance_ = instance;
21 return MemoryState::NORMAL;
22 return getter_callback_.Run();
23 } 22 }
24 23
25 void MemoryCoordinatorProxy::SetCurrentMemoryStateForTesting( 24 MemoryState MemoryCoordinatorProxy::GetLocalMemoryState() const {
26 MemoryState memory_state) { 25 if (!instance_)
27 DCHECK(setter_callback_); 26 return MemoryState::NORMAL;
28 setter_callback_.Run(memory_state); 27 return instance_->GetLocalMemoryState();
29 } 28 }
30 29
31 void MemoryCoordinatorProxy::SetGetCurrentMemoryStateCallback( 30 void MemoryCoordinatorProxy::SetMemoryStateForTesting(
32 GetCurrentMemoryStateCallback callback) { 31 MemoryState memory_state) {
33 getter_callback_ = callback; 32 DCHECK(instance_);
34 } 33 instance_->SetMemoryStateForTesting(memory_state);
35
36 void MemoryCoordinatorProxy::SetSetCurrentMemoryStateForTestingCallback(
37 SetCurrentMemoryStateCallback callback) {
38 setter_callback_ = callback;
39 } 34 }
40 35
41 } // namespace base 36 } // namespace base
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698