Index: components/gcm_driver/fake_gcm_client.cc |
diff --git a/components/gcm_driver/fake_gcm_client.cc b/components/gcm_driver/fake_gcm_client.cc |
index 9bad08d9d7950b30c0ffa7811817912367f5cf1b..6a5639c6ae7689a35507e29d042de1b232000363 100644 |
--- a/components/gcm_driver/fake_gcm_client.cc |
+++ b/components/gcm_driver/fake_gcm_client.cc |
@@ -203,6 +203,15 @@ void FakeGCMClient::SendFinished(const std::string& app_id, |
app_id, |
send_error_details), |
base::TimeDelta::FromMilliseconds(200)); |
+ } else if(message.id.find("ack") != std::string::npos) { |
+ base::MessageLoop::current()->PostDelayedTask( |
+ FROM_HERE, |
+ base::Bind(&FakeGCMClient::SendAcknowledgement, |
+ weak_ptr_factory_.GetWeakPtr(), |
+ app_id, |
+ message.id), |
+ base::TimeDelta::FromMilliseconds(200)); |
+ |
} |
} |
@@ -224,4 +233,10 @@ void FakeGCMClient::MessageSendError( |
delegate_->OnMessageSendError(app_id, send_error_details); |
} |
+void FakeGCMClient::SendAcknowledgement(const std::string& app_id, |
+ const std::string& message_id) { |
+ if (delegate_) |
+ delegate_->OnSendAcknowledged(app_id, message_id); |
+} |
+ |
} // namespace gcm |