gecko-dev/mobile/android
Grisha Kruglov 283d1a3450 Bug 1291821 - Allow BatchingDownloader to resume downloads using offset r=rnewman
BatchingDownloader uses provided RepositoryStateProvider instance in order to track
offset and high water mark as it performs batching.

The state holder objects are initialized by individual ServerSyncStages, and prefixes are used to ensure keys
won't clash.

Two RepositoryStateProvider implementations are used: persistent and non-persistent. Non-persistent
state provider does not allow for resuming after a sync restart, while persistent one does.

Persistent state provider is used by the history stage. It is fetched oldest-first, and records are applied
to live storage as they're downloaded. These conditions let use resume downloads. It's also possible to
resume downloads for stages which use a persistent buffer, but currently we do not have any.

Offset value and its context is reset if we hit a 412 error; it is maintained if we hit a sync deadline, allowing us to
minimize number of records we'll redownload. BatchingDownloaderController owns resuming and context checking logic.

High water mark (h.w.m.) is maintained across syncs and used instead of stage's "last-synced" timestamp if said stage is
set to fetch oldest-first and explicitely allows use of a h.w.m. Server15RepositorySession provides correct timestamp
to RecordsChannel, decoupling BatchingDownloader from this logic.

MozReview-Commit-ID: IH28YrDU4vW

--HG--
extra : rebase_source : 63bd7daaa1fd2a63e10289d6d4cd198aaf81498b
2017-01-19 13:11:18 -08:00
..
app merge mozilla-inbound to mozilla-central a=merge 2017-02-22 14:33:38 +01:00
base Bug 1291821 - Allow BatchingDownloader to resume downloads using offset r=rnewman 2017-01-19 13:11:18 -08:00
bouncer
branding Bug 1312421 - Rename of the aurora version in the app launcher r=sebastian 2016-10-24 16:12:40 +02:00
build/classycle
chrome Bug 1341737: Remove SpatialNavigation.jsm. r=blassey 2017-02-22 10:46:56 -08:00
components Bug 1332562 - OMA Downloads should go to the system Download directory. r=snorp 2017-02-23 12:27:43 -06:00
config bug 1339087 - adjust android merge day configs for tc builds. r=rail 2017-02-13 13:34:26 -08:00
docs Bug 1335814 - Add topsites page swipe telemetry r=Grisha 2017-02-14 10:42:00 -08:00
extensions Bug 1331599 - script-generated patch to replace removeEventListener calls with the once option when possible, r=jaws. 2017-01-25 07:01:52 +01:00
fonts
geckoview Bug 1031210 - Don't assume URL format to prevent crash. r=snorp 2017-02-23 11:24:59 -06:00
geckoview_example Bug 1339160 - 5. Follow-up to fix errors; r=me 2017-02-15 20:22:12 -05:00
gradle Bug 1291363 - Add geckoview and geckoview_example Gradle projects. r=jchen,sebastian 2016-10-05 20:23:38 -07:00
installer Bug 876002 - Remove nsIFormHistory2 so no synchronous form history code remains, r=markh. 2017-02-08 22:50:00 +01:00
javaaddons
locales Bug 1199752 - Removing all tab mirroring UI code. r=sebastian 2017-02-02 11:27:28 +05:30
modules Bug 1322576 - [5.3] Make GeckoView settings accessible through nsIAndroidView. r=jchen 2017-02-22 14:57:42 +01:00
search Bug 1320072 - Support direct search from intent, r=sebastian 2016-11-30 20:25:32 +08:00
services Bug 1291821 - Allow BatchingDownloader to resume downloads using offset r=rnewman 2017-01-19 13:11:18 -08:00
stumbler Bug 1316008: Use explicit charset encoding r=nechen,sebastian 2016-11-29 20:42:08 +02:00
tests Bug 1291821 - Allow BatchingDownloader to resume downloads using offset r=rnewman 2017-01-19 13:11:18 -08:00
themes/core Bug 1335010 - mobile/android/themes/core/config.css uses float: inline-* r=sebastian 2017-01-30 15:48:38 +02:00
thirdparty Bug 1336311 - Change code comments with http://hg.mozilla.org to https://. r=gps 2017-02-07 17:52:56 +01:00
.eslintrc
app.mozbuild
build.mk Bug 1293295 - Replace all mochitest 'flavor' options with a single --flavor argument, r=jmaher 2016-08-08 11:48:49 -04:00
confvars.sh Bug 1341459 - Remove MOZ_WEBGL_CONFORMANT. - r=jrmuizel 2017-02-22 14:55:34 -08:00
debug_sign_tool.py
gradle.configure Bug 1314894 - Avoid path changes from b6be0e9e3e1e. r=chmanchester 2016-11-04 06:50:43 +09:00
LICENSE
mach_commands.py Bug 1294878 - Support 'mach android-emulator --version 6.0'; r=jmaher 2016-08-23 09:02:35 -06:00
Makefile.in
moz.build
moz.configure Bug 1267884 - Upgrade support libraries to 23.4 r=sebastian 2016-09-30 09:16:23 -07:00