# BasePreloadManager.BuilderBase

# BasePreloadManager.BuilderBase

Artifact:[androidx.media3:media3-exoplayer](https://developer.android.com/jetpack/androidx/releases/media3)  
[View Source](https://cs.android.com/search?q=file:androidx/media3/exoplayer/source/preload/BasePreloadManager.java+class:androidx.media3.exoplayer.source.preload.BasePreloadManager.BuilderBase)

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/androidx/media3/exoplayer/source/preload/BasePreloadManager.BuilderBase "View this page in Java")

<br />

```
protected abstract class BasePreloadManager.BuilderBase<T, PreloadStatusT>
```

<br />

Known direct subclasses  
[DefaultPreloadManager.Builder](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/DefaultPreloadManager.Builder)  

|--------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [DefaultPreloadManager.Builder](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/DefaultPreloadManager.Builder) | A builder for[DefaultPreloadManager](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/DefaultPreloadManager)instances. |

*** ** * ** ***

A base class of the builder of the concrete extension of[BasePreloadManager](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/BasePreloadManager).

## Summary

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               ### Public constructors                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [BuilderBase](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/BasePreloadManager.BuilderBase#BuilderBase(androidx.media3.exoplayer.source.preload.RankingDataComparator<T>,androidx.media3.exoplayer.source.preload.TargetPreloadStatusControl<T,PreloadStatusT>,com.google.common.base.Supplier<androidx.media3.exoplayer.source.MediaSource.Factory>))`(` ` rankingDataComparator: `[RankingDataComparator](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/RankingDataComparator)`<T!>!,` ` targetPreloadStatusControl: `[TargetPreloadStatusControl](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/TargetPreloadStatusControl)`<T!, PreloadStatusT!>!,` ` mediaSourceFactorySupplier: `[Supplier](https://guava.dev/releases/18.0/api/docs/com/google/common/base/Supplier.html)`<`[MediaSource.Factory](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/MediaSource.Factory)`!>!` `)` |

|                                                                        ### Public functions                                                                         |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|
| `abstract `[BasePreloadManager](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/BasePreloadManager)`<T!, PreloadStatusT!>!` | [build](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/BasePreloadManager.BuilderBase#build())`()` |

|                                                                                                  ### Protected properties                                                                                                   |
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Supplier](https://guava.dev/releases/18.0/api/docs/com/google/common/base/Supplier.html)`<`[MediaSource.Factory](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/MediaSource.Factory)`!>!` | [mediaSourceFactorySupplier](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/BasePreloadManager.BuilderBase#mediaSourceFactorySupplier()) |
| [RankingDataComparator](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/RankingDataComparator)`<T!>!`                                                                               | [rankingDataComparator](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/BasePreloadManager.BuilderBase#rankingDataComparator())           |
| [TargetPreloadStatusControl](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/TargetPreloadStatusControl)`<T!, PreloadStatusT!>!`                                                    | [targetPreloadStatusControl](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/preload/BasePreloadManager.BuilderBase#targetPreloadStatusControl()) |

## Public constructors

### BuilderBase

```
BuilderBase(
    rankingDataComparator: RankingDataComparator<T!>!,
    targetPreloadStatusControl: TargetPreloadStatusControl<T!, PreloadStatusT!>!,
    mediaSourceFactorySupplier: Supplier<MediaSource.Factory!>!
)
```  

## Public functions

### build

```
abstract fun build(): BasePreloadManager<T!, PreloadStatusT!>!
```  

## Protected properties

### mediaSourceFactorySupplier

```
protected val mediaSourceFactorySupplier: Supplier<MediaSource.Factory!>!
```  

### rankingDataComparator

```
protected val rankingDataComparator: RankingDataComparator<T!>!
```  

### targetPreloadStatusControl

```
protected val targetPreloadStatusControl: TargetPreloadStatusControl<T!, PreloadStatusT!>!
```