Home | History | Annotate | Download | only in internal_api
      1 // Copyright 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "sync/internal_api/public/write_transaction.h"
      6 
      7 #include "sync/syncable/syncable_write_transaction.h"
      8 
      9 namespace syncer {
     10 
     11 //////////////////////////////////////////////////////////////////////////
     12 // WriteTransaction member definitions
     13 WriteTransaction::WriteTransaction(const tracked_objects::Location& from_here,
     14                                    UserShare* share)
     15     : BaseTransaction(share),
     16       transaction_(NULL) {
     17   transaction_ = new syncable::WriteTransaction(from_here, syncable::SYNCAPI,
     18                                                 share->directory.get());
     19 }
     20 
     21 WriteTransaction::WriteTransaction(const tracked_objects::Location& from_here,
     22                                    UserShare* share,
     23                                    int64* new_model_version)
     24     : BaseTransaction(share),
     25       transaction_(NULL) {
     26   transaction_ = new syncable::WriteTransaction(from_here,
     27                                                 share->directory.get(),
     28                                                 new_model_version);
     29 }
     30 
     31 WriteTransaction::~WriteTransaction() {
     32   delete transaction_;
     33 }
     34 
     35 syncable::BaseTransaction* WriteTransaction::GetWrappedTrans() const {
     36   return transaction_;
     37 }
     38 
     39 }  // namespace syncer
     40