Line data Source code
1 : import 'package:flutter_chrome_cast/common/image.dart';
2 : import 'package:flutter_chrome_cast/entities/media_metadata/movie_media_metadata.dart';
3 : import 'package:flutter_chrome_cast/models/android/extensions/date_time.dart';
4 :
5 : /// Android-specific implementation of movie media metadata.
6 : class GoogleCastMovieMediaMetadataAndroid extends GoogleCastMovieMediaMetadata {
7 : /// Creates an Android movie media metadata instance.
8 0 : GoogleCastMovieMediaMetadataAndroid({
9 : super.images,
10 : super.releaseDate,
11 : super.studio,
12 : super.subtitle,
13 : super.title,
14 : });
15 :
16 : /// Creates a movie media metadata instance from a map.
17 0 : factory GoogleCastMovieMediaMetadataAndroid.fromMap(
18 : Map<String, dynamic> map) {
19 0 : return GoogleCastMovieMediaMetadataAndroid(
20 0 : title: map['title'],
21 0 : subtitle: map['subtitle'],
22 0 : studio: map['studio'],
23 0 : images: map['images'] != null
24 0 : ? List<GoogleCastImage>.from(
25 0 : map['images']?.map((x) => GoogleCastImage.fromMap(x)))
26 : : null,
27 0 : releaseDate: map['releaseDate'] != null
28 0 : ? DateTimeString.tryParse(map['releaseDate'] ?? '')
29 : : null,
30 : );
31 : }
32 : }
|