summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/api/instance_id/instance_id_api.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/extensions/api/instance_id/instance_id_api.cc')
-rw-r--r--chrome/browser/extensions/api/instance_id/instance_id_api.cc21
1 files changed, 16 insertions, 5 deletions
diff --git a/chrome/browser/extensions/api/instance_id/instance_id_api.cc b/chrome/browser/extensions/api/instance_id/instance_id_api.cc
index 4c15782..c57b4ed 100644
--- a/chrome/browser/extensions/api/instance_id/instance_id_api.cc
+++ b/chrome/browser/extensions/api/instance_id/instance_id_api.cc
@@ -81,8 +81,13 @@ InstanceIDGetIDFunction::InstanceIDGetIDFunction() {}
InstanceIDGetIDFunction::~InstanceIDGetIDFunction() {}
ExtensionFunction::ResponseAction InstanceIDGetIDFunction::DoWork() {
- return RespondNow(
- OneArgument(new base::StringValue(GetInstanceID()->GetID())));
+ GetInstanceID()->GetID(
+ base::Bind(&InstanceIDGetIDFunction::GetIDCompleted, this));
+ return RespondLater();
+}
+
+void InstanceIDGetIDFunction::GetIDCompleted(const std::string& id) {
+ Respond(OneArgument(new base::StringValue(id)));
}
InstanceIDGetCreationTimeFunction::InstanceIDGetCreationTimeFunction() {}
@@ -90,9 +95,15 @@ InstanceIDGetCreationTimeFunction::InstanceIDGetCreationTimeFunction() {}
InstanceIDGetCreationTimeFunction::~InstanceIDGetCreationTimeFunction() {}
ExtensionFunction::ResponseAction InstanceIDGetCreationTimeFunction::DoWork() {
- return RespondNow(OneArgument(
- new base::FundamentalValue(
- GetInstanceID()->GetCreationTime().ToDoubleT())));
+ GetInstanceID()->GetCreationTime(
+ base::Bind(&InstanceIDGetCreationTimeFunction::GetCreationTimeCompleted,
+ this));
+ return RespondLater();
+}
+
+void InstanceIDGetCreationTimeFunction::GetCreationTimeCompleted(
+ const base::Time& creation_time) {
+ Respond(OneArgument(new base::FundamentalValue(creation_time.ToDoubleT())));
}
InstanceIDGetTokenFunction::InstanceIDGetTokenFunction() {}