# PodcastEpisodeEntity.Builder

# PodcastEpisodeEntity.Builder

*** ** * ** ***

[Kotlin](https://developer.android.com/reference/kotlin/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder "View this page in Kotlin")\|Java  

<br />

```
public final class PodcastEpisodeEntity.Builder
```

<br />

*** ** * ** ***

Builder class for[PodcastEpisodeEntity](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity).

## Summary

| ### Public fields |
|-------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|
| `int`             | [listenNextType](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#listenNextType()) |

|                                                         ### Public constructors                                                         |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| [Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#Builder())`()` |

|                                                               ### Public methods                                                               |
|------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [addGenre](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#addGenre(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` genre)` Adds the genre of the podcast episode.                                                                                                                                                           |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [addGenres](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#addGenres(java.util.List<java.lang.String>))`(`[List](https://developer.android.com/reference/java/util/List.html)`<`[String](https://developer.android.com/reference/java/lang/String.html)`> genre)` Adds the list of genres of the podcast episode.                                                         |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [addHost](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#addHost(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` host)` Adds the host of the podcast episode.                                                                                                                                                               |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [addHosts](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#addHosts(java.util.List<java.lang.String>))`(`[List](https://developer.android.com/reference/java/util/List.html)`<`[String](https://developer.android.com/reference/java/lang/String.html)`> hosts)` Adds the list of hosts of the podcast episode.                                                            |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [addPosterImage](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#addPosterImage(com.google.android.engage.common.datamodel.Image))`(`[Image](https://developer.android.com/reference/com/google/android/engage/common/datamodel/Image)` image)` Add a poster image of the entity.                                                                                          |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [addPosterImages](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#addPosterImages(java.util.List<com.google.android.engage.common.datamodel.Image>))`(`[List](https://developer.android.com/reference/java/util/List.html)`<`[Image](https://developer.android.com/reference/com/google/android/engage/common/datamodel/Image)`> images)` Add poster images of the entity. |
| [PodcastEpisodeEntity](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity)                 | [build](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#build())`()`                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setDescription](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setDescription(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` description)` Adds the description of the audio entity.                                                                                                                                      |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setDownloadedOnDevice](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setDownloadedOnDevice(boolean))`(boolean downloadedOnDevice)` Sets a boolean value to indicate if podcast episode is downloaded on device or not.                                                                                                                                                  |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setDurationMillis](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setDurationMillis(long))`(long durationMillis)` Sets the duration of the podcast episode in milliseconds.                                                                                                                                                                                              |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setEntityId](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setEntityId(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` entityId)` Sets content id of the entity.                                                                                                                                                          |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setEpisodeIndex](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setEpisodeIndex(int))`(int episodeIndex)` Sets the index of episode in the podcast series.                                                                                                                                                                                                               |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setExplicitContent](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setExplicitContent(boolean))`(boolean explicitContent)` Sets a boolean value to indicate if podcast episode has explicit content or not.                                                                                                                                                              |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setInfoPageUri](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setInfoPageUri(android.net.Uri))`(`[Uri](https://developer.android.com/reference/android/net/Uri.html)` infoPageUri)` Sets the info page Uri associated with the podcast episode.                                                                                                                         |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setLastEngagementTimeMillis](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setLastEngagementTimeMillis(long))`(long lastEngagementTimeMillis)` Sets last engagement time of the entity, in milliseconds since Epoch.                                                                                                                                                    |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setListenNextType](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setListenNextType(int))`(int listenNextType)` Sets[ListenNextType](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/ListenNextType)for the audio entity                                                                                                               |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setName](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setName(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` name)` Sets the name of the entity.                                                                                                                                                                        |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setPlayBackUri](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setPlayBackUri(android.net.Uri))`(`[Uri](https://developer.android.com/reference/android/net/Uri.html)` playBackUri)` Sets the playback Uri associated with the podcast episode.                                                                                                                          |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setPodcastSeriesTitle](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setPodcastSeriesTitle(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` podcastSeriesTitle)` Sets the name of podcast series to which the episode belongs to.                                                                                          |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setProductionName](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setProductionName(java.lang.String))`(`[String](https://developer.android.com/reference/java/lang/String.html)` productionName)` Sets the name of the production of the podcast episode.                                                                                                               |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setProgressPercentComplete](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setProgressPercentComplete(int))`(int progressPercentComplete)` Sets progress percent complete of the audio entity.                                                                                                                                                                           |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setPublishDateEpochMillis](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setPublishDateEpochMillis(long))`(long publishDateEpochMillis)` Sets the publish date of the podcast episode in epoch milliseconds.                                                                                                                                                            |
| [PodcastEpisodeEntity.Builder](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder) | `@`[CanIgnoreReturnValue](https://errorprone.info/api/latest/com/google/errorprone/annotations/CanIgnoreReturnValue.html) [setVideoPodcast](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/PodcastEpisodeEntity.Builder#setVideoPodcast(boolean))`(boolean videoPodcast)` Sets a boolean value to indicate if podcast episode has video content or not.                                                                                                                                                                          |

## Public fields

### listenNextType

```
public int listenNextType
```  

## Public constructors

### Builder

```
public Builder()
```  

## Public methods

### addGenre

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder addGenre(String genre)
```

Adds the genre of the podcast episode.

Optional.  

### addGenres

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder addGenres(List<String> genre)
```

Adds the list of genres of the podcast episode.

Optional.  

### addHost

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder addHost(String host)
```

Adds the host of the podcast episode.

Optional.  

### addHosts

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder addHosts(List<String> hosts)
```

Adds the list of hosts of the podcast episode.

Optional.  

### addPosterImage

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder addPosterImage(Image image)
```

Add a poster image of the entity.

Required.  

### addPosterImages

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder addPosterImages(List<Image> images)
```

Add poster images of the entity.

Required.  

### build

```
public PodcastEpisodeEntity build()
```  

### setDescription

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setDescription(String description)
```

Adds the description of the audio entity.

Optional.  

### setDownloadedOnDevice

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setDownloadedOnDevice(boolean downloadedOnDevice)
```

Sets a boolean value to indicate if podcast episode is downloaded on device or not.

Optional.  

### setDurationMillis

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setDurationMillis(long durationMillis)
```

Sets the duration of the podcast episode in milliseconds.

Optional.  

### setEntityId

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setEntityId(String entityId)
```

Sets content id of the entity.

Optional.  

### setEpisodeIndex

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setEpisodeIndex(int episodeIndex)
```

Sets the index of episode in the podcast series.

Optional.  

### setExplicitContent

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setExplicitContent(boolean explicitContent)
```

Sets a boolean value to indicate if podcast episode has explicit content or not.

Optional.  

### setInfoPageUri

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setInfoPageUri(Uri infoPageUri)
```

Sets the info page Uri associated with the podcast episode.

Optional.  

### setLastEngagementTimeMillis

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setLastEngagementTimeMillis(long lastEngagementTimeMillis)
```

Sets last engagement time of the entity, in milliseconds since Epoch.

Optional.  

### setListenNextType

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setListenNextType(int listenNextType)
```

Sets[ListenNextType](https://developer.android.com/reference/com/google/android/engage/audio/datamodel/ListenNextType)for the audio entity

Optional  

### setName

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setName(String name)
```

Sets the name of the entity.

Required.  

### setPlayBackUri

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setPlayBackUri(Uri playBackUri)
```

Sets the playback Uri associated with the podcast episode.

Required.  

### setPodcastSeriesTitle

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setPodcastSeriesTitle(String podcastSeriesTitle)
```

Sets the name of podcast series to which the episode belongs to.

Required.  

### setProductionName

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setProductionName(String productionName)
```

Sets the name of the production of the podcast episode.

Required.  

### setProgressPercentComplete

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setProgressPercentComplete(int progressPercentComplete)
```

Sets progress percent complete of the audio entity.

Optional  

### setPublishDateEpochMillis

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setPublishDateEpochMillis(long publishDateEpochMillis)
```

Sets the publish date of the podcast episode in epoch milliseconds.

Required.  

### setVideoPodcast

```
@CanIgnoreReturnValue
public PodcastEpisodeEntity.Builder setVideoPodcast(boolean videoPodcast)
```

Sets a boolean value to indicate if podcast episode has video content or not.

Optional.