| Index: chrome/browser/extensions/api/instance_id/instance_id_api.cc
|
| 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 4c15782874a8f49e740a6a09f0a222d4050e68e4..c57b4ed6bda2860edebe6f18b89e2e43976bfaa3 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() {}
|
|
|