podcast_search library Null safety
Classes
- Attribute
- A class that provides a list of valid attributes for podcasts.
- Chapters
- Country
- A class that provides a list of the countries supported by the iTunes API.
- Episode
- A class representing an individual episode.
- Genre
- A class that represents the genre(s) the podcast is related to.
- Item
- A class that represents an individual Podcast within the search results. Not all properties may contain values for all search providers.
- ITunesProvider
- Pass an instance of this class to use iTunes as the podcast search engine.
- Language
- A class that provides a list of the languages the iTunes API currently supports.
- Podcast
- This class represents a podcast and its episodes. The Podcast is instantiated with a feed URL which is then parsed and the episode list generated.
- PodcastIndexProvider
- Pass an instance of this class to use PodcastIndex as the podcast search engine.
- Search
- This class handles the searching. Taking the base URL we build any parameters that have been added before making a call to iTunes. The results are unpacked and stored as Item instances and wrapped in a SearchResult.
- SearchProvider
- Defines a list of classes that represent the search engines we can use to find Podcasts. Currently, this is iTunes and PodcastIndex.
- SearchResult
- This class is a container for our search results or for any error message received whilst attempting to fetch the podcast data.
Constants
-
countTagMap
→ const Map<
ResultType, String> -
{ResultType.itunes : 'resultCount', ResultType.podcastIndex : 'count'}
-
startTagMap
→ const Map<
ResultType, String> -
{ResultType.itunes : 'results', ResultType.podcastIndex : 'feeds'}
Enums
Exceptions / Errors
- PodcastCancelledException
- Thrown if the search is cancelled.
- PodcastFailedException
- Thrown if we get an invalid response error.
- PodcastTimeoutException
- Thrown if the connection times out, or we timeout waiting to receive the data.