diff options
Diffstat (limited to 'chrome/browser/sync/engine/process_updates_command.h')
-rw-r--r-- | chrome/browser/sync/engine/process_updates_command.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/chrome/browser/sync/engine/process_updates_command.h b/chrome/browser/sync/engine/process_updates_command.h new file mode 100644 index 0000000..a6cee34 --- /dev/null +++ b/chrome/browser/sync/engine/process_updates_command.h @@ -0,0 +1,45 @@ +// 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_PROCESS_UPDATES_COMMAND_H_ +#define CHROME_BROWSER_SYNC_ENGINE_PROCESS_UPDATES_COMMAND_H_ + +#include "chrome/browser/sync/engine/model_changing_syncer_command.h" +#include "chrome/browser/sync/engine/syncer_types.h" + +namespace syncable { +class ScopedDirLookup; +} + +namespace sync_pb { +class SyncEntity; +} + +namespace browser_sync { + +class SyncerSession; + +// A syncer command for processing updates. +// +// Preconditions - updates in the SyncerSesssion have been downloaded +// and verified. +// +// Postconditions - All of the verified SyncEntity data will be copied to +// the server fields of the corresponding syncable entries. +class ProcessUpdatesCommand : public ModelChangingSyncerCommand { + public: + ProcessUpdatesCommand(); + virtual ~ProcessUpdatesCommand(); + + virtual void ModelChangingExecuteImpl(SyncerSession* session); + ServerUpdateProcessingResult ProcessUpdate( + const syncable::ScopedDirLookup& dir, + const sync_pb::SyncEntity& pb_entry); + private: + DISALLOW_COPY_AND_ASSIGN(ProcessUpdatesCommand); +}; + +} // namespace browser_sync + +#endif // CHROME_BROWSER_SYNC_ENGINE_PROCESS_UPDATES_COMMAND_H_ |