Index: sync/syncable/nigori_handler.h |
diff --git a/sync/syncable/nigori_handler.h b/sync/syncable/nigori_handler.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..ffa181b265e77f837e2380314e0b6cee9d81d606 |
--- /dev/null |
+++ b/sync/syncable/nigori_handler.h |
@@ -0,0 +1,40 @@ |
+// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef SYNC_SYNCABLE_NIGORI_HANDLER_H_ |
+#define SYNC_SYNCABLE_NIGORI_HANDLER_H_ |
+ |
+#include "sync/internal_api/public/base/model_type.h" |
+ |
+namespace sync_pb { |
+class NigoriSpecifics; |
+} |
+ |
+namespace syncer { |
+namespace syncable { |
+ |
+// Sync internal interface for dealing with nigori node and querying |
+// the current set of encrypted types. Not thread safe, so a sync transaction |
+// must be held by a caller whenever invoking methods. |
tim (not reviewing)
2012/08/14 02:32:20
Convention would be to have a transaction pointer
Nicolas Zea
2012/08/14 23:24:51
Done.
|
+class NigoriHandler { |
+ public: |
+ NigoriHandler(); |
+ virtual ~NigoriHandler(); |
+ |
+ // Apply a nigori node update, updating the internal encryption state |
+ // accordingly. |
+ virtual void UpdateFromNigori(const sync_pb::NigoriSpecifics& nigori) = 0; |
tim (not reviewing)
2012/08/14 02:32:20
I think ApplyNigoriUpdate is a better name here...
Nicolas Zea
2012/08/14 23:24:51
Done for first part. What do you mean by change th
|
+ |
+ // Store the current encrypt everything/encrypted types state into |nigori|. |
+ virtual void UpdateNigoriFromEncryptedTypes( |
+ sync_pb::NigoriSpecifics* nigori) const = 0; |
+ |
+ // Returns the set of currently encrypted types. |
+ virtual ModelTypeSet GetEncryptedTypes() const = 0; |
+}; |
+ |
+} // namespace syncable |
+} // namespace syncer |
+ |
+#endif // SYNC_SYNCABLE_NIGORI_HANDLER_H_ |