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.
5 #include "sync/internal_api/public/base_transaction.h"
7 #include "sync/syncable/directory.h"
8 #include "sync/syncable/nigori_handler.h"
9 #include "sync/util/cryptographer.h"
13 //////////////////////////////////////////////////////////////////////////
14 // BaseTransaction member definitions
15 BaseTransaction::BaseTransaction(UserShare
* share
)
16 : user_share_(share
) {
17 DCHECK(share
&& share
->directory
.get());
20 BaseTransaction::~BaseTransaction() {
23 Cryptographer
* BaseTransaction::GetCryptographer() const {
24 return GetDirectory()->GetCryptographer(this->GetWrappedTrans());
27 ModelTypeSet
BaseTransaction::GetEncryptedTypes() const {
28 syncable::NigoriHandler
* nigori_handler
=
29 GetDirectory()->GetNigoriHandler();
30 return nigori_handler
?
31 nigori_handler
->GetEncryptedTypes(this->GetWrappedTrans()) :