Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(421)

Unified Diff: components/cronet/android/api/src/org/chromium/net/ICronetEngineBuilder.java

Issue 2339223002: Cronet API Refactoring (Closed)
Patch Set: Addressed Paul's comments + rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/cronet/android/api/src/org/chromium/net/ICronetEngineBuilder.java
diff --git a/components/cronet/android/api/src/org/chromium/net/ICronetEngineBuilder.java b/components/cronet/android/api/src/org/chromium/net/ICronetEngineBuilder.java
new file mode 100644
index 0000000000000000000000000000000000000000..f9ef2577f30b4b4a94eca1457b56e3bfec2beb67
--- /dev/null
+++ b/components/cronet/android/api/src/org/chromium/net/ICronetEngineBuilder.java
@@ -0,0 +1,56 @@
+// Copyright 2016 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 java.util.Date;
+import java.util.Set;
+
+/**
+ * Defines methods that the actual implementation of {@link CronetEngine.Builder} has to implement.
+ * {@code CronetEngine.Builder} uses this interface to delegate the calls.
+ * For the documentation of individual methods, please see the identically named methods in
+ * {@link org.chromium.net.CronetEngine.Builder} and
+ * {@link org.chromium.net.ExperimentalCronetEngine.Builder}.
+ *
+ * {@hide internal class}
+ */
+public abstract class ICronetEngineBuilder {
+ // Public API methods.
+ public abstract ICronetEngineBuilder addPublicKeyPins(String hostName, Set<byte[]> pinsSha256,
+ boolean includeSubdomains, Date expirationDate);
+ public abstract ICronetEngineBuilder addQuicHint(String host, int port, int alternatePort);
+ public abstract ICronetEngineBuilder enableDataReductionProxy(String key);
+ public abstract ICronetEngineBuilder enableHttp2(boolean value);
+ public abstract ICronetEngineBuilder enableHttpCache(int cacheMode, long maxSize);
+ public abstract ICronetEngineBuilder enableLegacyMode(boolean value);
+ public abstract ICronetEngineBuilder enablePublicKeyPinningBypassForLocalTrustAnchors(
+ boolean value);
+ public abstract ICronetEngineBuilder enableQuic(boolean value);
+ public abstract ICronetEngineBuilder enableSdch(boolean value);
+ public abstract ICronetEngineBuilder setExperimentalOptions(String options);
+ public abstract ICronetEngineBuilder setLibraryLoader(
+ CronetEngine.Builder.LibraryLoader loader);
+ public abstract ICronetEngineBuilder setStoragePath(String value);
+ public abstract ICronetEngineBuilder setUserAgent(String userAgent);
+ public abstract String getDefaultUserAgent();
+ public abstract CronetEngine build();
pauljensen 2016/10/03 15:22:37 make this return ExperimentalCronetEngine and chan
kapishnikov 2016/10/03 23:49:27 Done.
+
+ // Experimental API methods.
+ //
+ // Note: all experimental API methods should have default implementation. This will allow
+ // removing the experimental methods from the implementation layer without breaking
+ // the client.
+ public ICronetEngineBuilder enableNetworkQualityEstimator(boolean value) {
pauljensen 2016/10/03 15:22:37 insert a new line between the comment and method,
kapishnikov 2016/10/03 23:49:27 Done.
+ return this;
+ }
+
+ public ICronetEngineBuilder setCertVerifierData(String certVerifierData) {
+ return this;
+ }
+
+ public ICronetEngineBuilder setDataReductionProxyOptions(
+ String primaryProxy, String fallbackProxy, String secureProxyCheckUrl) {
+ return this;
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698