Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / google_apis / gcm / engine / gcm_registration_request_handler.h
blob934f92790f451a1cb052726278e64dd8055c8121
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef GOOGLE_APIS_GCM_ENGINE_GCM_REGISTRATION_REQUEST_HANDLER_H_
6 #define GOOGLE_APIS_GCM_ENGINE_GCM_REGISTRATION_REQUEST_HANDLER_H_
8 #include "google_apis/gcm/engine/registration_request.h"
10 namespace gcm {
12 // Used to obtain the registration ID for applications that want to use GCM.
13 class GCM_EXPORT GCMRegistrationRequestHandler :
14 public RegistrationRequest::CustomRequestHandler {
15 public:
16 GCMRegistrationRequestHandler(const std::string& senders);
17 ~GCMRegistrationRequestHandler() override;
19 // RegistrationRequest::RequestHandler overrides:
20 void BuildRequestBody(std::string* body) override;
21 void ReportUMAs(RegistrationRequest::Status status,
22 int retry_count,
23 base::TimeDelta complete_time) override;
25 private:
26 std::string senders_;
28 DISALLOW_COPY_AND_ASSIGN(GCMRegistrationRequestHandler);
31 } // namespace gcm
33 #endif // GOOGLE_APIS_GCM_ENGINE_GCM_REGISTRATION_REQUEST_HANDLER_H_