From 5852edc1b6eab234b9e048c41dd0d664ae7fc747 Mon Sep 17 00:00:00 2001 From: "nick@chromium.org" Date: Thu, 10 Sep 2009 06:05:27 +0000 Subject: Initial commit of sync engine code to browser/sync. The code is not built on any platform yet. That will arrive as a subsequent checkin. This is an implementation of the interface exposed earlier through syncapi.h. It is the client side of a sync protocol that lets users sync their browser data (currently, just bookmarks) with their Google Account. Table of contents: browser/sync/ protocol - The protocol definition, and other definitions necessary to connect to the service. syncable/ - defines a data model for syncable objects, and provides a sqlite-based backing store for this model. engine/ - includes the core sync logic, including commiting changes to the server, downloading changes from the server, resolving conflicts, other parts of the sync algorithm. engine/net - parts of the sync engine focused on the business of talking to the server. Some of this is binds a generic "server connection" interface to a concrete implementation provided by Chromium. notifier - the part of the syncer focused on the business of sending and receiving xmpp notifications. Notifications are used instead of polling to achieve very low latency change propagation. util - not necessarily sync specific utility code. Much of this is scaffolding which should either be replaced by, or merged with, the utility code in base/. BUG=none TEST=this code includes its own suite of unit tests. Review URL: http://codereview.chromium.org/194065 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25850 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/sync/util/compat-file.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 chrome/browser/sync/util/compat-file.h (limited to 'chrome/browser/sync/util/compat-file.h') diff --git a/chrome/browser/sync/util/compat-file.h b/chrome/browser/sync/util/compat-file.h new file mode 100644 index 0000000..273e3cb --- /dev/null +++ b/chrome/browser/sync/util/compat-file.h @@ -0,0 +1,31 @@ +// Copyright (c) 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. +// +// File compatability routines. Useful to delete database files with. +// +#ifndef CHROME_BROWSER_SYNC_UTIL_COMPAT_FILE_H_ +#define CHROME_BROWSER_SYNC_UTIL_COMPAT_FILE_H_ + +#include +#include +#include +#include "chrome/browser/sync/util/sync_types.h" + +extern const PathChar* const kPathSeparator; + +// Path calls for all OSes. +// Returns 0 on success, non-zero on failure. +int PathRemove(const PathString& path); + +#ifdef OS_WINDOWS +inline int PathRemove(const PathString& path) { + return _wremove(path.c_str()); +} +#elif (defined(OS_MACOSX) || defined(OS_LINUX)) +inline int PathRemove(const PathString& path) { + return unlink(path.c_str()); +} +#endif + +#endif // CHROME_BROWSER_SYNC_UTIL_COMPAT_FILE_H_ -- cgit v1.1