• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 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/base_transaction.h"
6 
7 #include "sync/syncable/directory.h"
8 #include "sync/syncable/nigori_handler.h"
9 #include "sync/util/cryptographer.h"
10 
11 namespace syncer {
12 
13 //////////////////////////////////////////////////////////////////////////
14 // BaseTransaction member definitions
BaseTransaction(UserShare * share)15 BaseTransaction::BaseTransaction(UserShare* share)
16     : user_share_(share) {
17   DCHECK(share && share->directory.get());
18 }
19 
~BaseTransaction()20 BaseTransaction::~BaseTransaction() {
21 }
22 
GetCryptographer() const23 Cryptographer* BaseTransaction::GetCryptographer() const {
24   return GetDirectory()->GetCryptographer(this->GetWrappedTrans());
25 }
26 
GetEncryptedTypes() const27 ModelTypeSet BaseTransaction::GetEncryptedTypes() const {
28   syncable::NigoriHandler* nigori_handler =
29       GetDirectory()->GetNigoriHandler();
30   return nigori_handler ?
31       nigori_handler->GetEncryptedTypes(this->GetWrappedTrans()) :
32       ModelTypeSet();
33 }
34 
35 }  // namespace syncer
36