fake_gcm_driver.h revision 46d4c2bc3267f3f028f39e7e311b0f89aba2e4fd
1// Copyright 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_FAKE_GCM_DRIVER_H_ 6#define COMPONENTS_GCM_DRIVER_FAKE_GCM_DRIVER_H_ 7 8#include "base/compiler_specific.h" 9#include "base/macros.h" 10#include "components/gcm_driver/gcm_driver.h" 11 12namespace gcm { 13 14class FakeGCMDriver : public GCMDriver { 15 public: 16 FakeGCMDriver(); 17 virtual ~FakeGCMDriver(); 18 19 // GCMDriver overrides: 20 virtual void Shutdown() OVERRIDE; 21 virtual void AddAppHandler(const std::string& app_id, 22 GCMAppHandler* handler) OVERRIDE; 23 virtual void RemoveAppHandler(const std::string& app_id) OVERRIDE; 24 25 // GCMDriver implementation: 26 virtual void Enable() OVERRIDE; 27 virtual void Disable() OVERRIDE; 28 virtual GCMClient* GetGCMClientForTesting() const OVERRIDE; 29 virtual bool IsStarted() const OVERRIDE; 30 virtual bool IsGCMClientReady() const OVERRIDE; 31 virtual void GetGCMStatistics(const GetGCMStatisticsCallback& callback, 32 bool clear_logs) OVERRIDE; 33 virtual void SetGCMRecording(const GetGCMStatisticsCallback& callback, 34 bool recording) OVERRIDE; 35 virtual std::string SignedInUserName() const OVERRIDE; 36 37 protected: 38 // GCMDriver implementation: 39 virtual GCMClient::Result EnsureStarted() OVERRIDE; 40 virtual void RegisterImpl( 41 const std::string& app_id, 42 const std::vector<std::string>& sender_ids) OVERRIDE; 43 virtual void UnregisterImpl(const std::string& app_id) OVERRIDE; 44 virtual void SendImpl(const std::string& app_id, 45 const std::string& receiver_id, 46 const GCMClient::OutgoingMessage& message) OVERRIDE; 47 48 private: 49 DISALLOW_COPY_AND_ASSIGN(FakeGCMDriver); 50}; 51 52} // namespace gcm 53 54#endif // COMPONENTS_GCM_DRIVER_FAKE_GCM_DRIVER_H_ 55