// Copyright 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_PROXIMITY_AUTH_MESSENGER_OBSERVER_H #define COMPONENTS_PROXIMITY_AUTH_MESSENGER_OBSERVER_H #include #include "base/memory/scoped_ptr.h" namespace proximity_auth { struct RemoteStatusUpdate; // An interface for observing events that happen on a Messenger. class MessengerObserver { public: // Called when sending an "Easy Unlock used" local event message completes. // |success| is true iff the event was sent successfully. virtual void OnUnlockEventSent(bool success){}; // Called when a RemoteStatusUpdate is received. virtual void OnRemoteStatusUpdate(const RemoteStatusUpdate& status_update){}; // Called when a response to a 'decrypt_request' is received, with the // |decrypted_bytes| that were returned by the remote device. An empty string // indicates failure. virtual void OnDecryptResponse(const std::string& decrypted_bytes){}; // Called when a response to a 'unlock_request' is received. // |success| is true iff the request was made successfully. virtual void OnUnlockResponse(bool success){}; // Called when the underlying secure channel disconnects. virtual void OnDisconnected(){}; }; } // namespace proximity_auth #endif // COMPONENTS_PROXIMITY_AUTH_MESSENGER_OBSERVER_H