1 // Copyright (c) 2014 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. 4 5 #ifndef COMPONENTS_GCM_DRIVER_DEFAULT_GCM_APP_HANDLER_H_ 6 #define COMPONENTS_GCM_DRIVER_DEFAULT_GCM_APP_HANDLER_H_ 7 8 #include "base/compiler_specific.h" 9 #include "components/gcm_driver/gcm_app_handler.h" 10 11 namespace gcm { 12 13 // The default app handler that is triggered when there is no registered app 14 // handler for an application id. 15 class DefaultGCMAppHandler : public GCMAppHandler { 16 public: 17 DefaultGCMAppHandler(); 18 virtual ~DefaultGCMAppHandler(); 19 20 // Overridden from GCMAppHandler: 21 virtual void ShutdownHandler() OVERRIDE; 22 virtual void OnMessage(const std::string& app_id, 23 const GCMClient::IncomingMessage& message) OVERRIDE; 24 virtual void OnMessagesDeleted(const std::string& app_id) OVERRIDE; 25 virtual void OnSendError( 26 const std::string& app_id, 27 const GCMClient::SendErrorDetails& send_error_details) OVERRIDE; 28 virtual void OnSendAcknowledged(const std::string& app_id, 29 const std::string& message_id) OVERRIDE; 30 31 private: 32 DISALLOW_COPY_AND_ASSIGN(DefaultGCMAppHandler); 33 }; 34 35 } // namespace gcm 36 37 #endif // COMPONENTS_GCM_DRIVER_DEFAULT_GCM_APP_HANDLER_H_ 38