Home | History | Annotate | Download | only in sessions
      1 // Copyright 2012 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 SYNC_SESSIONS_DEBUG_INFO_GETTER_H_
      6 #define SYNC_SESSIONS_DEBUG_INFO_GETTER_H_
      7 
      8 #include "sync/base/sync_export.h"
      9 #include "sync/protocol/sync.pb.h"
     10 
     11 namespace syncer {
     12 namespace sessions {
     13 
     14 // This is the interface that needs to be implemented by the event listener
     15 // to communicate the debug info data to the syncer.
     16 class SYNC_EXPORT_PRIVATE DebugInfoGetter {
     17  public:
     18   // Gets the client debug info. Be sure to clear the info to ensure the data
     19   // isn't sent multiple times.
     20   virtual void GetDebugInfo(sync_pb::DebugInfo* debug_info) = 0;
     21 
     22   // Clears the debug info.
     23   virtual void ClearDebugInfo() = 0;
     24 
     25   virtual ~DebugInfoGetter() {}
     26 };
     27 
     28 }  // namespace sessions
     29 }  // namespace syncer
     30 
     31 #endif  // SYNC_SESSIONS_DEBUG_INFO_GETTER_H_
     32