1 // Copyright 2017 The Chromium Authors 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 package org.chromium.net.impl; 6 7 import android.content.Context; 8 9 import org.chromium.net.ExperimentalCronetEngine; 10 import org.chromium.net.ICronetEngineBuilder; 11 12 /** Implementation of {@link ICronetEngineBuilder} that builds native Cronet engine. */ 13 public class NativeCronetEngineBuilderImpl extends CronetEngineBuilderImpl { 14 /** 15 * Builder for Native Cronet Engine. 16 * Default config enables SPDY, disables QUIC and HTTP cache. 17 * 18 * @param context Android {@link Context} for engine to use. 19 */ NativeCronetEngineBuilderImpl(Context context)20 public NativeCronetEngineBuilderImpl(Context context) { 21 super(context); 22 } 23 24 @Override build()25 public ExperimentalCronetEngine build() { 26 if (getUserAgent() == null) { 27 setUserAgent(getDefaultUserAgent()); 28 } 29 30 ExperimentalCronetEngine builder = new CronetUrlRequestContext(this); 31 32 // Clear MOCK_CERT_VERIFIER reference if there is any, since 33 // the ownership has been transferred to the engine. 34 mMockCertVerifier = 0; 35 36 return builder; 37 } 38 } 39