Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(274)

Side by Side Diff: sync/syncable/directory.cc

Issue 10844005: [Sync] Refactor GetEncryptedTypes usage. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase + add dcheck Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « sync/syncable/directory.h ('k') | sync/syncable/nigori_handler.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "sync/syncable/directory.h" 5 #include "sync/syncable/directory.h"
6 6
7 #include "base/debug/trace_event.h" 7 #include "base/debug/trace_event.h"
8 #include "base/perftimer.h" 8 #include "base/perftimer.h"
9 #include "base/stl_util.h" 9 #include "base/stl_util.h"
10 #include "base/string_number_conversions.h" 10 #include "base/string_number_conversions.h"
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 delete dirty_metahandles; 129 delete dirty_metahandles;
130 delete metahandles_to_purge; 130 delete metahandles_to_purge;
131 delete parent_id_child_index; 131 delete parent_id_child_index;
132 delete client_tag_index; 132 delete client_tag_index;
133 delete ids_index; 133 delete ids_index;
134 STLDeleteElements(metahandles_index); 134 STLDeleteElements(metahandles_index);
135 delete metahandles_index; 135 delete metahandles_index;
136 } 136 }
137 137
138 Directory::Directory( 138 Directory::Directory(
139 Encryptor* encryptor, 139 DirectoryBackingStore* store,
140 UnrecoverableErrorHandler* unrecoverable_error_handler, 140 UnrecoverableErrorHandler* unrecoverable_error_handler,
141 ReportUnrecoverableErrorFunction report_unrecoverable_error_function, 141 ReportUnrecoverableErrorFunction report_unrecoverable_error_function,
142 DirectoryBackingStore* store) 142 NigoriHandler* nigori_handler,
143 : cryptographer_(encryptor), 143 Cryptographer* cryptographer)
144 kernel_(NULL), 144 : kernel_(NULL),
145 store_(store), 145 store_(store),
146 unrecoverable_error_handler_(unrecoverable_error_handler), 146 unrecoverable_error_handler_(unrecoverable_error_handler),
147 report_unrecoverable_error_function_( 147 report_unrecoverable_error_function_(
148 report_unrecoverable_error_function), 148 report_unrecoverable_error_function),
149 unrecoverable_error_set_(false), 149 unrecoverable_error_set_(false),
150 nigori_handler_(nigori_handler),
151 cryptographer_(cryptographer),
150 invariant_check_level_(VERIFY_CHANGES) { 152 invariant_check_level_(VERIFY_CHANGES) {
151 } 153 }
152 154
153 Directory::~Directory() { 155 Directory::~Directory() {
154 Close(); 156 Close();
155 } 157 }
156 158
157 DirOpenResult Directory::Open( 159 DirOpenResult Directory::Open(
158 const string& name, 160 const string& name,
159 DirectoryChangeDelegate* delegate, 161 DirectoryChangeDelegate* delegate,
(...skipping 557 matching lines...) Expand 10 before | Expand all | Expand 10 after
717 void Directory::SetNotificationState(const std::string& notification_state) { 719 void Directory::SetNotificationState(const std::string& notification_state) {
718 ScopedKernelLock lock(this); 720 ScopedKernelLock lock(this);
719 SetNotificationStateUnsafe(notification_state); 721 SetNotificationStateUnsafe(notification_state);
720 } 722 }
721 723
722 string Directory::cache_guid() const { 724 string Directory::cache_guid() const {
723 // No need to lock since nothing ever writes to it after load. 725 // No need to lock since nothing ever writes to it after load.
724 return kernel_->cache_guid; 726 return kernel_->cache_guid;
725 } 727 }
726 728
729 NigoriHandler* Directory::GetNigoriHandler() {
730 return nigori_handler_;
731 }
732
727 Cryptographer* Directory::GetCryptographer(const BaseTransaction* trans) { 733 Cryptographer* Directory::GetCryptographer(const BaseTransaction* trans) {
728 DCHECK_EQ(this, trans->directory()); 734 DCHECK_EQ(this, trans->directory());
729 return &cryptographer_; 735 return cryptographer_;
730 } 736 }
731 737
732 void Directory::GetAllMetaHandles(BaseTransaction* trans, 738 void Directory::GetAllMetaHandles(BaseTransaction* trans,
733 MetahandleSet* result) { 739 MetahandleSet* result) {
734 result->clear(); 740 result->clear();
735 ScopedKernelLock lock(this); 741 ScopedKernelLock lock(this);
736 MetahandlesIndex::iterator i; 742 MetahandlesIndex::iterator i;
737 for (i = kernel_->metahandles_index->begin(); 743 for (i = kernel_->metahandles_index->begin();
738 i != kernel_->metahandles_index->end(); 744 i != kernel_->metahandles_index->end();
739 ++i) { 745 ++i) {
(...skipping 475 matching lines...) Expand 10 before | Expand all | Expand 10 after
1215 // There were no children in the linked list. 1221 // There were no children in the linked list.
1216 return NULL; 1222 return NULL;
1217 } 1223 }
1218 1224
1219 ScopedKernelLock::ScopedKernelLock(const Directory* dir) 1225 ScopedKernelLock::ScopedKernelLock(const Directory* dir)
1220 : scoped_lock_(dir->kernel_->mutex), dir_(const_cast<Directory*>(dir)) { 1226 : scoped_lock_(dir->kernel_->mutex), dir_(const_cast<Directory*>(dir)) {
1221 } 1227 }
1222 1228
1223 } // namespace syncable 1229 } // namespace syncable
1224 } // namespace syncer 1230 } // namespace syncer
OLDNEW
« no previous file with comments | « sync/syncable/directory.h ('k') | sync/syncable/nigori_handler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698