// 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_SYNC_ENGINE_EVENTS_PROTOCOL_EVENT_H_ #define COMPONENTS_SYNC_ENGINE_EVENTS_PROTOCOL_EVENT_H_ #include <memory> #include <string> #include "base/time/time.h" #include "base/values.h" namespace syncer { // SyncNetworkEvents represent a single client <-> server sync protocol event // that recently took place. Sync protocol events occur when the client decides // to send a sync protocol request (such as GetUpdates or Commit) to the server, // and when the server responds. Note that the requests and responses themselves // are modelled by {GetUpdates, Commit}x{Request,Response} objects. // // These objects are intended to be used for displaying information on // chrome://sync-internals. They should be considered to be immutable and // opaque. No program behavior should depend on their contents. // // Each type of request can maintain its own set of additional metadata and have // its own custom serialization routines. For example, the "configure" // GetUpdates request will include information about its "origin" in its debug // info. class ProtocolEvent { … }; } // namespace syncer #endif // COMPONENTS_SYNC_ENGINE_EVENTS_PROTOCOL_EVENT_H_