Skip to main content

prawn/models/
drm_data.rs

1/*
2 * TIDAL API
3 *
4 * The TIDAL API is a [JSON:API](https://jsonapi.org/)–compliant web API that exposes TIDAL’s music, metadata, and user-related functionality through a consistent, resource-oriented design. More information and API management are available at [developer.tidal.com](developer.tidal.com)
5 *
6 * The version of the OpenAPI document: 1.0.36
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// DrmData : DRM data. Absence implies no DRM.
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16#[serde(default)]
17pub struct DrmData {
18    #[serde(rename = "certificateUrl", skip_serializing_if = "Option::is_none")]
19    pub certificate_url: Option<String>,
20    #[serde(rename = "drmSystem", skip_serializing_if = "Option::is_none")]
21    pub drm_system: Option<DrmSystem>,
22    #[serde(rename = "licenseUrl", skip_serializing_if = "Option::is_none")]
23    pub license_url: Option<String>,
24}
25
26impl DrmData {
27    /// DRM data. Absence implies no DRM.
28    pub fn new() -> DrmData {
29        DrmData {
30            certificate_url: None,
31            drm_system: None,
32            license_url: None,
33        }
34    }
35}
36/// 
37#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
38pub enum DrmSystem {
39    #[serde(rename = "FAIRPLAY")]
40    Fairplay,
41    #[serde(rename = "WIDEVINE")]
42    Widevine,
43}
44
45impl Default for DrmSystem {
46    fn default() -> DrmSystem {
47        Self::Fairplay
48    }
49}
50