Line data Source code
1 : import 'package:flutter_chrome_cast/enums/media_metadata_type.dart';
2 :
3 : import 'cast_media_metadata.dart';
4 :
5 : ///Describes a television show episode media artifact.
6 : class GoogleCastTvShowMediaMetadata extends GoogleCastMediaMetadata {
7 : /// Creates a TV show media metadata instance.
8 0 : GoogleCastTvShowMediaMetadata({
9 : this.seriesTitle,
10 : this.season,
11 : this.episode,
12 : super.images,
13 : this.originalAirDate,
14 0 : }) : super(metadataType: GoogleCastMediaMetadataType.tvShowMediaMetadata);
15 :
16 : ///optional Descriptive title of the t.v. series.
17 : ///Player can independently retrieve title
18 : ///using content_id or it can be given
19 : /// by the sender in the Load message
20 : final String? seriesTitle;
21 :
22 : /// optional Descriptive subtitle of the t.v.
23 : /// episode. Player can independently retrieve
24 : /// title using content_id or it can be
25 : /// given by the sender in the Load message
26 :
27 : ///optional Season number of the t.v. show
28 : final int? season;
29 :
30 : ///optional Episode number (in the season) of the t.v. show
31 : final int? episode;
32 :
33 : ///optional Array of URL(s) to an image associated
34 : /// with the content. The initial value of the
35 : /// field can be provided by the sender in
36 : /// the Load message. Should provide recommended sizes
37 :
38 : ///optional ISO 8601 date and time
39 : /// this episode was released. Player
40 : /// can independently retrieve originalAirDate
41 : /// using content_id or it can be given
42 : /// by the sender in the Load message
43 : final DateTime? originalAirDate;
44 :
45 0 : @override
46 : Map<String, dynamic> toMap() {
47 0 : return {
48 0 : 'metadataType': metadataType.value,
49 0 : 'seriesTitle': seriesTitle,
50 0 : 'season': season,
51 0 : 'episode': episode,
52 0 : 'images': images?.map((x) => x.toMap()).toList(),
53 0 : 'creationDate': originalAirDate?.millisecondsSinceEpoch,
54 : };
55 : }
56 : }
|