summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-29 19:22:51 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-29 19:22:51 +0000
commitdb9f091c5b80f687d231b8cb13dde2f7e964700b (patch)
tree3a2f406186a39dc7cb84fa2786293538be111c02 /base
parent8275835e508fb36328dd79c338d31bbf98eadf56 (diff)
downloadchromium_src-db9f091c5b80f687d231b8cb13dde2f7e964700b.zip
chromium_src-db9f091c5b80f687d231b8cb13dde2f7e964700b.tar.gz
chromium_src-db9f091c5b80f687d231b8cb13dde2f7e964700b.tar.bz2
Create a new base/message_loop directory and move the message_loop_proxy.
Eventually we'll move all the message loop and message pump classes into this directory. This leaves a forwarding header to avoid having to update all includes in this patch. BUG= Review URL: https://codereview.chromium.org/13333003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191422 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r--base/base.gyp4
-rw-r--r--base/base.gypi8
-rw-r--r--base/message_loop.cc2
-rw-r--r--base/message_loop/message_loop_proxy.cc (renamed from base/message_loop_proxy.cc)2
-rw-r--r--base/message_loop/message_loop_proxy.h38
-rw-r--r--base/message_loop/message_loop_proxy_impl.cc (renamed from base/message_loop_proxy_impl.cc)2
-rw-r--r--base/message_loop/message_loop_proxy_impl.h (renamed from base/message_loop_proxy_impl.h)6
-rw-r--r--base/message_loop/message_loop_proxy_impl_unittest.cc (renamed from base/message_loop_proxy_impl_unittest.cc)39
-rw-r--r--base/message_loop/message_loop_proxy_unittest.cc (renamed from base/message_loop_proxy_unittest.cc)2
-rw-r--r--base/message_loop_proxy.h39
10 files changed, 76 insertions, 66 deletions
diff --git a/base/base.gyp b/base/base.gyp
index 912aefe..ea04cae 100644
--- a/base/base.gyp
+++ b/base/base.gyp
@@ -513,8 +513,8 @@
'memory/singleton_unittest.cc',
'memory/weak_ptr_unittest.cc',
'memory/weak_ptr_unittest.nc',
- 'message_loop_proxy_impl_unittest.cc',
- 'message_loop_proxy_unittest.cc',
+ 'message_loop/message_loop_proxy_impl_unittest.cc',
+ 'message_loop/message_loop_proxy_unittest.cc',
'message_loop_unittest.cc',
'message_pump_glib_unittest.cc',
'message_pump_io_ios_unittest.cc',
diff --git a/base/base.gypi b/base/base.gypi
index 7b97c11..325dc6c 100644
--- a/base/base.gypi
+++ b/base/base.gypi
@@ -281,12 +281,12 @@
'memory/singleton.h',
'memory/weak_ptr.cc',
'memory/weak_ptr.h',
+ 'message_loop/message_loop_proxy.cc',
+ 'message_loop/message_loop_proxy.h',
+ 'message_loop/message_loop_proxy_impl.cc',
+ 'message_loop/message_loop_proxy_impl.h',
'message_loop.cc',
'message_loop.h',
- 'message_loop_proxy.cc',
- 'message_loop_proxy.h',
- 'message_loop_proxy_impl.cc',
- 'message_loop_proxy_impl.h',
'message_pump.cc',
'message_pump.h',
'message_pump_android.cc',
diff --git a/base/message_loop.cc b/base/message_loop.cc
index f9ecd410e..544f1d4 100644
--- a/base/message_loop.cc
+++ b/base/message_loop.cc
@@ -13,7 +13,7 @@
#include "base/lazy_instance.h"
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
-#include "base/message_loop_proxy_impl.h"
+#include "base/message_loop/message_loop_proxy_impl.h"
#include "base/message_pump_default.h"
#include "base/metrics/histogram.h"
#include "base/metrics/statistics_recorder.h"
diff --git a/base/message_loop_proxy.cc b/base/message_loop/message_loop_proxy.cc
index 755564b..e5f0142 100644
--- a/base/message_loop_proxy.cc
+++ b/base/message_loop/message_loop_proxy.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "base/message_loop_proxy.h"
+#include "base/message_loop/message_loop_proxy.h"
#include "base/bind.h"
diff --git a/base/message_loop/message_loop_proxy.h b/base/message_loop/message_loop_proxy.h
new file mode 100644
index 0000000..4ace802
--- /dev/null
+++ b/base/message_loop/message_loop_proxy.h
@@ -0,0 +1,38 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef BASE_MESSAGE_LOOP_MESSAGE_LOOP_PROXY_H_
+#define BASE_MESSAGE_LOOP_MESSAGE_LOOP_PROXY_H_
+
+#include "base/base_export.h"
+#include "base/compiler_specific.h"
+#include "base/memory/ref_counted.h"
+#include "base/single_thread_task_runner.h"
+
+namespace base {
+
+// This class provides a thread-safe refcounted interface to the Post* methods
+// of a message loop. This class can outlive the target message loop.
+// MessageLoopProxy objects are constructed automatically for all MessageLoops.
+// So, to access them, you can use any of the following:
+// Thread::message_loop_proxy()
+// MessageLoop::current()->message_loop_proxy()
+// MessageLoopProxy::current()
+//
+// TODO(akalin): Now that we have the *TaskRunner interfaces, we can
+// merge this with MessageLoopProxyImpl.
+class BASE_EXPORT MessageLoopProxy : public SingleThreadTaskRunner {
+ public:
+ // Gets the MessageLoopProxy for the current message loop, creating one if
+ // needed.
+ static scoped_refptr<MessageLoopProxy> current();
+
+ protected:
+ MessageLoopProxy();
+ virtual ~MessageLoopProxy();
+};
+
+} // namespace base
+
+#endif // BASE_MESSAGE_LOOP_MESSAGE_LOOP_PROXY_H_
diff --git a/base/message_loop_proxy_impl.cc b/base/message_loop/message_loop_proxy_impl.cc
index b4ca210..7dc8caa 100644
--- a/base/message_loop_proxy_impl.cc
+++ b/base/message_loop/message_loop_proxy_impl.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "base/message_loop_proxy_impl.h"
+#include "base/message_loop/message_loop_proxy_impl.h"
#include "base/location.h"
#include "base/threading/thread_restrictions.h"
diff --git a/base/message_loop_proxy_impl.h b/base/message_loop/message_loop_proxy_impl.h
index 2bcd8fd..7da99e2 100644
--- a/base/message_loop_proxy_impl.h
+++ b/base/message_loop/message_loop_proxy_impl.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef BASE_MESSAGE_LOOP_PROXY_IMPL_H_
-#define BASE_MESSAGE_LOOP_PROXY_IMPL_H_
+#ifndef BASE_MESSAGE_LOOP_MESSAGE_LOOP_PROXY_IMPL_H_
+#define BASE_MESSAGE_LOOP_MESSAGE_LOOP_PROXY_IMPL_H_
#include "base/base_export.h"
#include "base/message_loop.h"
@@ -59,4 +59,4 @@ class BASE_EXPORT MessageLoopProxyImpl : public MessageLoopProxy {
} // namespace base
-#endif // BASE_MESSAGE_LOOP_PROXY_IMPL_H_
+#endif // BASE_MESSAGE_LOOP_MESSAGE_LOOP_PROXY_IMPL_H_
diff --git a/base/message_loop_proxy_impl_unittest.cc b/base/message_loop/message_loop_proxy_impl_unittest.cc
index e120b39..4c88887 100644
--- a/base/message_loop_proxy_impl_unittest.cc
+++ b/base/message_loop/message_loop_proxy_impl_unittest.cc
@@ -2,16 +2,17 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "base/message_loop_proxy_impl.h"
+#include "base/message_loop/message_loop_proxy_impl.h"
#include "base/bind.h"
#include "base/memory/scoped_ptr.h"
#include "base/message_loop.h"
-#include "base/message_loop_proxy.h"
+#include "base/message_loop/message_loop_proxy.h"
#include "base/threading/thread.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/platform_test.h"
+namespace base {
class MessageLoopProxyImplTest : public testing::Test {
public:
@@ -27,19 +28,19 @@ class MessageLoopProxyImplTest : public testing::Test {
void AssertOnIOThread() const {
ASSERT_TRUE(io_thread_->message_loop_proxy()->BelongsToCurrentThread());
ASSERT_EQ(io_thread_->message_loop_proxy(),
- base::MessageLoopProxy::current());
+ MessageLoopProxy::current());
}
void AssertOnFileThread() const {
ASSERT_TRUE(file_thread_->message_loop_proxy()->BelongsToCurrentThread());
ASSERT_EQ(file_thread_->message_loop_proxy(),
- base::MessageLoopProxy::current());
+ MessageLoopProxy::current());
}
protected:
virtual void SetUp() OVERRIDE {
- io_thread_.reset(new base::Thread("MessageLoopProxyImplTest_IO"));
- file_thread_.reset(new base::Thread("MessageLoopProxyImplTest_File"));
+ io_thread_.reset(new Thread("MessageLoopProxyImplTest_IO"));
+ file_thread_.reset(new Thread("MessageLoopProxyImplTest_File"));
io_thread_->Start();
file_thread_->Start();
}
@@ -71,8 +72,8 @@ class MessageLoopProxyImplTest : public testing::Test {
MessageLoopProxyImplTest* test_;
};
- scoped_ptr<base::Thread> io_thread_;
- scoped_ptr<base::Thread> file_thread_;
+ scoped_ptr<Thread> io_thread_;
+ scoped_ptr<Thread> file_thread_;
private:
mutable MessageLoop loop_;
@@ -92,35 +93,37 @@ TEST_F(MessageLoopProxyImplTest, Delete) {
TEST_F(MessageLoopProxyImplTest, PostTask) {
EXPECT_TRUE(file_thread_->message_loop_proxy()->PostTask(
- FROM_HERE, base::Bind(&MessageLoopProxyImplTest::BasicFunction,
- base::Unretained(this))));
+ FROM_HERE, Bind(&MessageLoopProxyImplTest::BasicFunction,
+ Unretained(this))));
MessageLoop::current()->Run();
}
TEST_F(MessageLoopProxyImplTest, PostTaskAfterThreadExits) {
- scoped_ptr<base::Thread> test_thread(
- new base::Thread("MessageLoopProxyImplTest_Dummy"));
+ scoped_ptr<Thread> test_thread(
+ new Thread("MessageLoopProxyImplTest_Dummy"));
test_thread->Start();
- scoped_refptr<base::MessageLoopProxy> message_loop_proxy =
+ scoped_refptr<MessageLoopProxy> message_loop_proxy =
test_thread->message_loop_proxy();
test_thread->Stop();
bool ret = message_loop_proxy->PostTask(
FROM_HERE,
- base::Bind(&MessageLoopProxyImplTest::AssertNotRun));
+ Bind(&MessageLoopProxyImplTest::AssertNotRun));
EXPECT_FALSE(ret);
}
TEST_F(MessageLoopProxyImplTest, PostTaskAfterThreadIsDeleted) {
- scoped_refptr<base::MessageLoopProxy> message_loop_proxy;
+ scoped_refptr<MessageLoopProxy> message_loop_proxy;
{
- scoped_ptr<base::Thread> test_thread(
- new base::Thread("MessageLoopProxyImplTest_Dummy"));
+ scoped_ptr<Thread> test_thread(
+ new Thread("MessageLoopProxyImplTest_Dummy"));
test_thread->Start();
message_loop_proxy = test_thread->message_loop_proxy();
}
bool ret = message_loop_proxy->PostTask(
FROM_HERE,
- base::Bind(&MessageLoopProxyImplTest::AssertNotRun));
+ Bind(&MessageLoopProxyImplTest::AssertNotRun));
EXPECT_FALSE(ret);
}
+
+} // namespace base
diff --git a/base/message_loop_proxy_unittest.cc b/base/message_loop/message_loop_proxy_unittest.cc
index aaabef6..e373059 100644
--- a/base/message_loop_proxy_unittest.cc
+++ b/base/message_loop/message_loop_proxy_unittest.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "base/message_loop_proxy.h"
+#include "base/message_loop/message_loop_proxy.h"
#include "base/atomic_sequence_num.h"
#include "base/bind.h"
diff --git a/base/message_loop_proxy.h b/base/message_loop_proxy.h
index ce949dd..d8a3641 100644
--- a/base/message_loop_proxy.h
+++ b/base/message_loop_proxy.h
@@ -1,38 +1,7 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef BASE_MESSAGE_LOOP_PROXY_H_
-#define BASE_MESSAGE_LOOP_PROXY_H_
-
-#include "base/base_export.h"
-#include "base/compiler_specific.h"
-#include "base/memory/ref_counted.h"
-#include "base/single_thread_task_runner.h"
-
-namespace base {
-
-// This class provides a thread-safe refcounted interface to the Post* methods
-// of a message loop. This class can outlive the target message loop.
-// MessageLoopProxy objects are constructed automatically for all MessageLoops.
-// So, to access them, you can use any of the following:
-// Thread::message_loop_proxy()
-// MessageLoop::current()->message_loop_proxy()
-// MessageLoopProxy::current()
-//
-// TODO(akalin): Now that we have the *TaskRunner interfaces, we can
-// merge this with MessageLoopProxyImpl.
-class BASE_EXPORT MessageLoopProxy : public SingleThreadTaskRunner {
- public:
- // Gets the MessageLoopProxy for the current message loop, creating one if
- // needed.
- static scoped_refptr<MessageLoopProxy> current();
-
- protected:
- MessageLoopProxy();
- virtual ~MessageLoopProxy();
-};
-
-} // namespace base
-
-#endif // BASE_MESSAGE_LOOP_PROXY_H_
+// TODO(brettw) remove this forwarding file when all users reference the new
+// location.
+#include "base/message_loop/message_loop_proxy.h"