getUpcomingAndActiveBroadcast method
Implementation
Future<LiveBroadcastItem> getUpcomingAndActiveBroadcast() async {
final List<LiveBroadcastItem> liveBroadcastList = [];
LiveBroadcastResponse liveBroadcastResponse;
liveBroadcastResponse =
await list(broadcastStatus: 'upcoming', maxResults: 50);
liveBroadcastList.addAll(liveBroadcastResponse.items);
liveBroadcastResponse =
await list(broadcastStatus: 'active', maxResults: 50);
liveBroadcastList.addAll(liveBroadcastResponse.items);
if (liveBroadcastList.isEmpty) {
throw Exception('No existing broadcast found.');
}
liveBroadcastList.sort();
return liveBroadcastList.length == 1
? liveBroadcastList.first
: LiveBroadcastResponse.closestTo(liveBroadcastList);
}