novoda / download-manager

A library that handles long-running downloads, handling the network interactions and retrying downloads automatically after failures
Apache License 2.0
483 stars 63 forks source link

DLM-437/HTTP client open API #441

Closed Mecharyry closed 6 years ago

Mecharyry commented 6 years ago

Problem

As per the issue #437 the HTTP client and subsequently the requests we perform are hidden behind package interfaces that a client cannot influence, they cannot create interceptors etc.

Solution

Expose the HttpClient, NetworkRequest and NetworkResponse and allow clients to supply their own implementations through the DownloadManagerBuilder.withCustomHttpClient. All exposed classes have had javadocs added.