The Webfeed Flutter package for Appeto SDK.
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

57 рядки
1.6 KiB

  1. import 'package:xml/xml.dart';
  2. class Content {
  3. final String? url;
  4. final String? type;
  5. final int? fileSize;
  6. final String? medium;
  7. final bool? isDefault;
  8. final String? expression;
  9. final int? bitrate;
  10. final double? framerate;
  11. final double? samplingrate;
  12. final int? channels;
  13. final int? duration;
  14. final int? height;
  15. final int? width;
  16. final String? lang;
  17. Content({
  18. this.url,
  19. this.type,
  20. this.fileSize,
  21. this.medium,
  22. this.isDefault,
  23. this.expression,
  24. this.bitrate,
  25. this.framerate,
  26. this.samplingrate,
  27. this.channels,
  28. this.duration,
  29. this.height,
  30. this.width,
  31. this.lang,
  32. });
  33. factory Content.parse(XmlElement element) {
  34. return Content(
  35. url: element.getAttribute('url'),
  36. type: element.getAttribute('type'),
  37. fileSize: int.tryParse(element.getAttribute('fileSize') ?? '0'),
  38. medium: element.getAttribute('medium'),
  39. isDefault: element.getAttribute('isDefault') == 'true',
  40. expression: element.getAttribute('expression'),
  41. bitrate: int.tryParse(element.getAttribute('bitrate') ?? '0'),
  42. framerate: double.tryParse(element.getAttribute('framerate') ?? '0'),
  43. samplingrate: double.tryParse(
  44. element.getAttribute('samplingrate') ?? '0',
  45. ),
  46. channels: int.tryParse(element.getAttribute('channels') ?? '0'),
  47. duration: int.tryParse(element.getAttribute('duration') ?? '0'),
  48. height: int.tryParse(element.getAttribute('height') ?? '0'),
  49. width: int.tryParse(element.getAttribute('width') ?? '0'),
  50. lang: element.getAttribute('lang'),
  51. );
  52. }
  53. }