summaryrefslogtreecommitdiffstats
path: root/sync/syncable/nigori_util.h
Commit message (Collapse)AuthorAgeFilesLines
* sync: Add getters and setters to Entry classesrlarocque@chromium.org2013-09-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace the Entry and MutableEntry classes' Get(X) and Put(X, V) members with GetX() and PutX(V) style members. There are many good reasons for performing this refactor. The main reason to implement it now is that we'd like to have more fine-grained control over the visibility of the getters and setters for certain fields, and it's really hard to implement that control when several different fields use the same accessor functions. Once this refactor is complete, we can modify the inheritance hierarchy for Entry and MutableEntry to introduce a new, semi-MutableEntry that provides only the setters whose changes are not "visible" to the underlying model. We can also build on this work to simplify the implementation of MutableEntry. The interface changes are the most notable part of this CL, but there are a few smaller changes here too, including: - Some small formatting cleanups. - In cases where Put() functions had signatures that returned bool but never returned anything other than 'true', those return values have been changed to void. - Some dead code in syncer_proto_util.cc has been removed. BUG=284672 Review URL: https://chromiumcodereview.appspot.com/23484035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223111 0039d316-1c4b-4281-b951-d872f2087c98
* [sync] Componentize sync: Part 6: Add more SYNC_EXPORTs to files in src/sync/rsimha@chromium.org2013-01-021-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | | One of the long term goals of the sync team is to pull sync code out of chrome.dll and into its own component. As of today, several chrome targets depend on various sync targets as defined in sync.gyp. We'd like to move to a world where all chrome targets outside sync.gyp simply depend on the target sync.gyp:sync, which is built into its own component. This patch sets the stage for full componentization by adding SYNC_EXPORT_PRIVATE (and some SYNC_EXPORT) annotations to classes / methods within src/sync so that various chrome targets can reference them. It also makes a few assorted fixes like adding missing destructors, etc. These errors get flagged when component builds are enabled after componentizing sync. The final step of breaking off sync into its own component will be done in https://codereview.chromium.org/11412211. BUG=136928 Review URL: https://codereview.chromium.org/11624037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174801 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Refactor GetEncryptedTypes usage.zea@chromium.org2012-08-241-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | The cryptographer is now owned by the SyncEncryptionHandlerImpl, and no longer needs any connection to the nigori handler or encrypted types. Those are accessed via the directory, which now has a GetNigoriHandler method. Because of this, we can now clean up the thread safety guarantees in the sync encryption handler impl, enforcing that everything except GetEncryptedTypes (and IsUsingExplicitPassphrase, which will be fixed in a followup patch) are invoked on the syncer thread. This lets us not have to open unnecessary transactions. At the chrome layer, encrypted types are accessed via BaseTransaction:: GetEncryptedTypes(). At the syncer layer, they're accessed via directory:: GetNigoriHandler()->GetEncryptedTypes(BaseTransaction* trans const). BUG=142476,139848 Review URL: https://chromiumcodereview.appspot.com/10844005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153335 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Add SyncEncryptionHandlerzea@chromium.org2012-08-161-0/+10
| | | | | | | | | | | | | | | | | | All sync-specific encryption state (types, encrypt everything, explicit passphrase, keys) is now tracked within the new class SyncEncryptionHandler. It's owned by the sync manager, and unifies some of the observer logic we previously had. In addition, it's capable of creating its own transactions, taking us a step closer to have a nigori datatype. In addition, we add a NigoriHandler to abstract the chrome-side of encryption from the sync visible side of encryption. BUG=139848 Review URL: https://chromiumcodereview.appspot.com/10827266 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151833 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Remove unneeded 'using syncer::' lines and 'syncer::' scopingsakalin@chromium.org2012-07-201-3/+3
| | | | | | | | | | | | | | | | | Since (almost) everything in sync/ is now in the 'syncer' namespace, all of these are redundant. Clean up indentation. Put sync_{client,listen_notifications} into syncer namespace. BUG=128060 TEST= Review URL: https://chromiumcodereview.appspot.com/10795018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147675 0039d316-1c4b-4281-b951-d872f2087c98
* Remove #pragma once from syncajwong@chromium.org2012-07-111-1/+0
| | | | | | Review URL: https://chromiumcodereview.appspot.com/10700154 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146074 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Move model_type* from syncable/ to base/akalin@chromium.org2012-07-031-1/+1
| | | | | | | | | | | | | | | | | | | Also move enum_set* to base/. This is the first step in moving ModelType et al. to the syncer namespace (from syncer::syncable). Move PurgeStalePayload() back to sync_session.cc. Move ModelTypePayloadMapFromRoutingInfo() to model_safe_worker.* and rename it to ModelSafeRoutingInfoToPayloadMap(). BUG=128060 TEST= Review URL: https://chromiumcodereview.appspot.com/10690071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145236 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Move sync/{internal_api,syncable} into syncer namespaceakalin@chromium.org2012-07-021-4/+4
| | | | | | | | | | | | | | Add temporary aliases from syncable::* to syncer::syncable::* for ModelType and related classes until those are ported to syncer proper. Disambiguate names in MockConnectionManager. BUG=128060 TEST= Review URL: https://chromiumcodereview.appspot.com/10699044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145211 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Move nigori_util* to sync/syncableakalin@chromium.org2012-06-291-0/+75
It's already in the syncable namespace, so syncable/ seems like a better place for it. Move a function from syncer_util.h. to syncable_util.h. Remove pseudo-namespace class SyncerUtil. After this change, everything in sync/engine will be in the syncer namespace. Also clean up some whitespace. BUG=128060 TEST= Review URL: https://chromiumcodereview.appspot.com/10704034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144977 0039d316-1c4b-4281-b951-d872f2087c98