diff options
author | stevenjb@google.com <stevenjb@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-16 21:01:35 +0000 |
---|---|---|
committer | stevenjb@google.com <stevenjb@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-16 21:01:35 +0000 |
commit | 2a09e8c5a3d15c7425955e7b8809e46fa52607b7 (patch) | |
tree | 43a84f72a27e74cbbea5021aee1263384294500c /chromeos/network | |
parent | fdcb6d04b847522fd83bffaf92300529cce4a3b0 (diff) | |
download | chromium_src-2a09e8c5a3d15c7425955e7b8809e46fa52607b7.zip chromium_src-2a09e8c5a3d15c7425955e7b8809e46fa52607b7.tar.gz chromium_src-2a09e8c5a3d15c7425955e7b8809e46fa52607b7.tar.bz2 |
Add RequestUpdate to NetworkSmsHandler
BUG=124269
TEST=None yet, except that tests pass; will be used for further testing.
Review URL: https://chromiumcodereview.appspot.com/10391170
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137507 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chromeos/network')
-rw-r--r-- | chromeos/network/network_sms_handler.cc | 14 | ||||
-rw-r--r-- | chromeos/network/network_sms_handler.h | 3 | ||||
-rw-r--r-- | chromeos/network/network_sms_handler_unittest.cc | 2 |
3 files changed, 19 insertions, 0 deletions
diff --git a/chromeos/network/network_sms_handler.cc b/chromeos/network/network_sms_handler.cc index e28e5d3..cfe4219 100644 --- a/chromeos/network/network_sms_handler.cc +++ b/chromeos/network/network_sms_handler.cc @@ -35,6 +35,8 @@ class NetworkSmsHandler::NetworkSmsDeviceHandler { std::string dbus_connection, dbus::ObjectPath object_path); + void RequestUpdate(); + private: void ListCallback(const base::ListValue& message_list); void SmsReceivedCallback(uint32 index, bool complete); @@ -74,6 +76,11 @@ NetworkSmsHandler::NetworkSmsDeviceHandler::NetworkSmsDeviceHandler( weak_ptr_factory_.GetWeakPtr())); } +void NetworkSmsHandler::NetworkSmsDeviceHandler::RequestUpdate() { + DBusThreadManager::Get()->GetGsmSMSClient()->RequestUpdate( + dbus_connection_, object_path_); +} + void NetworkSmsHandler::NetworkSmsDeviceHandler::ListCallback( const base::ListValue& message_list) { // This receives all messages, so clear any pending deletes. @@ -151,6 +158,13 @@ void NetworkSmsHandler::Init() { weak_ptr_factory_.GetWeakPtr())); } +void NetworkSmsHandler::RequestUpdate() { + for (ScopedVector<NetworkSmsDeviceHandler>::iterator iter = + device_handlers_.begin(); iter != device_handlers_.end(); ++iter) { + (*iter)->RequestUpdate(); + } +} + void NetworkSmsHandler::AddObserver(Observer* observer) { observers_.AddObserver(observer); } diff --git a/chromeos/network/network_sms_handler.h b/chromeos/network/network_sms_handler.h index 9430e30..518b7b1 100644 --- a/chromeos/network/network_sms_handler.h +++ b/chromeos/network/network_sms_handler.h @@ -38,6 +38,9 @@ class CHROMEOS_EXPORT NetworkSmsHandler { // notified with initial messages should be added before calling this. void Init(); + // Requests an immediate check for new messages. + void RequestUpdate(); + void AddObserver(Observer* observer); void RemoveObserver(Observer* observer); diff --git a/chromeos/network/network_sms_handler_unittest.cc b/chromeos/network/network_sms_handler_unittest.cc index 4205954..ca99c9c 100644 --- a/chromeos/network/network_sms_handler_unittest.cc +++ b/chromeos/network/network_sms_handler_unittest.cc @@ -58,6 +58,8 @@ TEST_F(NetworkSmsHandlerTest, SmsHandlerDbusStub) { sms_handler->AddObserver(test_observer.get()); sms_handler->Init(); message_loop_.RunAllPending(); + sms_handler->RequestUpdate(); + message_loop_.RunAllPending(); EXPECT_GE(test_observer->message_count(), 1); } |