Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
SDK
/
exoplayer
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
0572d190
authored
Jun 23, 2017
by
Alex Birkett
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Make OkHttpDataSource userAgent parameter optional
parent
2da22e9e
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
19 additions
and
11 deletions
extensions/okhttp/src/main/java/com/google/android/exoplayer2/ext/okhttp/OkHttpDataSource.java
extensions/okhttp/src/main/java/com/google/android/exoplayer2/ext/okhttp/OkHttpDataSourceFactory.java
extensions/okhttp/src/main/java/com/google/android/exoplayer2/ext/okhttp/OkHttpDataSource.java
View file @
0572d190
...
...
@@ -16,6 +16,8 @@
package
com
.
google
.
android
.
exoplayer2
.
ext
.
okhttp
;
import
android.net.Uri
;
import
android.support.annotation.Nullable
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.upstream.DataSourceException
;
import
com.google.android.exoplayer2.upstream.DataSpec
;
...
...
@@ -67,11 +69,11 @@ public class OkHttpDataSource implements HttpDataSource {
/**
* @param callFactory A {@link Call.Factory} (typically an {@link okhttp3.OkHttpClient}) for use
* by the source.
* @param userAgent
The
User-Agent string that should be used.
* @param userAgent
An optional
User-Agent string that should be used.
* @param contentTypePredicate An optional {@link Predicate}. If a content type is rejected by the
* predicate then a InvalidContentTypeException} is thrown from {@link #open(DataSpec)}.
*/
public
OkHttpDataSource
(
Call
.
Factory
callFactory
,
String
userAgent
,
public
OkHttpDataSource
(
Call
.
Factory
callFactory
,
@Nullable
String
userAgent
,
Predicate
<
String
>
contentTypePredicate
)
{
this
(
callFactory
,
userAgent
,
contentTypePredicate
,
null
);
}
...
...
@@ -79,13 +81,13 @@ public class OkHttpDataSource implements HttpDataSource {
/**
* @param callFactory A {@link Call.Factory} (typically an {@link okhttp3.OkHttpClient}) for use
* by the source.
* @param userAgent
The
User-Agent string that should be used.
* @param userAgent
An optional
User-Agent string that should be used.
* @param contentTypePredicate An optional {@link Predicate}. If a content type is rejected by the
* predicate then a {@link InvalidContentTypeException} is thrown from
* {@link #open(DataSpec)}.
* @param listener An optional listener.
*/
public
OkHttpDataSource
(
Call
.
Factory
callFactory
,
String
userAgent
,
public
OkHttpDataSource
(
Call
.
Factory
callFactory
,
@Nullable
String
userAgent
,
Predicate
<
String
>
contentTypePredicate
,
TransferListener
<?
super
OkHttpDataSource
>
listener
)
{
this
(
callFactory
,
userAgent
,
contentTypePredicate
,
listener
,
null
,
null
);
}
...
...
@@ -93,7 +95,7 @@ public class OkHttpDataSource implements HttpDataSource {
/**
* @param callFactory A {@link Call.Factory} (typically an {@link okhttp3.OkHttpClient}) for use
* by the source.
* @param userAgent
The
User-Agent string that should be used.
* @param userAgent
An optional
User-Agent string that should be used.
* @param contentTypePredicate An optional {@link Predicate}. If a content type is rejected by the
* predicate then a {@link InvalidContentTypeException} is thrown from
* {@link #open(DataSpec)}.
...
...
@@ -102,11 +104,11 @@ public class OkHttpDataSource implements HttpDataSource {
* @param defaultRequestProperties The optional default {@link RequestProperties} to be sent to
* the server as HTTP headers on every request.
*/
public
OkHttpDataSource
(
Call
.
Factory
callFactory
,
String
userAgent
,
public
OkHttpDataSource
(
Call
.
Factory
callFactory
,
@Nullable
String
userAgent
,
Predicate
<
String
>
contentTypePredicate
,
TransferListener
<?
super
OkHttpDataSource
>
listener
,
CacheControl
cacheControl
,
RequestProperties
defaultRequestProperties
)
{
this
.
callFactory
=
Assertions
.
checkNotNull
(
callFactory
);
this
.
userAgent
=
Assertions
.
checkNotEmpty
(
userAgent
)
;
this
.
userAgent
=
userAgent
;
this
.
contentTypePredicate
=
contentTypePredicate
;
this
.
listener
=
listener
;
this
.
cacheControl
=
cacheControl
;
...
...
@@ -280,7 +282,10 @@ public class OkHttpDataSource implements HttpDataSource {
}
builder
.
addHeader
(
"Range"
,
rangeRequest
);
}
if
(
userAgent
!=
null
)
{
builder
.
addHeader
(
"User-Agent"
,
userAgent
);
}
if
(!
allowGzip
)
{
builder
.
addHeader
(
"Accept-Encoding"
,
"identity"
);
}
...
...
extensions/okhttp/src/main/java/com/google/android/exoplayer2/ext/okhttp/OkHttpDataSourceFactory.java
View file @
0572d190
...
...
@@ -15,6 +15,8 @@
*/
package
com
.
google
.
android
.
exoplayer2
.
ext
.
okhttp
;
import
android.support.annotation.Nullable
;
import
com.google.android.exoplayer2.upstream.DataSource
;
import
com.google.android.exoplayer2.upstream.HttpDataSource
;
import
com.google.android.exoplayer2.upstream.HttpDataSource.BaseFactory
;
...
...
@@ -36,10 +38,10 @@ public final class OkHttpDataSourceFactory extends BaseFactory {
/**
* @param callFactory A {@link Call.Factory} (typically an {@link okhttp3.OkHttpClient}) for use
* by the sources created by the factory.
* @param userAgent
The
User-Agent string that should be used.
* @param userAgent
An optional
User-Agent string that should be used.
* @param listener An optional listener.
*/
public
OkHttpDataSourceFactory
(
Call
.
Factory
callFactory
,
String
userAgent
,
public
OkHttpDataSourceFactory
(
Call
.
Factory
callFactory
,
@Nullable
String
userAgent
,
TransferListener
<?
super
DataSource
>
listener
)
{
this
(
callFactory
,
userAgent
,
listener
,
null
);
}
...
...
@@ -47,11 +49,12 @@ public final class OkHttpDataSourceFactory extends BaseFactory {
/**
* @param callFactory A {@link Call.Factory} (typically an {@link okhttp3.OkHttpClient}) for use
* by the sources created by the factory.
* @param userAgent
The
User-Agent string that should be used.
* @param userAgent
An optional
User-Agent string that should be used.
* @param listener An optional listener.
* @param cacheControl An optional {@link CacheControl} for setting the Cache-Control header.
*/
public
OkHttpDataSourceFactory
(
Call
.
Factory
callFactory
,
String
userAgent
,
public
OkHttpDataSourceFactory
(
Call
.
Factory
callFactory
,
@Nullable
String
userAgent
,
TransferListener
<?
super
DataSource
>
listener
,
CacheControl
cacheControl
)
{
this
.
callFactory
=
callFactory
;
this
.
userAgent
=
userAgent
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment