summaryrefslogtreecommitdiffstats
path: root/sync/sessions/sync_session_context.cc
Commit message (Collapse)AuthorAgeFilesLines
* sync: Remove TrafficRecorderrlarocque@chromium.org2014-04-021-2/+0
| | | | | | | | | | | | The new protocol events framework handles all the use cases of the TrafficRecorder, and more. The traffic recorder implementation and about:sync tab are now redundant. BUG=357821 Review URL: https://codereview.chromium.org/217633003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261032 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Add NonBlockingSyncTypeProcessorCore (again)rlarocque@chromium.org2014-03-201-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | This is a re-land of r258035, which was mistakenly reverted with r258266. Original CL description follows. Adds the class for handling sync updates and commits on the sync thread. The current implementation is mostly a bunch of stubs. In the future, this will be hooked up to a NonBlockingSyncTypeProcessor that lives on the model type's thread. These two classes will collaborate to implement the non-blocking sync system. This CL also adds some code to the ModelTypeRegistry and SyncSessionContext to prepare for managing these NonBlockingSyncTypeProcessor objects. This new code is used only in tests. TBR=zea@chromium.org BUG=351005 Review URL: https://codereview.chromium.org/206693002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258390 0039d316-1c4b-4281-b951-d872f2087c98
* Revert of sync: Add NonBlockingSyncTypeProcessorCore ↵pneubeck@chromium.org2014-03-201-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/192953008/) Reason for revert: Best guess that this broke SyncFileSystemApiTest.WriteFileThenGetUsage SyncFileSystemApiTest.GetFileStatuses MediaGalleriesPlatformAppBrowserTest.MediaGalleriesCopyTo on XP Tests(1). Original issue's description: > sync: Add NonBlockingSyncTypeProcessorCore > > Adds the class for handling sync updates and commits on the sync thread. > The current implementation is mostly a bunch of stubs. > > In the future, this will be hooked up to a NonBlockingSyncTypeProcessor > that lives on the model type's thread. These two classes will > collaborate to implement the non-blocking sync system. > > This CL also adds some code to the ModelTypeRegistry and > SyncSessionContext to prepare for managing these > NonBlockingSyncTypeProcessor objects. This new code is used only in > tests. > > BUG=351005 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=258035 TBR=zea@chromium.org,rlarocque@chromium.org NOTREECHECKS=true NOTRY=true BUG=351005 Review URL: https://codereview.chromium.org/204913004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258266 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Add NonBlockingSyncTypeProcessorCorerlarocque@chromium.org2014-03-191-1/+4
| | | | | | | | | | | | | | | | | | | | Adds the class for handling sync updates and commits on the sync thread. The current implementation is mostly a bunch of stubs. In the future, this will be hooked up to a NonBlockingSyncTypeProcessor that lives on the model type's thread. These two classes will collaborate to implement the non-blocking sync system. This CL also adds some code to the ModelTypeRegistry and SyncSessionContext to prepare for managing these NonBlockingSyncTypeProcessor objects. This new code is used only in tests. BUG=351005 Review URL: https://codereview.chromium.org/192953008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258035 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Introduce ModelTypeRegistry and helpersrlarocque@chromium.org2014-01-171-31/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Introduce the ModelTypeRegistry class and use it to manage the creation of UpdateHandlers and CommitContributors. The ModelTypeRegistry also gets some help from the newly introduced UpdaterList and CommitterList classes. This lets us move the verbose iteration logic out of the code that's focused on building and executing commits and updates, which should make those functions easier to read. It gives us more freedom to experiment with other ways to manage the lists of commit contributors and update handlers, should we choose to do so. It prevents us from leaking the set of enabled types through the per-type maps. This patch is one of the last in the stack related to building a per-type abstraction into the sync engine, and also one of the first steps towards implementing run-time enable and disable logic for the new-style sync types. BUG=278484 Review URL: https://codereview.chromium.org/93433006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245654 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Consistently refcount ModelSafeWorkersrlarocque@chromium.org2014-01-111-1/+1
| | | | | | | | | | | | | | | | Certain interfaces in sync had signatures that included vectors of raw pointers to ModelSafeWorkers. The use of raw pointers to refcounted objects looks a lot like a bug waiting to happen. This CL replaces any use of std::vector<ModelSafeWorker*> with std::vector<scoped_refptr<ModelSafeWorker> >. This is not expected to alter sync behavior in any significant way. BUG=332251 Review URL: https://codereview.chromium.org/130193002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244329 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Per-type update applicationrlarocque@chromium.org2013-12-041-14/+20
| | | | | | | | | | | | | | | | | | | | | | | | | This change moves the update application functionality from the ApplyUpdatesAndResolveConflictsCommand into the SyncDirectoryUpdateHandler class. This change will allow us to implement update application differently for different types. Because update application happens on the model threads, the ApplyUpdatesAndResolveConflictsCommand had to be aware of ModelSafeRoutingInfo, ModelSafeWorkers, and other concepts intended to hide threading details. The new code takes a different approach. It hides the threading details specific to each type inside its SyncDirectoryUpateHandler by initializing it with a scoped_refptr to its associated ModelSafeWorker. The ApplyUpdatesAndResolveConflictsCommand was the last SyncerCommand. With its removal, we can also remove the definitions of SyncerCommand, ModelChangingSyncerCommand and SyncerCommandTest. BUG=278484 Review URL: https://codereview.chromium.org/72403003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238532 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Implement per-type update processingrlarocque@chromium.org2013-10-301-2/+11
| | | | | | | | | | | | | | | | | | | | | | | Introduces a new class that represents a syncable::Directory's udpate requesting and processing capabilities. The intention is that this will eventually be expanded to cover commits as well. Eventually, this will be used as the basis for an interface between sync and Some update logic has been moved into this SyncDirectoryUpdateHandler class or download.cc. The rest of it can be found in process_update_util.cc, the successor to the old ProcessUpdatesCommand. The StoreTimestampsCommand has been entirely removed. The unit tests associated with these SyncerCommands have been ported to sync_directory_update_handler_unittest.cc. Except for a few error scenarios that are now handled differently, the observable behavior of the client should not be changed by this CL. BUG=278484 Review URL: https://codereview.chromium.org/38803003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231878 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Implement per-type commit interfacerlarocque@chromium.org2013-10-161-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | Move most commit logic into per-type instances of SyncDirectoryCommitContributor and SyncDirectoryCommitContribution classes. Make GetCommitIdsCommand and ProcessCommitResponseCommand into container classes with only static methods. Remove OrderedCommitSet. The point of these changes is to make way for different kinds of entity committers. The SyncDirectoryCommitContributor and SyncDirectoryCommitContribution will eventually refactored into implementations of more generic "commit contributor" and "commit contribution" interfaces. This commit leaves us with some structures that might look a bit odd to someone unfamiliar with the history of this code. In particular, many of the old SyncerCommands look out of place. We plan to refactor them in future CLs. For now, it's more important to make sure this CL has an easy to read diff. BUG=278484 Review URL: https://codereview.chromium.org/25638003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228810 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up a few more unused globals.thakis@chromium.org2013-09-251-3/+0
| | | | | | | | | | | Found by clang's new -Wunused-const-variable. BUG=290204 R=akalin@chromium.org, avi@chromium.org, isherman@chromium.org, jamesr@chromium.org, joi@chromium.org, sergeyu@chromium.org, sky@chromium.org, thestig@chromium.org, xhwang@chromium.org Review URL: https://codereview.chromium.org/24649002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225273 0039d316-1c4b-4281-b951-d872f2087c98
* Lock-free shutdown of profile sync service. Changes include:haitaol@chromium.org2013-07-311-3/+3
| | | | | | | | | | | | | | | | | | | | | | * Disconnect non-frontend processor/associator to stop accessing directory so that sync backend can be shut down without waiting. * Change non-frontend controller so that creation/destruction of processor/associator doesn't depend on valid controller. So scoped wait on stopping controller can be removed. * Move sync thread to PSS. It's created when starting first backend and destroyed on last browser thread. BUG=19757 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=210333 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=210955 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=213642 Review URL: https://chromiumcodereview.appspot.com/16770005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214500 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 213642 "Lock-free shutdown of profile sync service. Chang..."earthdok@chromium.org2013-07-251-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Reverting due to memory leaks. BUG=264325 > Lock-free shutdown of profile sync service. Changes include: > * Disconnect non-frontend processor/associator to stop accessing directory > so that sync backend can be shut down without waiting. > * Change non-frontend controller so that creation/destruction of > processor/associator doesn't depend on valid controller. So > scoped wait on stopping controller can be removed. > * Move sync thread to PSS. It's created when starting first backend and > destroyed on last browser thread. > > BUG=19757 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=210333 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=210955 > > Review URL: https://chromiumcodereview.appspot.com/16770005 TBR=haitaol@chromium.org Review URL: https://codereview.chromium.org/20374005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213671 0039d316-1c4b-4281-b951-d872f2087c98
* Lock-free shutdown of profile sync service. Changes include:haitaol@chromium.org2013-07-251-3/+3
| | | | | | | | | | | | | | | | | | | | * Disconnect non-frontend processor/associator to stop accessing directory so that sync backend can be shut down without waiting. * Change non-frontend controller so that creation/destruction of processor/associator doesn't depend on valid controller. So scoped wait on stopping controller can be removed. * Move sync thread to PSS. It's created when starting first backend and destroyed on last browser thread. BUG=19757 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=210333 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=210955 Review URL: https://chromiumcodereview.appspot.com/16770005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213642 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Add pre-commit update avoidance mode + flagrlarocque@chromium.org2013-07-201-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL allows the syncer to avoid requesting updates from the server prior to a commit if the nudge tracker determines that such a request is not necessary. In general, the nudge tracker will consider such a request to be unnecessary unless the sync cycle was triggered by a local refresh request or an invalidation, or invalidations are disabled. This behavior is enabled only if explicitly requested by the client or the server. The client can enable this mode with the command-line flag '--sync-enable-get-update-avoidance'. The server can toggle it on or off with the 'pre_commit_update_avoidance' experiment. Unless at least one of these flags are set, this CL will have no effect on syncer behavior. When this experimental mode is enabled, the SyncScheduler will use the "short poll" interval rather than the "long poll". This should help clients keep in sync with each other even if the experiment breaks. Also included in this CL are some extensions to the python test server to enable manual testing of the pre_commit_update_avoidance experiment node. BUG=147685 Review URL: https://chromiumcodereview.appspot.com/19309002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212746 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Handle type throttling in NudgeTrackerrlarocque@chromium.org2013-06-141-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change removes the ThrottledDataTypeTracker and moves much of its functionality into the NudgeTracker. This allows us to better control throttling behavior and fix crbug.com/155296. This CL re-routes syncer_proto_util type throttling callbacks through the SyncSession::Delegate to the SyncScheduler. It adds a timer and some related functions to the SyncScheduler, so the scheduler can now wake up, unthrottle types, and attempt a sync cycle at the exact time when throttling expires. The information about which types are currently throttled has been moved to the NudgeTracker. This allows the NudgeTracker to take type throttling into account in functions like NudgeTracker::IsSyncRequired() and NudgeTracker::RecordSuccessfulSyncCycle(). The DownloadUpdatesCommand's special case for nudge-type syncs has been extended to take throttling into account. GetCommitIdsCommand has been updated to fetch its list of throttled types from the nudge tracker. Unfortunately, this meant that committing from poll-triggered sync sessions had to be disabled, since poll sync cycles do not have access to the nudge tracker. BUG=155296, 116184 Review URL: https://chromiumcodereview.appspot.com/16402013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206475 0039d316-1c4b-4281-b951-d872f2087c98
* Worker changes to prepare for lock-free shutdown.haitaol@chromium.org2013-05-291-1/+3
| | | | | | | | | | | | | | | | | | | * Make worker observe the destruction of the thread where it does work. * Make work done signal a memeber of worker and set it when worker's working thread is destroyed so that syncer won't be blocked indefinitely on work that's not gonna run. * Ref-count worker in session context so that worker remains valid when syncer is still iterating through workers but registrar has erased it from its worker map. * Add RequestStop() and Stopped() to allow worker to return early when it's stopped while waiting to run work on its working thread. This cl by itself should have no real impact because the added functions are not used. BUG=19757 Review URL: https://chromiumcodereview.appspot.com/14046031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202786 0039d316-1c4b-4281-b951-d872f2087c98
* Separate invalidator and sync client ID (part 1/2)rlarocque@chromium.org2013-03-021-2/+4
| | | | | | | | | | | | | | | | | | | | | This change implements support for setting the sync client ID and invalidator client ID separately. The two IDs are managed separately and both of them are sent up to the server. This change includes some additional changes to support the transition, such as a new field in the about:sync UI. At this point, the IDs are not different. Both are initialized from the same source: the sync database. The work to store and manage the invalidator's ID separate from sync was begun in r180907 and will be finished in a separate commit. We will not be able to complete that work until the server supports separate IDs. BUG=124142 Review URL: https://chromiumcodereview.appspot.com/12256033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@185721 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Follow-up to conflict resolution refactorrlarocque@chromium.org2012-11-011-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is part two of r164286. That commit refactored the way we handle conflict resolution. This commit takes advantage of those changes to delete lots of code. Because this change deletes session_state.cc, I decided to move the two remaining useful tests session_state_unittest.cc into their own files, sync_session_snapshot_unittest.cc and sync_source_info_unittest.cc. The tests were not modified in any way. None of these changes should have any effect on syncer behaviour: - We can remove the simple conflict counters and related code, since we now assert that all conflicts will be resolved by the end of a successful sync cycle. - We can remove the PerModelSafeGroupState because that struct no longer has any members. - The 'conflicts_resolved' indicators are no longer set, so we can remove them. - Without those indicators, it's no longer possible to have any SYNC_CYCLE_CONTINUATION sync cycles. We can remove a few counters associated with them, as well as the 'has_more_to_sync' flag in the snapshot. - Without SYNC_CYCLE_CONTINUATION cycles, there's no longer any need for code that loops around SyncShare() in SyncSchedulerImpl. The SyncSession::PrepareForAnotherSyncCycle() function is no longer used, either. - The ScopedConflictResolver installed on the session during a sync cycle is no longer used, so all the code related to it can be deleted. BUG=147681,111280,156238 Review URL: https://chromiumcodereview.appspot.com/11314008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165474 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Add support for performing a GetKey on startup.zea@chromium.org2012-07-311-2/+4
| | | | | | | | | | | | | | | | | The functionality is behind the --sync-keystore-encryption flag, and the key is not currently consumed by anything, but this lays the groundwork for testing the server and client interaction. We request a key anytime we perform a GetUpdates while the cryptographer does not have a keystore key. But, it is considered an error to request a key and not receive one, putting us into a state of backoff. BUG=129665 TEST=sync_unit_tests, running against python server Review URL: https://chromiumcodereview.appspot.com/10455012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149248 0039d316-1c4b-4281-b951-d872f2087c98
* Make SyncBackendRegistrar aware of loaded datarlarocque@chromium.org2012-07-301-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a parameter to the SyncManager::Initialize() callback to inform the caller which sync data types were successfully loaded from disk. This allows the SyncBackendHost and related classes make better decisions during initialization. If necessary, the SyncBackendHost will send a configure request to the syncer during early initialization asking it to download the nigori node. Now we can guarantee that the node will be available by the type ProfileSyncService::OnBackendInitialized() is called. The SyncBackendHost test expectations had to be amended to account for this test. Most of the changes are related to the fact that our behaviour no longer depends on the SyncPrefs. The ProfileSyncService*Tests were very much affected by this change. Those tests are parameterized with a callback that is used to initialize the sync DB and pretend that it had been loaded from disk. Previously, this callback would be executed later on during initialization, around the time of ProfileSyncService::OnBackendInitialize(). That approach was incompatible with this change, which requires that we have access to the fully initialized database around the time we return from SyncBackendHost::Initialize(). The callback had to be moved, which meant that it now required an explicit UserShare parameter, which meant that a lot of call sites had to be updated. BUG=129825 TEST= Review URL: https://chromiumcodereview.appspot.com/10804039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148926 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Remove unneeded 'using syncer::' lines and 'syncer::' scopingsakalin@chromium.org2012-07-201-1/+1
| | | | | | | | | | | | | | | | | 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
* [Sync] Rename csync namespace to syncerakalin@chromium.org2012-06-281-3/+3
| | | | | | | | | | | | | | | Everyone was confused by 'csync'. 'syncer' seems more understandable. (Note that we can't use the 'sync' namespace since sync() is a function from unistd.h.) BUG=10662035 TEST= TBR=jhawkins@chromium.org,pkasting@chromium.org Review URL: https://chromiumcodereview.appspot.com/10698014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144820 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Rename browser_sync to csync in sync/akalin@chromium.org2012-06-211-3/+3
| | | | | | | | | | | | | | | Update all references from chrome. Leave possibly-extraneous csync:: qualifications in sync/ for now. (This will be cleaned up once everything in sync/ is in csync::.) BUG=128060 TEST= TBR=jhawkins@chromium.org Review URL: https://chromiumcodereview.appspot.com/10600002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@143449 0039d316-1c4b-4281-b951-d872f2087c98
* sync: Refactor per-datatype throttlingrlarocque@chromium.org2012-06-131-43/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | This CL pulls the code to track throttled data types out of the sync session context and into a class meant for that purpose. This new class, ThrottledDataTypeTracker, also implements code to notify the AllStatus object whenever the set of throttled datatypes is changed. The fact that ThrottledDataTypeTracker, which lives in sync/engine, references AllStatus caused some problems with DEPS checks. After a few iterations during code review, this commit now includes the following additional changes: - Move all_status.{cc,h} from sync/internal_api to sync/engine. - Move the SyncManager::Status inner class out of SyncManager and into sync/internal_api/public/engine/sync_status.{cc,h}. The class has been renamed to SyncStatus. This CL does not include code to expose the throttled status on the chrome://sync page, though it does contain functionality we will use to implement it in a future commit. BUG=125065 TEST= Review URL: https://chromiumcodereview.appspot.com/10454105 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141992 0039d316-1c4b-4281-b951-d872f2087c98
* Remove sync's ModelSafeWorkerRegistrarrlarocque@chromium.org2012-06-011-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ModelSafeWorkerRegistrar interface was a wrapper around the SyncBackendRegistrar. When the sync thread wanted to access the SyncBackendRegistrar's information regarding currently enabled types or workers, it would use the ModelSafeWorkerRegistrar interface to do it. This change removes this implicit inter-thread communication. Where necessary, it modifies the SyncBackendHost, SyncManager, SyncScheduler and the SyncSessionContext to ensure that these classes have access to a fresh copy of the SyncBackendRegistrar's data whenever it is required. The most biggest consequence of this patch is that the SyncSessionContext now maintains a copy of the list of ModelSafeWorkers and routing info, rather than a pointer to the ModelSafeWorkerRegistrar. Various functions along the path to CleanupDisabledTypes, Configure and StartSyncingNormally have been updated to ensure that the latest routing info is made available to the session context. Future patches may refactor this code to reduce the amount of duplicated state. This work was intentionally left to future patches to reduce the risk of the current change. The refactoring should be much easier once we're convinced that the new, explicit inter-thread communication mechanisms are no more buggy than the existing code. BUG=103326 TEST=sync_integration_tests Review URL: https://chromiumcodereview.appspot.com/10388187 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140122 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Convert SyncSessionSnapshot to a copy-able class.zea@chromium.org2012-04-241-1/+0
| | | | | | | | | | | | | | | | | Previously it was an immutable struct that was passed around by making dynamic allocations and passing pointers. We now just have a class with only getters and no setters, but support for default copy and assign. This cleans up some code and makes some future work easier to pass snapshots around. BUG=none TEST=sync_unit_tests Review URL: http://codereview.chromium.org/10197004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133747 0039d316-1c4b-4281-b951-d872f2087c98
* A new 'traffic' tab is introduced and clicking the button on the tab would ↵lipalani@chromium.org2012-04-011-3/+4
| | | | | | | | | | | | display the traffic. BUG=117615 TEST= Review URL: http://codereview.chromium.org/9826035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130081 0039d316-1c4b-4281-b951-d872f2087c98
* We store the past 10 records of client server communication in a queue in ↵lipalani@chromium.org2012-03-311-2/+7
| | | | | | | | | | | | | | | memory. The next patch would address the javascript side of exposing it in the UI. BUG= TEST= Review URL: http://codereview.chromium.org/9732008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130001 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Move 'sync' target to sync/akalin@chromium.org2012-03-151-0/+81
Also move related test files. Move WriteNode::UpdateEntryWithEncryption to nigori_util.h. Clean up defines and dependencies. In particular, get rid of SYNC_ENGINE_VERSION_STRING and hard-code the string in the single place it's used. Rename data_encryption.* to data_encryption_win.* and add a pragma for crypt32.lib. Clean up exit-time constructor warnings in sync{able,er}_unittest.cc. Remove some unused files. BUG=117585 TEST= TBR=jhawkins@chromium.org Review URL: https://chromiumcodereview.appspot.com/9699057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126872 0039d316-1c4b-4281-b951-d872f2087c98