Metadata.cs 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385
  1. //------------------------------------------------------------------------------
  2. // <auto-generated>
  3. // This code was generated from a template.
  4. //
  5. // Manual changes to this file may cause unexpected behavior in your application.
  6. // Manual changes to this file will be overwritten if the code is regenerated.
  7. //
  8. // Produced by Entity Framework Visual Editor
  9. // https://github.com/msawczyn/EFDesigner
  10. // </auto-generated>
  11. //------------------------------------------------------------------------------
  12. using System;
  13. using System.Collections.Generic;
  14. using System.Collections.ObjectModel;
  15. using System.ComponentModel;
  16. using System.ComponentModel.DataAnnotations;
  17. using System.ComponentModel.DataAnnotations.Schema;
  18. using System.Linq;
  19. using System.Runtime.CompilerServices;
  20. namespace Jellyfin.Data.Entities
  21. {
  22. public abstract partial class Metadata
  23. {
  24. partial void Init();
  25. /// <summary>
  26. /// Default constructor. Protected due to being abstract.
  27. /// </summary>
  28. protected Metadata()
  29. {
  30. PersonRoles = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.PersonRole>();
  31. Genres = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.Genre>();
  32. Artwork = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.Artwork>();
  33. Ratings = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.Rating>();
  34. Sources = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.MetadataProviderId>();
  35. Init();
  36. }
  37. /// <summary>
  38. /// Public constructor with required data
  39. /// </summary>
  40. /// <param name="title">The title or name of the object</param>
  41. /// <param name="language">ISO-639-3 3-character language codes</param>
  42. protected Metadata(string title, string language, DateTime dateadded, DateTime datemodified)
  43. {
  44. if (string.IsNullOrEmpty(title)) throw new ArgumentNullException(nameof(title));
  45. this.Title = title;
  46. if (string.IsNullOrEmpty(language)) throw new ArgumentNullException(nameof(language));
  47. this.Language = language;
  48. this.PersonRoles = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.PersonRole>();
  49. this.Genres = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.Genre>();
  50. this.Artwork = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.Artwork>();
  51. this.Ratings = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.Rating>();
  52. this.Sources = new System.Collections.Generic.HashSet<global::Jellyfin.Data.Entities.MetadataProviderId>();
  53. Init();
  54. }
  55. /*************************************************************************
  56. * Properties
  57. *************************************************************************/
  58. /// <summary>
  59. /// Backing field for Id
  60. /// </summary>
  61. internal int _Id;
  62. /// <summary>
  63. /// When provided in a partial class, allows value of Id to be changed before setting.
  64. /// </summary>
  65. partial void SetId(int oldValue, ref int newValue);
  66. /// <summary>
  67. /// When provided in a partial class, allows value of Id to be changed before returning.
  68. /// </summary>
  69. partial void GetId(ref int result);
  70. /// <summary>
  71. /// Identity, Indexed, Required
  72. /// </summary>
  73. [Key]
  74. [Required]
  75. public int Id
  76. {
  77. get
  78. {
  79. int value = _Id;
  80. GetId(ref value);
  81. return (_Id = value);
  82. }
  83. protected set
  84. {
  85. int oldValue = _Id;
  86. SetId(oldValue, ref value);
  87. if (oldValue != value)
  88. {
  89. _Id = value;
  90. }
  91. }
  92. }
  93. /// <summary>
  94. /// Backing field for Title
  95. /// </summary>
  96. protected string _Title;
  97. /// <summary>
  98. /// When provided in a partial class, allows value of Title to be changed before setting.
  99. /// </summary>
  100. partial void SetTitle(string oldValue, ref string newValue);
  101. /// <summary>
  102. /// When provided in a partial class, allows value of Title to be changed before returning.
  103. /// </summary>
  104. partial void GetTitle(ref string result);
  105. /// <summary>
  106. /// Required, Max length = 1024
  107. /// The title or name of the object
  108. /// </summary>
  109. [Required]
  110. [MaxLength(1024)]
  111. [StringLength(1024)]
  112. public string Title
  113. {
  114. get
  115. {
  116. string value = _Title;
  117. GetTitle(ref value);
  118. return (_Title = value);
  119. }
  120. set
  121. {
  122. string oldValue = _Title;
  123. SetTitle(oldValue, ref value);
  124. if (oldValue != value)
  125. {
  126. _Title = value;
  127. }
  128. }
  129. }
  130. /// <summary>
  131. /// Backing field for OriginalTitle
  132. /// </summary>
  133. protected string _OriginalTitle;
  134. /// <summary>
  135. /// When provided in a partial class, allows value of OriginalTitle to be changed before setting.
  136. /// </summary>
  137. partial void SetOriginalTitle(string oldValue, ref string newValue);
  138. /// <summary>
  139. /// When provided in a partial class, allows value of OriginalTitle to be changed before returning.
  140. /// </summary>
  141. partial void GetOriginalTitle(ref string result);
  142. /// <summary>
  143. /// Max length = 1024
  144. /// </summary>
  145. [MaxLength(1024)]
  146. [StringLength(1024)]
  147. public string OriginalTitle
  148. {
  149. get
  150. {
  151. string value = _OriginalTitle;
  152. GetOriginalTitle(ref value);
  153. return (_OriginalTitle = value);
  154. }
  155. set
  156. {
  157. string oldValue = _OriginalTitle;
  158. SetOriginalTitle(oldValue, ref value);
  159. if (oldValue != value)
  160. {
  161. _OriginalTitle = value;
  162. }
  163. }
  164. }
  165. /// <summary>
  166. /// Backing field for SortTitle
  167. /// </summary>
  168. protected string _SortTitle;
  169. /// <summary>
  170. /// When provided in a partial class, allows value of SortTitle to be changed before setting.
  171. /// </summary>
  172. partial void SetSortTitle(string oldValue, ref string newValue);
  173. /// <summary>
  174. /// When provided in a partial class, allows value of SortTitle to be changed before returning.
  175. /// </summary>
  176. partial void GetSortTitle(ref string result);
  177. /// <summary>
  178. /// Max length = 1024
  179. /// </summary>
  180. [MaxLength(1024)]
  181. [StringLength(1024)]
  182. public string SortTitle
  183. {
  184. get
  185. {
  186. string value = _SortTitle;
  187. GetSortTitle(ref value);
  188. return (_SortTitle = value);
  189. }
  190. set
  191. {
  192. string oldValue = _SortTitle;
  193. SetSortTitle(oldValue, ref value);
  194. if (oldValue != value)
  195. {
  196. _SortTitle = value;
  197. }
  198. }
  199. }
  200. /// <summary>
  201. /// Backing field for Language
  202. /// </summary>
  203. protected string _Language;
  204. /// <summary>
  205. /// When provided in a partial class, allows value of Language to be changed before setting.
  206. /// </summary>
  207. partial void SetLanguage(string oldValue, ref string newValue);
  208. /// <summary>
  209. /// When provided in a partial class, allows value of Language to be changed before returning.
  210. /// </summary>
  211. partial void GetLanguage(ref string result);
  212. /// <summary>
  213. /// Required, Min length = 3, Max length = 3
  214. /// ISO-639-3 3-character language codes
  215. /// </summary>
  216. [Required]
  217. [MinLength(3)]
  218. [MaxLength(3)]
  219. [StringLength(3)]
  220. public string Language
  221. {
  222. get
  223. {
  224. string value = _Language;
  225. GetLanguage(ref value);
  226. return (_Language = value);
  227. }
  228. set
  229. {
  230. string oldValue = _Language;
  231. SetLanguage(oldValue, ref value);
  232. if (oldValue != value)
  233. {
  234. _Language = value;
  235. }
  236. }
  237. }
  238. /// <summary>
  239. /// Backing field for ReleaseDate
  240. /// </summary>
  241. protected DateTimeOffset? _ReleaseDate;
  242. /// <summary>
  243. /// When provided in a partial class, allows value of ReleaseDate to be changed before setting.
  244. /// </summary>
  245. partial void SetReleaseDate(DateTimeOffset? oldValue, ref DateTimeOffset? newValue);
  246. /// <summary>
  247. /// When provided in a partial class, allows value of ReleaseDate to be changed before returning.
  248. /// </summary>
  249. partial void GetReleaseDate(ref DateTimeOffset? result);
  250. public DateTimeOffset? ReleaseDate
  251. {
  252. get
  253. {
  254. DateTimeOffset? value = _ReleaseDate;
  255. GetReleaseDate(ref value);
  256. return (_ReleaseDate = value);
  257. }
  258. set
  259. {
  260. DateTimeOffset? oldValue = _ReleaseDate;
  261. SetReleaseDate(oldValue, ref value);
  262. if (oldValue != value)
  263. {
  264. _ReleaseDate = value;
  265. }
  266. }
  267. }
  268. /// <summary>
  269. /// Backing field for DateAdded
  270. /// </summary>
  271. protected DateTime _DateAdded;
  272. /// <summary>
  273. /// When provided in a partial class, allows value of DateAdded to be changed before setting.
  274. /// </summary>
  275. partial void SetDateAdded(DateTime oldValue, ref DateTime newValue);
  276. /// <summary>
  277. /// When provided in a partial class, allows value of DateAdded to be changed before returning.
  278. /// </summary>
  279. partial void GetDateAdded(ref DateTime result);
  280. /// <summary>
  281. /// Required
  282. /// </summary>
  283. [Required]
  284. public DateTime DateAdded
  285. {
  286. get
  287. {
  288. DateTime value = _DateAdded;
  289. GetDateAdded(ref value);
  290. return (_DateAdded = value);
  291. }
  292. internal set
  293. {
  294. DateTime oldValue = _DateAdded;
  295. SetDateAdded(oldValue, ref value);
  296. if (oldValue != value)
  297. {
  298. _DateAdded = value;
  299. }
  300. }
  301. }
  302. /// <summary>
  303. /// Backing field for DateModified
  304. /// </summary>
  305. protected DateTime _DateModified;
  306. /// <summary>
  307. /// When provided in a partial class, allows value of DateModified to be changed before setting.
  308. /// </summary>
  309. partial void SetDateModified(DateTime oldValue, ref DateTime newValue);
  310. /// <summary>
  311. /// When provided in a partial class, allows value of DateModified to be changed before returning.
  312. /// </summary>
  313. partial void GetDateModified(ref DateTime result);
  314. /// <summary>
  315. /// Required
  316. /// </summary>
  317. [Required]
  318. public DateTime DateModified
  319. {
  320. get
  321. {
  322. DateTime value = _DateModified;
  323. GetDateModified(ref value);
  324. return (_DateModified = value);
  325. }
  326. internal set
  327. {
  328. DateTime oldValue = _DateModified;
  329. SetDateModified(oldValue, ref value);
  330. if (oldValue != value)
  331. {
  332. _DateModified = value;
  333. }
  334. }
  335. }
  336. /// <summary>
  337. /// Required
  338. /// </summary>
  339. [ConcurrencyCheck]
  340. [Required]
  341. public byte[] Timestamp { get; set; }
  342. /*************************************************************************
  343. * Navigation properties
  344. *************************************************************************/
  345. public virtual ICollection<global::Jellyfin.Data.Entities.PersonRole> PersonRoles { get; protected set; }
  346. public virtual ICollection<global::Jellyfin.Data.Entities.Genre> Genres { get; protected set; }
  347. public virtual ICollection<global::Jellyfin.Data.Entities.Artwork> Artwork { get; protected set; }
  348. public virtual ICollection<global::Jellyfin.Data.Entities.Rating> Ratings { get; protected set; }
  349. public virtual ICollection<global::Jellyfin.Data.Entities.MetadataProviderId> Sources { get; protected set; }
  350. }
  351. }