Class CacheDataSink.Factory
- java.lang.Object
-
- com.google.android.exoplayer2.upstream.cache.CacheDataSink.Factory
-
- All Implemented Interfaces:
DataSink.Factory
- Enclosing class:
- CacheDataSink
public static final class CacheDataSink.Factory extends Object implements DataSink.Factory
DataSink.Factory
forCacheDataSink
instances.
-
-
Constructor Summary
Constructors Constructor Description Factory()
Creates an instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DataSink
createDataSink()
Creates aDataSink
instance.CacheDataSink.Factory
setBufferSize(int bufferSize)
Sets the size of an in-memory buffer used when writing to a cache file.CacheDataSink.Factory
setCache(Cache cache)
Sets the cache to which data will be written.CacheDataSink.Factory
setFragmentSize(long fragmentSize)
Sets the cache file fragment size.
-
-
-
Method Detail
-
setCache
@CanIgnoreReturnValue public CacheDataSink.Factory setCache(Cache cache)
Sets the cache to which data will be written.Must be called before the factory is used.
- Parameters:
cache
- The cache to which data will be written.- Returns:
- This factory.
-
setFragmentSize
@CanIgnoreReturnValue public CacheDataSink.Factory setFragmentSize(long fragmentSize)
Sets the cache file fragment size. For requests that should be fragmented into multiple cache files, this is the maximum size of a cache file in bytes. If set toC.LENGTH_UNSET
then no fragmentation will occur. Using a small value allows for finer-grained cache eviction policies, at the cost of increased overhead both on the cache implementation and the file system. Values under(2 * 1024 * 1024)
are not recommended.The default value is
CacheDataSink.DEFAULT_FRAGMENT_SIZE
.- Parameters:
fragmentSize
- The fragment size in bytes, orC.LENGTH_UNSET
to disable fragmentation.- Returns:
- This factory.
-
setBufferSize
@CanIgnoreReturnValue public CacheDataSink.Factory setBufferSize(int bufferSize)
Sets the size of an in-memory buffer used when writing to a cache file. A zero or negative value disables buffering.The default value is
CacheDataSink.DEFAULT_BUFFER_SIZE
.- Parameters:
bufferSize
- The buffer size in bytes.- Returns:
- This factory.
-
createDataSink
public DataSink createDataSink()
Description copied from interface:DataSink.Factory
Creates aDataSink
instance.- Specified by:
createDataSink
in interfaceDataSink.Factory
-
-