Package com.castlabs.android.network
Class DefaultDataSourceFactory
java.lang.Object
com.castlabs.android.network.DefaultDataSourceFactory
- All Implemented Interfaces:
DataSourceFactory,com.google.android.exoplayer2.upstream.DataSource.Factory
The default implementation of the
DataSourceFactory.- Since:
- 3.0.0
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultDataSourceFactory(Context context) Creates a new instance ofDefaultDataSourceFactory.DefaultDataSourceFactory(Context context, com.google.android.exoplayer2.upstream.TransferListener transferListener) Creates a new instance ofDefaultDataSourceFactory.DefaultDataSourceFactory(Context context, com.google.android.exoplayer2.upstream.TransferListener transferListener, HttpListener httpListener, PlayerController playerController) Creates a new instance ofDefaultDataSourceFactory. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddHeaderParameter(String key, String value) Adds a header parameter that will be added to each HTTP connection header that is generated with aDataSourcecreated by this factory.voidaddQueryParameter(String key, String value) Adds a query parameter that will be appended to each HTTP URL.voidRemoves all header parameters added previously withDataSourceFactory.addHeaderParameter(String, String).voidRemoves all query parameters added previously withDataSourceFactory.addQueryParameter(String, String)com.google.android.exoplayer2.upstream.DataSourcecom.google.android.exoplayer2.upstream.DataSourcecreateDataSource(int requestType) Creates a data source for the given request typeReturns a non-null map of all registered header parameters.Returns a non-null map of all registered query parameters.
-
Constructor Details
-
DefaultDataSourceFactory
Creates a new instance ofDefaultDataSourceFactory.- Parameters:
context- The context.
-
DefaultDataSourceFactory
public DefaultDataSourceFactory(@NonNull Context context, @Nullable com.google.android.exoplayer2.upstream.TransferListener transferListener) Creates a new instance ofDefaultDataSourceFactory.- Parameters:
context- The context.transferListener- The transfer listener.
-
DefaultDataSourceFactory
public DefaultDataSourceFactory(@NonNull Context context, @Nullable com.google.android.exoplayer2.upstream.TransferListener transferListener, @Nullable HttpListener httpListener, @Nullable PlayerController playerController) Creates a new instance ofDefaultDataSourceFactory.- Parameters:
context- The context.transferListener- The transfer listener.httpListener- The HTTP listener.playerController- The player controller.
-
-
Method Details
-
createDataSource
@NonNull public com.google.android.exoplayer2.upstream.DataSource createDataSource()- Specified by:
createDataSourcein interfacecom.google.android.exoplayer2.upstream.DataSource.Factory
-
createDataSource
public com.google.android.exoplayer2.upstream.DataSource createDataSource(int requestType) Description copied from interface:DataSourceFactoryCreates a data source for the given request type- Specified by:
createDataSourcein interfaceDataSourceFactory- Parameters:
requestType- The request type- Returns:
- dataSource the data source
-
addHeaderParameter
Description copied from interface:DataSourceFactoryAdds a header parameter that will be added to each HTTP connection header that is generated with aDataSourcecreated by this factory. Note that you will need to call this before a call toDataSource.Factory.createDataSource()in order to successfully add the parameter.- Specified by:
addHeaderParameterin interfaceDataSourceFactory- Parameters:
key- the keyvalue- the value or null to remove any previously added endtry with the given key
-
clearHeaderParameters
public void clearHeaderParameters()Description copied from interface:DataSourceFactoryRemoves all header parameters added previously withDataSourceFactory.addHeaderParameter(String, String).- Specified by:
clearHeaderParametersin interfaceDataSourceFactory
-
addQueryParameter
Description copied from interface:DataSourceFactoryAdds a query parameter that will be appended to each HTTP URL. Note that you will need to call this before a call toDataSource.Factory.createDataSource()in order to successfully add the parameter.- Specified by:
addQueryParameterin interfaceDataSourceFactory- Parameters:
key- the keyvalue- the value or null to remove any previously added entry with the given key
-
clearQueryParameters
public void clearQueryParameters()Description copied from interface:DataSourceFactoryRemoves all query parameters added previously withDataSourceFactory.addQueryParameter(String, String)- Specified by:
clearQueryParametersin interfaceDataSourceFactory
-
getHeaderParameter
Description copied from interface:DataSourceFactoryReturns a non-null map of all registered header parameters.- Specified by:
getHeaderParameterin interfaceDataSourceFactory- Returns:
- A non-null map of all registered header parameter
-
getQueryParameter
Description copied from interface:DataSourceFactoryReturns a non-null map of all registered query parameters.- Specified by:
getQueryParameterin interfaceDataSourceFactory- Returns:
- A non-null map of all registered query parameter
-