diff options
author | jianli <jianli@chromium.org> | 2015-05-26 16:24:47 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-05-26 23:25:26 +0000 |
commit | 7a0c9b6d322d0a501fc114d3854df944fc059f0f (patch) | |
tree | ab8af00aaa656b0288ae748f007baa3dfb0c370f /components/gcm_driver/instance_id/instance_id_impl.h | |
parent | 45ab39af3cc293e150158bf06515a47319db9f79 (diff) | |
download | chromium_src-7a0c9b6d322d0a501fc114d3854df944fc059f0f.zip chromium_src-7a0c9b6d322d0a501fc114d3854df944fc059f0f.tar.gz chromium_src-7a0c9b6d322d0a501fc114d3854df944fc059f0f.tar.bz2 |
Support getting and deleting token for Instance ID.
GCM's registration and unregistration request have been refactored to
support token requests for Instance ID.
BUG=477084
TEST=new tests
Review URL: https://codereview.chromium.org/1137463003
Cr-Commit-Position: refs/heads/master@{#331475}
Diffstat (limited to 'components/gcm_driver/instance_id/instance_id_impl.h')
-rw-r--r-- | components/gcm_driver/instance_id/instance_id_impl.h | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/components/gcm_driver/instance_id/instance_id_impl.h b/components/gcm_driver/instance_id/instance_id_impl.h index a5124c1..8b0d942 100644 --- a/components/gcm_driver/instance_id/instance_id_impl.h +++ b/components/gcm_driver/instance_id/instance_id_impl.h @@ -13,11 +13,13 @@ #include "base/memory/scoped_ptr.h" #include "base/memory/weak_ptr.h" #include "base/time/time.h" +#include "components/gcm_driver/gcm_client.h" #include "components/gcm_driver/gcm_delayed_task_controller.h" #include "components/gcm_driver/instance_id/instance_id.h" namespace gcm { class GCMDriver; +class InstanceIDHandler; } // namespace gcm namespace instance_id { @@ -41,15 +43,31 @@ class InstanceIDImpl : public InstanceID { void DeleteID(const DeleteIDCallback& callback) override; private: + gcm::InstanceIDHandler* GetInstanceIDHandler() const; + void EnsureIDGenerated(); - void GetInstanceIDDataCompleted(const std::string& instance_id_data); + + void OnGetTokenCompleted(const GetTokenCallback& callback, + const std::string& token, + gcm::GCMClient::Result result); + void OnDeleteTokenCompleted(const DeleteTokenCallback& callback, + gcm::GCMClient::Result result); + void OnDeleteIDCompleted(const DeleteIDCallback& callback, + gcm::GCMClient::Result result); + void GetInstanceIDDataCompleted(const std::string& instance_id, + const std::string& extra_data); void DoGetID(const GetIDCallback& callback); void DoGetCreationTime(const GetCreationTimeCallback& callback); - - // Encodes/decodes the InstanceID data to work with the persistent store. - std::string SerializeAsString() const; - void Deserialize(const std::string& serialized_data); + void DoGetToken( + const std::string& authorized_entity, + const std::string& scope, + const std::map<std::string, std::string>& options, + const GetTokenCallback& callback); + void DoDeleteToken(const std::string& authorized_entity, + const std::string& scope, + const DeleteTokenCallback& callback); + void DoDeleteID(const DeleteIDCallback& callback); gcm::GCMDriver* gcm_driver_; // Not owned. |