mirror of
https://github.com/androidx/media.git
synced 2025-05-07 23:50:44 +08:00
Add HttpDataSource.getResponseCode to provide the status code associated with the most recent HTTP response.
PiperOrigin-RevId: 266218104
This commit is contained in:
parent
2451211294
commit
f5c1e8b5e3
@ -46,6 +46,8 @@
|
||||
postroll ad ([#6314](https://github.com/google/ExoPlayer/issues/6314)).
|
||||
* Fix audio selection issue where languages are compared by bit rate
|
||||
([#6335](https://github.com/google/ExoPlayer/issues/6335)).
|
||||
* Add `HttpDataSource.getResponseCode` to provide the status code associated
|
||||
with the most recent HTTP response.
|
||||
|
||||
### 2.10.4 ###
|
||||
|
||||
|
@ -392,6 +392,13 @@ public class CronetDataSource extends BaseDataSource implements HttpDataSource {
|
||||
requestProperties.clear();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getResponseCode() {
|
||||
return responseInfo == null || responseInfo.getHttpStatusCode() <= 0
|
||||
? -1
|
||||
: responseInfo.getHttpStatusCode();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, List<String>> getResponseHeaders() {
|
||||
return responseInfo == null ? Collections.emptyMap() : responseInfo.getAllHeaders();
|
||||
|
@ -172,6 +172,11 @@ public class OkHttpDataSource extends BaseDataSource implements HttpDataSource {
|
||||
return response == null ? null : Uri.parse(response.request().url().toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getResponseCode() {
|
||||
return response == null ? -1 : response.code();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, List<String>> getResponseHeaders() {
|
||||
return response == null ? Collections.emptyMap() : response.headers().toMultimap();
|
||||
|
@ -83,6 +83,7 @@ public class DefaultHttpDataSource extends BaseDataSource implements HttpDataSou
|
||||
@Nullable private HttpURLConnection connection;
|
||||
@Nullable private InputStream inputStream;
|
||||
private boolean opened;
|
||||
private int responseCode;
|
||||
|
||||
private long bytesToSkip;
|
||||
private long bytesToRead;
|
||||
@ -234,6 +235,11 @@ public class DefaultHttpDataSource extends BaseDataSource implements HttpDataSou
|
||||
return connection == null ? null : Uri.parse(connection.getURL().toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getResponseCode() {
|
||||
return connection == null || responseCode <= 0 ? -1 : responseCode;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, List<String>> getResponseHeaders() {
|
||||
return connection == null ? Collections.emptyMap() : connection.getHeaderFields();
|
||||
@ -270,7 +276,6 @@ public class DefaultHttpDataSource extends BaseDataSource implements HttpDataSou
|
||||
dataSpec, HttpDataSourceException.TYPE_OPEN);
|
||||
}
|
||||
|
||||
int responseCode;
|
||||
String responseMessage;
|
||||
try {
|
||||
responseCode = connection.getResponseCode();
|
||||
|
@ -357,6 +357,12 @@ public interface HttpDataSource extends DataSource {
|
||||
*/
|
||||
void clearAllRequestProperties();
|
||||
|
||||
/**
|
||||
* When the source is open, returns the HTTP response status code associated with the last {@link
|
||||
* #open} call. Otherwise, returns a negative value.
|
||||
*/
|
||||
int getResponseCode();
|
||||
|
||||
@Override
|
||||
Map<String, List<String>> getResponseHeaders();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user