Index: chrome/browser/sync/engine/client_command_channel.h |
=================================================================== |
--- chrome/browser/sync/engine/client_command_channel.h (revision 0) |
+++ chrome/browser/sync/engine/client_command_channel.h (revision 0) |
@@ -0,0 +1,31 @@ |
+// Copyright (c) 2006-2009 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 CHROME_BROWSER_SYNC_ENGINE_CLIENT_COMMAND_CHANNEL_H_ |
+#define CHROME_BROWSER_SYNC_ENGINE_CLIENT_COMMAND_CHANNEL_H_ |
+ |
+#include "chrome/browser/sync/protocol/sync.pb.h" |
+#include "chrome/browser/sync/util/event_sys.h" |
+ |
+namespace browser_sync { |
+ |
+// Commands for the client come back in sync responses, which is kind |
+// of inconvenient because some services (like the bandwidth throttler) |
+// want to know about them. So to avoid explicit dependencies on this |
+// protocol behavior, the syncer dumps all client commands onto a shared |
+// client command channel. |
+ |
+struct ClientCommandChannelTraits { |
+ typedef const sync_pb::ClientCommand* EventType; |
+ static inline bool IsChannelShutdownEvent(const EventType &event) { |
idana
2009/09/10 05:44:37
nit: "const EventType &event" -> "const EventType&
|
+ return 0 == event; |
+ } |
+}; |
+ |
+typedef EventChannel<ClientCommandChannelTraits, PThreadMutex> |
+ ClientCommandChannel; |
+ |
+} // namespace browser_sync |
+ |
+#endif // CHROME_BROWSER_SYNC_ENGINE_CLIENT_COMMAND_CHANNEL_H_ |
Property changes on: chrome\browser\sync\engine\client_command_channel.h |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |