12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "sync/api/sync_merge_result.h"
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace syncer {
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)SyncMergeResult::SyncMergeResult(ModelType type)
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  : model_type_(type),
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    num_items_before_association_(0),
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    num_items_after_association_(0),
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    num_items_added_(0),
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    num_items_deleted_(0),
157d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)    num_items_modified_(0),
167d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)    pre_association_version_(0) {
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)SyncMergeResult::~SyncMergeResult() {
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Setters.
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void SyncMergeResult::set_error(SyncError error) {
24eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  DCHECK(!error.IsSet() || model_type_ == error.model_type());
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  error_ = error;
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void SyncMergeResult::set_num_items_before_association(
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    int  num_items_before_association) {
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  num_items_before_association_ = num_items_before_association;
312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void SyncMergeResult::set_num_items_after_association(
342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    int num_items_after_association) {
352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  num_items_after_association_ = num_items_after_association;
362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void SyncMergeResult::set_num_items_added(int num_items_added) {
392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  num_items_added_ = num_items_added;
402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void SyncMergeResult::set_num_items_deleted(int num_items_deleted) {
432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  num_items_deleted_ = num_items_deleted;
442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void SyncMergeResult::set_num_items_modified(int num_items_modified) {
472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  num_items_modified_ = num_items_modified;
482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
507d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)void SyncMergeResult::set_pre_association_version(int64 version) {
517d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  pre_association_version_ = version;
527d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
537d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)ModelType SyncMergeResult::model_type() const {
552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return model_type_;
562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)SyncError SyncMergeResult::error() const {
592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return error_;
602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)int SyncMergeResult::num_items_before_association() const {
632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return num_items_before_association_;
642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)int SyncMergeResult::num_items_after_association() const {
672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return num_items_after_association_;
682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)int SyncMergeResult::num_items_added() const {
712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return num_items_added_;
722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)int SyncMergeResult::num_items_deleted() const {
752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return num_items_deleted_;
762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)int SyncMergeResult::num_items_modified() const {
792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return num_items_modified_;
802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
827d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)int64 SyncMergeResult::pre_association_version() const {
837d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  return pre_association_version_;
847d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
857d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}  // namespace syncer
87