blob: 8044bfb7786a047558a173a919d8cc01a1695889 [file] [log] [blame]
// Copyright 2014 The Chromium Authors
// 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_
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_