#include "components/download/public/common/download_job_factory.h"
#include <memory>
#include "base/memory/weak_ptr.h"
#include "components/download/internal/common/download_job_impl.h"
#include "components/download/internal/common/parallel_download_job.h"
#include "components/download/internal/common/parallel_download_utils.h"
#include "components/download/internal/common/save_package_download_job.h"
#include "components/download/public/common/download_features.h"
#include "components/download/public/common/download_item.h"
#include "net/http/http_connection_info.h"
namespace download {
namespace {
enum class ConnectionType { … };
ConnectionType GetConnectionType(net::HttpConnectionInfo connection_info) { … }
bool IsParallelizableDownload(const DownloadCreateInfo& create_info,
DownloadItem* download_item) { … }
}
std::unique_ptr<DownloadJob> DownloadJobFactory::CreateJob(
DownloadItem* download_item,
DownloadJob::CancelRequestCallback cancel_request_callback,
const DownloadCreateInfo& create_info,
bool is_save_package_download,
URLLoaderFactoryProvider::URLLoaderFactoryProviderPtr
url_loader_factory_provider,
WakeLockProviderBinder wake_lock_provider_binder) { … }
}