summaryrefslogtreecommitdiffstats
path: root/sync/api
Commit message (Collapse)AuthorAgeFilesLines
* sync: Add remote modification time to SyncData.tim@chromium.org2013-07-153-9/+33
| | | | | | | | | | | | | | | | | This is required for building session sync on top of Sync API. TBR=zea@chromium.org ^ themes OWNERS ^ history OWNERS ^ managed_mode OWNERS BUG=98892, 80194 Review URL: https://codereview.chromium.org/18873006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211722 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Add support for sync Persistence Errorszea@chromium.org2013-07-025-40/+88
| | | | | | | | | | | | | | Persistence errors are those detected by the native model's transaction version being newer than sync's. They currently have no effect beyond a normal association error, but will eventually result in delayed association after a sync update. BUG=239828 TBR=atwilson@chromium.org, sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/15701022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209810 0039d316-1c4b-4281-b951-d872f2087c98
* Add base namespace to more values in sync and elsewhere.brettw@chromium.org2013-06-212-7/+8
| | | | | | | | | | This makes sync and net compile with no "using *Value". BUG= Review URL: https://codereview.chromium.org/17034006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207907 0039d316-1c4b-4281-b951-d872f2087c98
* Add model version to association stats and client debug info.haitaol@chromium.org2013-06-172-1/+15
| | | | | | | | BUG=249978 Review URL: https://chromiumcodereview.appspot.com/16854019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206774 0039d316-1c4b-4281-b951-d872f2087c98
* Use a direct include of strings headers in rlz/, sandbox/, skia/, sql/, sync/.avi@chromium.org2013-06-111-1/+1
| | | | | | | | | | BUG=247723 TEST=none TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/16358024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205458 0039d316-1c4b-4281-b951-d872f2087c98
* sync: SyncableService support for starting sync.tim@chromium.org2013-05-041-0/+10
| | | | | | | | | | | | | | | Still has no actual effect as operational bits are behind the --sync-enable-deferred-startup flag. If you pass that flag, autofill will now be permitted to kick off sync init (in fact, it will be the only thing that can kick off sync init, so you probably don't want to pass the flag yet!). Next I'll add a fallback timer and plumb the flare to more datatypes; non Sync API types will have to call ProfileSyncService directly. TBR=dhollowa@chromium.org ^ For web_data_service_factory as changes are just basic consequence of the parameter change to AutocompleteSyncableService already LGTM'd. BUG=80194 Review URL: https://chromiumcodereview.appspot.com/14018026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198309 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrite std::string("") to std::string(), Linux edition.dcheng@chromium.org2013-04-091-1/+1
| | | | | | | | | | | | | | | | | | | This patch was generated by running the empty_string clang tool across the Chromium Linux compilation database. Implicitly or explicitly constructing std::string() with a "" argument is inefficient as the caller needs to emit extra instructions to pass an argument, and the constructor needlessly copies a byte into internal storage. Rewriting these instances to simply call the default constructor appears to save ~14-18 kilobytes on an optimized release build. BUG=none Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=193020 Review URL: https://codereview.chromium.org/13145003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193040 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Rewrite std::string("") to std::string(), Linux edition."dcheng@chromium.org2013-04-091-1/+1
| | | | | | | | | | | | | | This reverts commit e59558b78e8c6a1b0bd916a724724b638c3c91b6. Revert "Fix build after r193020." This reverts commit 558a35897f6b3ffbcaefde927c1f150b815d140a. Revert "Really fix build after r193020." This reverts commit e3748a79b523a8d365d4a33ef986eebb4186fa78. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193030 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrite std::string("") to std::string(), Linux edition.dcheng@chromium.org2013-04-091-1/+1
| | | | | | | | | | | | | | | | | This patch was generated by running the empty_string clang tool across the Chromium Linux compilation database. Implicitly or explicitly constructing std::string() with a "" argument is inefficient as the caller needs to emit extra instructions to pass an argument, and the constructor needlessly copies a byte into internal storage. Rewriting these instances to simply call the default constructor appears to save ~14-18 kilobytes on an optimized release build. BUG=none Review URL: https://codereview.chromium.org/13145003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193020 0039d316-1c4b-4281-b951-d872f2087c98
* Two changes to history delete directive processingzea@chromium.org2013-03-062-2/+2
| | | | | | | | | | | | | | | | | | | 1. For global ID delete directive, remove all visits to a URL within delete directive's time range if one of them matches with a global ID instead of removing only the visits identified by global IDs currently. 2. Drop processed directives after processing because they only need to be processed once. Patch originally by haitaol@chromium.org Original review at https://codereview.chromium.org/12224044/ TBR=brettw@chromium.org, akalin@chromium.org, dubroy@chromium.org, haitaol@chromium.org BUG=177080 Review URL: https://chromiumcodereview.appspot.com/12476006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186523 0039d316-1c4b-4281-b951-d872f2087c98
* Add WriteNode::Drop() to delete entry locally but not on server.haitaol@chromium.org2013-02-271-1/+1
| | | | | | | | BUG=177080 Review URL: https://chromiumcodereview.appspot.com/12190008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184838 0039d316-1c4b-4281-b951-d872f2087c98
* [sync] Componentize sync: Part 6: Add more SYNC_EXPORTs to files in src/sync/rsimha@chromium.org2013-01-022-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 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] Componentize sync: Part 2: Add SYNC_EXPORTs to files in src/sync/rsimha@chromium.org2012-12-118-15/+24
| | | | | | | | | | | | | | | | | | | | | 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 annotations to classes / methods within src/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://chromiumcodereview.appspot.com/11515009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172458 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Have MergeDataAndStartSyncing return a SyncMergeResultzea@chromium.org2012-11-175-10/+13
| | | | | | | | | | | | This will allow us to track merge statistics for datatypes. For now none of the datatypes fill the SyncMergeResult with anything other than an error. BUG=158576 TBR=stevet@chromium.org Review URL: https://chromiumcodereview.appspot.com/11365241 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168446 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Add datatype controller support for tracking association statszea@chromium.org2012-11-143-0/+227
| | | | | | | | | | | | | | | | | | | | | | SyncMergeResult is a new class that allows datatypes and sync itself to record association information for later use by the debug info listener. We introduce the class and add some plumbing at the DTC level to pass these on to the model association manager (and from there to the debug listener). Similarly, to track syncer changes, we pass a SyncMergeResult weak pointer to the SharedChangeProcessor, which while it's valid will increment the deltas as changes arrive (in a future patch). The weak pointer is invalidated at the end of association by the DTC. To simplify the DTC plumbing of merge results, StartFailed has been merged into StartDone. Additionally, removed some old logging code attempting to identify which datatype was being Stopped that isn't necessary anymore. BUG=158576 Review URL: https://chromiumcodereview.appspot.com/11401002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167528 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Add keystore encryption info to about:synczea@chromium.org2012-09-192-1/+14
| | | | | | | | | | | | | | | | | | | This patch adds the following fields under the encryption section of about:sync - Has Keystore Key: whether the encryption handler has a keystore encryption key - Migration Time: the time migration was performed, or "Not Migrated" if migration hasn't been performed yet - Passphrase Type: the actual passphrase type (provides more detail than Is Using Explicit Passphrase, but stored at a diff layer) Added sync/api/time.h, which just includes sync/util/time.h but is accessible from chrome/ BUG=129665 Review URL: https://chromiumcodereview.appspot.com/10917246 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157499 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Generalize StringOrdinal to handle ordinal_in_parent fieldakalin@chromium.org2012-09-071-0/+47
| | | | | | | | | | | | | | | | | | | | | | | Rename StringOrdinal to Ordinal, move it to sync/, and templatize it. Make StringOrdinal be an instantiation of Ordinal that matches its previous behavior. Create NodeOrdinal, which is another instantiation of Ordinal for the ordinal_in_parent field in SyncEntity. Rework Ordinal to handle arbitrary byte ranges and to simplify the interpolation code a bit. Generalize StringOrdinal unit tests for Ordinal. Update users of StringOrdinal to prepend syncer::. BUG=145412 TBR=estade@chromium.org,jianli@chromium.org,brettw@chromium.org, Review URL: https://chromiumcodereview.appspot.com/10920017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155368 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Expose change location in GenericChangeProcessor errorszea@chromium.org2012-07-212-0/+5
| | | | | | | | | | BUG=135108 TEST=manual Review URL: https://chromiumcodereview.appspot.com/10803061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147754 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Remove unneeded 'using syncer::' lines and 'syncer::' scopingsakalin@chromium.org2012-07-2010-60/+54
| | | | | | | | | | | | | | | | | 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-118-8/+0
| | | | | | Review URL: https://chromiumcodereview.appspot.com/10700154 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146074 0039d316-1c4b-4281-b951-d872f2087c98
* Reland r145993.zea@chromium.org2012-07-113-8/+25
| | | | | | | | | | | | | | | | | | | | Original codereview at http://codereview.chromium.org/10766016/ [Sync] Add location parameter to SyncChange in Sync API. SyncChanges now require the location they were created as a parameter. This is then used in the case that the change violates and invariant. We display the location and type of erroneous change in about:sync, in addition to disabling the offending datatype. TBR=stevet@chromium.org, rlarocque@chromium.org BUG=135108 TEST=unit_tests Review URL: https://chromiumcodereview.appspot.com/10690128 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146050 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 145993 - [Sync] Add location parameter to SyncChange in Sync API.zea@chromium.org2012-07-103-25/+8
| | | | | | | | | | | | | | | | | | | SyncChanges now require the location they were created as a parameter. This is then used in the case that the change violates and invariant. We display the location and type of erroneous change in about:sync, in addition to disabling the offending datatype. TBR=kalman@chromium.org, mnissler@chromium.org, isherman@chromium.org BUG=135108 TEST=unit_tests Review URL: https://chromiumcodereview.appspot.com/10766016 TBR=zea@chromium.org Review URL: https://chromiumcodereview.appspot.com/10698141 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145996 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Add location parameter to SyncChange in Sync API.zea@chromium.org2012-07-103-8/+25
| | | | | | | | | | | | | | | | SyncChanges now require the location they were created as a parameter. This is then used in the case that the change violates and invariant. We display the location and type of erroneous change in about:sync, in addition to disabling the offending datatype. TBR=kalman@chromium.org, mnissler@chromium.org, isherman@chromium.org BUG=135108 TEST=unit_tests Review URL: https://chromiumcodereview.appspot.com/10766016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145993 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Move ModelType and related classes to 'syncer' namespaceakalin@chromium.org2012-07-0310-46/+46
| | | | | | | | | | | | | | Previously they were in 'syncer::syncable'. Also remove aliases to those classes from 'syncable'. BUG=128060 TEST= TBR=pkasting@chromium.org,jhawkins@chromium.org, Review URL: https://chromiumcodereview.appspot.com/10696087 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145399 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Move model_type* from syncable/ to base/akalin@chromium.org2012-07-035-5/+5
| | | | | | | | | | | | | | | | | | | 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] Rename csync namespace to syncerakalin@chromium.org2012-06-2818-43/+43
| | | | | | | | | | | | | | | 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] Put everything in sync/api into csync namespaceakalin@chromium.org2012-06-2718-4/+72
| | | | | | | | | | BUG=128060 TEST= TBR=pkasting@chromium.org Review URL: https://chromiumcodereview.appspot.com/10662035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144385 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Rename sync_api to csyncakalin@chromium.org2012-06-222-5/+5
| | | | | | | | | | BUG=128060 TEST= Review URL: https://chromiumcodereview.appspot.com/10601002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@143557 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Rename browser_sync to csync in sync/akalin@chromium.org2012-06-213-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: move internal_api components used by chrome/browser into ↵tim@chromium.org2012-06-172-2/+2
| | | | | | | | | | | | | | internal_api/public TBR=jhawkins@chromium.org BUG=131130 TEST= Review URL: https://chromiumcodereview.appspot.com/10534080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142626 0039d316-1c4b-4281-b951-d872f2087c98
* RefCounted types should not have public destructors - sync and jinglersleevi@chromium.org2012-06-111-1/+0
| | | | | | | | | | | | | | | | | | In the process of ensuring no base classes for RefCounted classes have public destructors, base::NonThreadSafe shows up frequently due to having a public destructor. Begin migrating all the code that has a base::NonThreadSafe member to directly inheriting from base::NonThreadSafe, so that base::NonThreadSafe's destructor can be made private. BUG=123295 TEST=existing Review URL: https://chromiumcodereview.appspot.com/10411046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141530 0039d316-1c4b-4281-b951-d872f2087c98
* sync: create internal_api/public to house sync/ files needed by ↵tim@chromium.org2012-06-076-6/+6
| | | | | | | | | | | | | | | | | chrome/browser/sync. Note on sync.gyp changes and .cc file moves: most files in /public have .h and their .cc side by side, as they are simple implementations. In some cases like model_type.cc (and others in a follow up patch, like sync_manager.cc) have only their header exposed in /public while the impl stays behind, because it needs to include things from within sync/, and /public has a strict include DEPS policy. This is in accordance with other /public folders (like content/). Cleans up DEPS files in sync + c/b/sync. Adds sync/{engine, sessions, syncable} to public/. There is more to come (moving things in internal_api/ into public). Not touching /notifier as that is in flux at the moment. BUG=131130 TEST= Review URL: https://chromiumcodereview.appspot.com/10532019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141038 0039d316-1c4b-4281-b951-d872f2087c98
* [Sync] Move chrome/browser/sync/api to sync/apiakalin@chromium.org2012-05-1519-0/+1161
Update all references. BUG=128061 TEST= TBR=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/10389134 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137062 0039d316-1c4b-4281-b951-d872f2087c98