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.FactoryforCacheDataSinkinstances.
-
-
Constructor Summary
Constructors Constructor Description Factory()Creates an instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DataSinkcreateDataSink()Creates aDataSinkinstance.CacheDataSink.FactorysetBufferSize(int bufferSize)Sets the size of an in-memory buffer used when writing to a cache file.CacheDataSink.FactorysetCache(Cache cache)Sets the cache to which data will be written.CacheDataSink.FactorysetFragmentSize(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_UNSETthen 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_UNSETto 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.FactoryCreates aDataSinkinstance.- Specified by:
createDataSinkin interfaceDataSink.Factory
-
-