// Copyright (c) 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_GCM_DRIVER_GCM_CONNECTION_OBSERVER_H_ #define COMPONENTS_GCM_DRIVER_GCM_CONNECTION_OBSERVER_H_ #include "base/basictypes.h" namespace net { class IPEndPoint; } namespace gcm { // Interface for objects observing GCM connection events. class GCMConnectionObserver { public: GCMConnectionObserver(); virtual ~GCMConnectionObserver(); // Called when a new connection is established and a successful handshake // has been performed. Note that |ip_endpoint| is only set if available for // the current platform. // Default implementation does nothing. virtual void OnConnected(const net::IPEndPoint& ip_endpoint); // Called when the connection is interrupted. // Default implementation does nothing. virtual void OnDisconnected(); }; } // namespace gcm #endif // COMPONENTS_GCM_DRIVER_GCM_CONNECTION_OBSERVER_H_