Chris Loer
b7e2b11a75
[core] Support for excluding ideographic glyphs from offline downloads.
2018-12-21 15:13:48 -08:00
Huyen Chau Nguyen
9a606caf0b
[core] define number of concurrent downloads in online file source variable
2018-11-15 12:19:48 -08:00
Huyen Chau Nguyen
fa78bcadfd
[core] add tests for handling requests with different priorities
...
- ensure that low priority requests are handled last
- add option to set the number of maximum concurrent requests for tests
- some style fixups
2018-10-23 12:47:10 +02:00
Huyen Chau Nguyen
1e3a744d22
[core] add priorities to resources
...
- priorities can be low or regular
- offline downloads should have low priority to not throttle "regular requests"
2018-10-23 12:47:10 +02:00
Konstantin Käfer
8bf66ef7a7
[core] remove some uses of <iostream> and <sstream>
2018-10-23 12:23:40 +02:00
Chris Loer
f510b577aa
[core] Promote DefaultFileSource::put to general use.
2018-10-17 12:53:24 -07:00
Asheem Mamoowala
d4f4136414
Enforce Offline tile limit when merging sideloaded databases
2018-08-28 07:14:54 -07:00
Asheem Mamoowala
065f5ca87e
[core] Add DefaultFileSource::mergeRegions API and CLI support in the mbgl-offline tool.
2018-08-28 07:14:54 -07:00
Ivo van Dongen
fae099933b
[core] offline region definition - add support for arbitrary geometries
2018-08-20 22:49:01 +03:00
Konstantin Käfer
6e06e55b95
WIP: use expected<T, E> for passing on errors
2018-08-14 17:03:46 -07:00
Konstantin Käfer
fa7b70945f
[core] harden OfflineDatabase
2018-08-14 17:03:46 -07:00
Anand Thakker
b8654b3b04
[core] Move SourceType to the 'style' namespace
2017-10-16 16:32:53 -07:00
Konstantin Käfer
f4cb3b8a4f
[core] make forcing cache/network only more explicit
...
Previously, we used the existence of a `prior*` field in the Resource object as an indication for whether we should consult the cache or not. However, this is prone to error, since a failed cache lookup won't set any prior fields. Therefore, we manually set `priorExpires` to 0. This in turn triggered another bug where generated wrong expiration timestamps when the server response we got was expired (or expired between sending and receiving).
This commit changes the flags so that we can now explicitly request CacheOnly/NetworkOnly (or All) loading methods, rather than the implicit Optional/Required naming scheme.
2017-10-12 10:41:49 +02:00
Konstantin Käfer
64c75b442c
[build] split out DefaultFileSource and dependents to a separate target
...
We don't want to link it into the node bindings, so keep it in a separate target
2017-09-28 13:48:36 -04:00
Konstantin Käfer
bd553de7bc
[test] add ability to take the OnlineFileSource offline
...
This functionality is used for testing to ensure correct offline behavior when connectivity is missing.
2017-09-22 10:57:15 +02:00
Asheem Mamoowala
2d84e2a1ae
Fix platform dependent number type unsigned long -> uint64_t
2017-09-20 09:05:45 -07:00
Asheem Mamoowala
50fd917510
Fast tileCount with help from @mapbox/sphericalmercator module
2017-09-08 17:38:42 -07:00
Konstantin Käfer
f0a7c45064
[core] finish must-revalidate support
2017-08-08 12:40:38 +02:00
Thiago Marcos P. Santos
ea34cb5725
[core] Use the ResourceTransform instead of callbacks
...
Based on the actor model, can be considered safer to use since
we don't need to worry about object lifetime anymore.
2017-06-26 16:32:21 +03:00
Thiago Marcos P. Santos
6beccef517
[core] Introduce the ResourceTransform
...
Wrapper for transforming URLs on the OnlineFileSource.
2017-06-26 16:32:21 +03:00
Thiago Marcos P. Santos
7e8bdadb91
[core] Rename ThreadedObject to Thread
...
Now that the old Thread class is gone, we can give ThreadedObject
a better name.
2017-06-21 14:30:09 +03:00
Thiago Marcos P. Santos
999de53f11
[core] Convert DefaultFileSource to ThreadedObject
...
Fixes #6426
2017-06-21 14:30:09 +03:00
Asheem Mamoowala
aa6647e910
[core] Offline support for Image Sources
2017-06-01 15:38:01 -07:00
Ivo van Dongen
5cf0fc0f8b
[core] default file source - ensure thread safety for cached values
2017-05-27 10:05:36 +03:00
Ivo van Dongen
89129379f1
[core] default file source - ensure thread safety for local file and asset requests
2017-05-27 10:05:36 +03:00
Konstantin Käfer
197f0ca6b4
[android] use AAssetManager instead of libzip
2017-04-24 10:42:10 +02:00
Jesse Bounds
73ed8aa7be
[ios] Guard against over calling pause or resume
2017-03-18 19:09:45 -07:00
Jesse Bounds
e1546644b5
[core] Cache file source base URL and access token
...
This caches the base URL and access token values when they are set
so that they can still be retrieved even when the thread is paused.
2017-03-01 08:25:44 -08:00
Thiago Marcos P. Santos
4c2e720b15
[core] Add a pause/resume API to the DefaultFileSource
...
It will halt the networking thread completely. Expired and error'ed
tiles won't get re-requested until resume() is called again.
2017-02-25 14:03:38 +02:00
Konstantin Käfer
e2d8a83664
[core] add ability to transform URLs before they're requested from the Internet
2017-02-20 14:36:27 +01:00
Thiago Marcos P. Santos
e6659242bc
[core] Do not consider error'ed responses fresh
...
It has the unwanted side effect of not retrying anymore in case
of error.
2017-02-07 12:17:40 +01:00
Konstantin Käfer
62ea1f2185
[core] remove trailing whitespace, add trailing newlines, add space after //
2017-01-27 11:44:16 +01:00
Ivo van Dongen
1bf12e20a6
[core] LocalFileSource implementation and tests
2016-09-30 14:57:26 +02:00
Molly Lloyd
598f7c6ad5
[core] allow offline region metadata to be updated ( #6338 )
2016-09-20 17:43:00 +02:00
Lucas Wojciechowski
37cb2bd756
[core] Convert uses of std::set to std::unordered_set ( #6325 )
...
* src/mbgl/annotation/annotation_manager.hpp
* src/mbgl/algorithm/update_renderables.hpp
* src/mbgl/geometry/glyph_atlas.hpp
* src/mbgl/renderer/painter.cpp and src/mbgl/renderer/render_item.hpp
* src/mbgl/renderer/symbol_bucket.hpp and src/mbgl/text/glyph_store.hpp
* src/mbgl/sprite/sprite_atlas.hpp
* include/mbgl/storage/network_status.hpp
* src/mbgl/text/collision_tile.cpp
* src/mbgl/style/update_batch.hpp
* platform/default/mbgl/storage/offline_download.hpp
* Add GlyphRangeSet typedef
* Fix whitespace & unused imports
2016-09-19 17:26:25 -07:00
Tobrun
9ef65440b6
[core] [android] - public api configurable base endpoint ( #6309 )
...
add runloop to test
2016-09-15 22:01:09 -07:00
Ivo van Dongen
290bd07a92
[core] OnlineFileSource - rate limit
2016-09-13 14:21:37 +02:00
John Firebaugh
86cccc4d24
[core] Don't allow style mutations to be overwritten by revalidation
...
* Once we get a fresh style, stop revalidating.
* If the style is mutated, stop revalidating and preserve the existing mutations.
2016-08-23 09:55:32 -07:00
Konstantin Käfer
18176605f6
[core] support "scheme": "tms" in TileJSON files
2016-08-16 11:04:30 +02:00
Thiago Marcos P. Santos
389c7615eb
[core] Revert workaround for std::atomic on ARMv5
...
Got fix on r12.
https://github.com/android-ndk/ndk/issues/31
2016-07-13 17:56:51 +03:00
John Firebaugh
6eab895bc0
[core] Use Range<uint8_t> instead of full Tileset where possible
2016-06-14 11:25:45 -07:00
Bruno de Oliveira Abinader
4161d197fd
[tidy] Check modernize-pass-by-value
...
Ref: http://clang.llvm.org/extra/clang-tidy/checks/modernize-pass-by-value.html
2016-06-13 23:32:05 +03:00
Konstantin Käfer
91895b9aec
[core] only perform optional requests if the FileSource supports it
2016-06-10 12:42:14 +02:00
Brad Leege
d67b88dba9
Merge branch 'release-android-v4.1.0'
...
# Conflicts:
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/BaseMarkerViewOptions.java
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerViewManager.java
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
# platform/android/src/jni.cpp
# src/mbgl/geometry/buffer.hpp
# src/mbgl/geometry/glyph_atlas.cpp
# src/mbgl/geometry/glyph_atlas.hpp
# src/mbgl/geometry/line_atlas.cpp
# src/mbgl/geometry/vao.cpp
# src/mbgl/gl/gl_object_store.cpp
# src/mbgl/gl/gl_object_store.hpp
# src/mbgl/renderer/frame_history.cpp
# src/mbgl/shader/shader.cpp
# src/mbgl/sprite/sprite_atlas.cpp
# src/mbgl/sprite/sprite_atlas.hpp
# src/mbgl/text/glyph_pbf.hpp
2016-06-09 14:00:49 -05:00
Thiago Marcos P. Santos
b711979e32
[android] #5254 - fix ARMv5 support
...
Backported patches fixing ARMv5 support for issue #3985 .
2016-06-06 23:31:51 +03:00
John Firebaugh
c902f9098b
[core] Rationalize naming for style-related code
2016-06-02 14:51:39 -07:00
Konstantin Käfer
e2bcea90fc
[core] use #pragma once instead of ifdef include guards
2016-05-25 21:35:37 +02:00
Konstantin Käfer
cd65a43855
[core] move from microsecond precision timestamp to integer second precision
2016-05-13 17:24:22 +02:00
Konstantin Käfer
7332ae0073
[core] retain tiles differently and remove old TileID class
2016-05-10 14:50:56 +02:00
John Firebaugh
b39f22e6b6
[core] Refactor getRegionCompletedStatus; add completedTileCount; add tests
2016-04-27 13:41:29 -07:00