Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | [core] Use the ResourceTransform instead of callbacks | Thiago Marcos P. Santos | 2017-06-26 | 1 | -11/+31 |
| | | | | | Based on the actor model, can be considered safer to use since we don't need to worry about object lifetime anymore. | ||||
* | [core] Remove util::Thread | Thiago Marcos P. Santos | 2017-06-21 | 1 | -1/+0 |
| | | | | Fixes #6425 | ||||
* | [core] Offline support for Image Sources | Asheem Mamoowala | 2017-06-01 | 1 | -0/+1 |
| | |||||
* | [core] add ability to transform URLs before they're requested from the Internet | Konstantin Käfer | 2017-02-20 | 1 | -0/+26 |
| | |||||
* | [core] remove trailing whitespace, add trailing newlines, add space after // | Konstantin Käfer | 2017-01-27 | 1 | -2/+2 |
| | |||||
* | [build] move logging to util | Konstantin Käfer | 2016-11-22 | 1 | -1/+1 |
| | |||||
* | [core] Avoid some copies | John Firebaugh | 2016-09-26 | 1 | -1/+1 |
| | |||||
* | [core] OnlineFileSource - prevent double scheduling of requests | Ivo van Dongen | 2016-09-23 | 1 | -1/+13 |
| | |||||
* | [core] [android] - public api configurable base endpoint (#6309) | Tobrun | 2016-09-15 | 1 | -5/+5 |
| | | | add runloop to test | ||||
* | [core] OnlineFileSource - rate limit | Ivo van Dongen | 2016-09-13 | 1 | -26/+6 |
| | |||||
* | [tidy] Check modernize-use-override | Bruno de Oliveira Abinader | 2016-06-13 | 1 | -1/+1 |
| | | | | Ref: http://clang.llvm.org/extra/clang-tidy/checks/modernize-use-override.html | ||||
* | [tidy] Check modernize-pass-by-value | Bruno de Oliveira Abinader | 2016-06-13 | 1 | -3/+3 |
| | | | | Ref: http://clang.llvm.org/extra/clang-tidy/checks/modernize-pass-by-value.html | ||||
* | [core] move from microsecond precision timestamp to integer second precision | Konstantin Käfer | 2016-05-13 | 1 | -11/+11 |
| | |||||
* | [all] Replace HTTPContextBase/HTTPRequestBase with FileSource | John Firebaugh | 2016-04-14 | 1 | -9/+6 |
| | |||||
* | [core] Remove internal threading from OnlineFileRequest | John Firebaugh | 2016-04-14 | 1 | -70/+59 |
| | | | | There's no need to do the work that OnlineFileRequest does on a separate thread from the DefaultFileSource thread, and having AsyncTasks proxy to other tasks across a thread boundary adds needless complexity. | ||||
* | [core] Unify FileRequest and WorkRequest | John Firebaugh | 2016-03-24 | 1 | -14/+14 |
| | |||||
* | [core] Fix regression of prior expiration time not being respected | Thiago Marcos P. Santos | 2016-03-17 | 1 | -1/+5 |
| | |||||
* | [core] Make OnlineFileSource respect the NetworkStatus | Thiago Marcos P. Santos | 2016-03-08 | 1 | -0/+9 |
| | | | | | The user can now force the Offline mode and set it back to Online, triggering the requests waiting for network connection. | ||||
* | [core] Build fix | Thiago Marcos P. Santos | 2016-02-26 | 1 | -1/+1 |
| | | | | Fix no viable conversion on OSX. | ||||
* | [core] Add timeout for clock skew | Thiago Marcos P. Santos | 2016-02-26 | 1 | -13/+49 |
| | | | | | | | | | | If the server keeps sending replies considered from the client in the past (there is no way to tell if the server or client clock is wrong), the client will try to interpolate a valid expiration time based on the delta of the expiration intervals sent by the server. If the intervals are always the same, exponential backoff kicks in until we get a different expiration time from what we already have. | ||||
* | [core] Add retry delay on expired tiles | Thiago Marcos P. Santos | 2016-02-26 | 1 | -3/+16 |
| | | | | | | | | | When we receive an expired tile, we don't immediately retry because in case the server keeps serving an expired tile, that would cause an infinite retry cycle. Now we add an exponential delay, similarly to what we do for connection errors. | ||||
* | [core] Faster access with unordered_set | Thiago Marcos P. Santos | 2016-02-16 | 1 | -2/+2 |
| | | | | | | The ordering won't be affected because requests are made as they arrive and later stored on the map just for keeping state. | ||||
* | [core] Remove requests from the pending queue on cancel | Thiago Marcos P. Santos | 2016-02-16 | 1 | -13/+21 |
| | | | | | | | | | | | | | | | | | | If we don't do this, we can activate a request twice. The issue here is that we use memory address as the 'key'. So if we destroy a request, another request might take the same memory address, or the same 'key'. The entry at 'pendingRequests' survives the 'cancel()' and is ultimatelly removed at 'activatePendingRequest()'. This is fine unless a request is created using the same 'key' before we call 'activatePendingRequest()'. The check if the request was canceled at 'activatePendingRequest()' will be no longer valid, activating the request. At the same time the request will be activated again by the task scheduled at the constructor of the 'OnlineFileRequestImpl' class. | ||||
* | [core] use std::move() to prevent copies | Konstantin Käfer | 2016-02-11 | 1 | -1/+1 |
| | |||||
* | [core] Throttle the number of concurrent requests to 20 | John Firebaugh | 2016-02-10 | 1 | -45/+102 |
| | |||||
* | [core] Make {Default,Online}FileSource::Impl more similar | John Firebaugh | 2016-02-10 | 1 | -61/+34 |
| | |||||
* | [core] Cache with mapbox:// tile URLs | John Firebaugh | 2016-02-10 | 1 | -1/+5 |
| | |||||
* | [core] Moving caching logic to DefaultFileSource | John Firebaugh | 2016-02-10 | 1 | -65/+29 |
| | | | | This results in OnlineFileSource containing precisely the logic we want for reuse by OfflineFileSource, and no more. | ||||
* | [core] Include prior values of caching headers in Resource | John Firebaugh | 2016-01-22 | 1 | -37/+55 |
| | | | | This allows the FileSource interface itself to support revalidation. We could (and probably should) now rewrite HTTPContextBase implementations as FileSource implementations. | ||||
* | [core] Use better types for modified / expires / etag | John Firebaugh | 2016-01-21 | 1 | -13/+11 |
| | |||||
* | [core] Eliminate Response::stale and inline Response::isExpired() | John Firebaugh | 2016-01-21 | 1 | -9/+13 |
| | | | | Response::isExpired() had subtle and potentially confusing behavior around Seconds::zero(). It's best to inline it and comment why. | ||||
* | [core] Eliminate RequestBase | John Firebaugh | 2016-01-21 | 1 | -3/+1 |
| | | | | HTTPRequestBase can now itself be the base class. | ||||
* | [core] Let SQLiteCache decide when store or refresh responses | John Firebaugh | 2016-01-14 | 1 | -9/+2 |
| | |||||
* | [core] Add an explicit "not modified" indicator to Response | John Firebaugh | 2016-01-14 | 1 | -5/+1 |
| | |||||
* | [core] std::shared_ptr<const Response> ⇢ const Response& | John Firebaugh | 2016-01-14 | 1 | -1/+1 |
| | |||||
* | [core] Eliminate FileCache interface | John Firebaugh | 2016-01-14 | 1 | -6/+7 |
| | | | | There is only one implementation and we're unlikely to add more. | ||||
* | [core] Remove request coalescing in OnlineFileSource | John Firebaugh | 2016-01-13 | 1 | -102/+25 |
| | |||||
* | [core] Inline a temporary variable which is now used only once | John Firebaugh | 2016-01-13 | 1 | -5/+2 |
| | |||||
* | [core] Simplify asset:// implementation | John Firebaugh | 2016-01-13 | 1 | -19/+7 |
| | | | | | | | | * Move asset:// URL handling to DefaultFileSource. * AssetFileSource implements FileSource interface and follows familiar implementation patterns. * Move default implementation to platform/default, zip implementation to platform/android. * Don't bother with modified / expires / etag -- assets are not cached so it doesn't matter. * Don't bother with interleaving individual IO calls on the implementation thread. That adds a lot of complexity for very little benefit. | ||||
* | [core] Further clarify timeout calculations | John Firebaugh | 2016-01-13 | 1 | -37/+30 |
| | |||||
* | [core] Use Seconds::max() rather than -1 for simpler logic | John Firebaugh | 2016-01-13 | 1 | -6/+5 |
| | |||||
* | [core] Inline OnlineFileRequestImpl::setResponse | John Firebaugh | 2016-01-13 | 1 | -29/+24 |
| | | | | In the cache response case, we don't want the failedRequests logic; cached errors, should they occur, shouldn't affect the scheduling behavior for real requests. | ||||
* | [core] Refactor down to two methods for scheduling a cache or real request | John Firebaugh | 2016-01-13 | 1 | -57/+50 |
| | |||||
* | [core] Inline OnlineFileRequestImpl::getRetryTimeout | John Firebaugh | 2016-01-13 | 1 | -50/+33 |
| | |||||
* | [core] Inline OnlineFileRequestImpl::checkResponseFreshness | John Firebaugh | 2016-01-13 | 1 | -19/+11 |
| | |||||
* | [core] Refactor to instance methods on OnlineFileRequestImpl | John Firebaugh | 2016-01-13 | 1 | -106/+105 |
| | |||||
* | [core] Simplify logic for notification with pre-existing response | John Firebaugh | 2016-01-13 | 1 | -7/+1 |
| | | | | We already had a condition that checks if a response is immediately available for an incoming request. Call the callback there, rather than in addObserver. | ||||
* | [core] Inline sole use of OnlineFileSource::Impl::update | John Firebaugh | 2016-01-13 | 1 | -10/+4 |
| | |||||
* | [core] Simplify OnlineFileSource::Impl::reschedule | John Firebaugh | 2016-01-13 | 1 | -3/+1 |
| | |||||
* | [core] Get rid of ::unref() for Timer and AsyncTask | Thiago Marcos P. Santos | 2016-01-09 | 1 | -1/+0 |
| | | | | | Not need, legacy from libuv. The RunLoop keep the main loop running until is explicitly no longer needed. |