Chromium Code Reviews| Index: components/cronet/android/api/src/org/chromium/net/CronetEngine.java |
| diff --git a/components/cronet/android/api/src/org/chromium/net/CronetEngine.java b/components/cronet/android/api/src/org/chromium/net/CronetEngine.java |
| index a07ae3cc9248805605176b6d23c92ecf1ac82bdf..2e2abe3e68a4105190b265f67cd0d3668c1d09bf 100644 |
| --- a/components/cronet/android/api/src/org/chromium/net/CronetEngine.java |
| +++ b/components/cronet/android/api/src/org/chromium/net/CronetEngine.java |
| @@ -104,6 +104,7 @@ public abstract class CronetEngine { |
| private LibraryLoader mLibraryLoader; |
| private String mLibraryName; |
| private boolean mQuicEnabled; |
| + private String mQuicUserAgentId; |
| private boolean mHttp2Enabled; |
| private boolean mSdchEnabled; |
| private String mDataReductionProxyKey; |
| @@ -131,8 +132,8 @@ public abstract class CronetEngine { |
| } |
| /** |
| - * Constructs a User-Agent string including Cronet version, and |
| - * application name and version. |
| + * Constructs a User-Agent string including application name and version, |
| + * system build version, model and id, and Cronet version. |
| * |
| * @return User-Agent string. |
| */ |
| @@ -254,6 +255,29 @@ public abstract class CronetEngine { |
| } |
| /** |
| + * Constructs default QUIC User Agent Id string including application name |
| + * and Cronet version. |
| + * |
| + * @return QUIC User Agent ID string. |
| + */ |
| + public String getDefaultQuicUserAgentId() { |
|
xunjieli
2016/02/04 14:00:06
I feel that since we are in experimental stage her
|
| + return UserAgent.getQuicUserAgentIdFrom(mContext); |
| + } |
| + |
| + /** |
| + * Overrides the UIC User Agent Id for all requests. |
| + * @return the builder to facilitate chaining. |
| + */ |
| + public Builder setQuicUserAgentId(String quicUserAgentId) { |
| + mQuicUserAgentId = quicUserAgentId; |
| + return this; |
| + } |
| + |
| + String getQuicUserAgentId() { |
| + return mQuicUserAgentId; |
| + } |
| + |
| + /** |
| * Sets whether <a href="https://tools.ietf.org/html/rfc7540">HTTP/2</a> |
| * protocol is enabled. Defaults to enabled. |
| * @param value {@code true} to enable HTTP/2, {@code false} to disable. |
| @@ -911,6 +935,9 @@ public abstract class CronetEngine { |
| if (builder.getUserAgent() == null) { |
| builder.setUserAgent(builder.getDefaultUserAgent()); |
| } |
| + if (builder.quicEnabled() && builder.getQuicUserAgentId() == null) { |
| + builder.setQuicUserAgentId(builder.getQuicUserAgentId()); |
| + } |
| if (!builder.legacyMode()) { |
| cronetEngine = createCronetEngine(builder); |
| } |