// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. package org.chromium.net; import android.content.Context; import android.os.Build; import org.chromium.base.annotations.UsedByReflection; import java.nio.channels.WritableByteChannel; import java.util.Map; /** * Network request factory using the native http stack implementation. * @deprecated Use {@link CronetEngine} instead. */ @UsedByReflection("HttpUrlRequestFactory.java") @Deprecated public class ChromiumUrlRequestFactory extends HttpUrlRequestFactory { private ChromiumUrlRequestContext mRequestContext; @UsedByReflection("HttpUrlRequestFactory.java") public ChromiumUrlRequestFactory(Context context, CronetEngine.Builder config) { if (isEnabled()) { String userAgent = config.getUserAgent(); if (userAgent == null) { // Cannot use config.getDefaultUserAgent() as config.mContext may be null. userAgent = new CronetEngine.Builder(context).getDefaultUserAgent(); } mRequestContext = new ChromiumUrlRequestContext(context, userAgent, config); } } @Override public boolean isEnabled() { return Build.VERSION.SDK_INT >= 14; } @Override public String getName() { return "Chromium/" + ChromiumUrlRequestContext.getVersion(); } @Override public ChromiumUrlRequest createRequest(String url, int requestPriority, Map<String, String> headers, HttpUrlRequestListener listener) { return new ChromiumUrlRequest(mRequestContext, url, requestPriority, headers, listener); } @Override public ChromiumUrlRequest createRequest(String url, int requestPriority, Map<String, String> headers, WritableByteChannel channel, HttpUrlRequestListener listener) { return new ChromiumUrlRequest(mRequestContext, url, requestPriority, headers, channel, listener); } @Override public void startNetLogToFile(String fileName, boolean logAll) { mRequestContext.startNetLogToFile(fileName, logAll); } @Override public void stopNetLog() { mRequestContext.stopNetLog(); } public ChromiumUrlRequestContext getRequestContext() { return mRequestContext; } }