LibraryItem.cs 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. using System;
  2. using System.ComponentModel.DataAnnotations;
  3. using System.ComponentModel.DataAnnotations.Schema;
  4. namespace Jellyfin.Data.Entities
  5. {
  6. public abstract partial class LibraryItem
  7. {
  8. partial void Init();
  9. /// <summary>
  10. /// Default constructor. Protected due to being abstract.
  11. /// </summary>
  12. protected LibraryItem()
  13. {
  14. Init();
  15. }
  16. /// <summary>
  17. /// Public constructor with required data.
  18. /// </summary>
  19. /// <param name="urlid">This is whats gets displayed in the Urls and API requests. This could also be a string.</param>
  20. protected LibraryItem(Guid urlid, DateTime dateadded)
  21. {
  22. this.UrlId = urlid;
  23. Init();
  24. }
  25. /*************************************************************************
  26. * Properties
  27. *************************************************************************/
  28. /// <summary>
  29. /// Backing field for Id.
  30. /// </summary>
  31. internal int _Id;
  32. /// <summary>
  33. /// When provided in a partial class, allows value of Id to be changed before setting.
  34. /// </summary>
  35. partial void SetId(int oldValue, ref int newValue);
  36. /// <summary>
  37. /// When provided in a partial class, allows value of Id to be changed before returning.
  38. /// </summary>
  39. partial void GetId(ref int result);
  40. /// <summary>
  41. /// Identity, Indexed, Required.
  42. /// </summary>
  43. [Key]
  44. [Required]
  45. [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
  46. public int Id
  47. {
  48. get
  49. {
  50. int value = _Id;
  51. GetId(ref value);
  52. return _Id = value;
  53. }
  54. protected set
  55. {
  56. int oldValue = _Id;
  57. SetId(oldValue, ref value);
  58. if (oldValue != value)
  59. {
  60. _Id = value;
  61. }
  62. }
  63. }
  64. /// <summary>
  65. /// Backing field for UrlId.
  66. /// </summary>
  67. internal Guid _UrlId;
  68. /// <summary>
  69. /// When provided in a partial class, allows value of UrlId to be changed before setting.
  70. /// </summary>
  71. partial void SetUrlId(Guid oldValue, ref Guid newValue);
  72. /// <summary>
  73. /// When provided in a partial class, allows value of UrlId to be changed before returning.
  74. /// </summary>
  75. partial void GetUrlId(ref Guid result);
  76. /// <summary>
  77. /// Indexed, Required
  78. /// This is whats gets displayed in the Urls and API requests. This could also be a string.
  79. /// </summary>
  80. [Required]
  81. public Guid UrlId
  82. {
  83. get
  84. {
  85. Guid value = _UrlId;
  86. GetUrlId(ref value);
  87. return _UrlId = value;
  88. }
  89. set
  90. {
  91. Guid oldValue = _UrlId;
  92. SetUrlId(oldValue, ref value);
  93. if (oldValue != value)
  94. {
  95. _UrlId = value;
  96. }
  97. }
  98. }
  99. /// <summary>
  100. /// Backing field for DateAdded.
  101. /// </summary>
  102. protected DateTime _DateAdded;
  103. /// <summary>
  104. /// When provided in a partial class, allows value of DateAdded to be changed before setting.
  105. /// </summary>
  106. partial void SetDateAdded(DateTime oldValue, ref DateTime newValue);
  107. /// <summary>
  108. /// When provided in a partial class, allows value of DateAdded to be changed before returning.
  109. /// </summary>
  110. partial void GetDateAdded(ref DateTime result);
  111. /// <summary>
  112. /// Required.
  113. /// </summary>
  114. [Required]
  115. public DateTime DateAdded
  116. {
  117. get
  118. {
  119. DateTime value = _DateAdded;
  120. GetDateAdded(ref value);
  121. return _DateAdded = value;
  122. }
  123. internal set
  124. {
  125. DateTime oldValue = _DateAdded;
  126. SetDateAdded(oldValue, ref value);
  127. if (oldValue != value)
  128. {
  129. _DateAdded = value;
  130. }
  131. }
  132. }
  133. /// <summary>
  134. /// Required, ConcurrenyToken.
  135. /// </summary>
  136. [ConcurrencyCheck]
  137. [Required]
  138. public uint RowVersion { get; set; }
  139. public void OnSavingChanges()
  140. {
  141. RowVersion++;
  142. }
  143. /*************************************************************************
  144. * Navigation properties
  145. *************************************************************************/
  146. /// <summary>
  147. /// Required.
  148. /// </summary>
  149. [ForeignKey("LibraryRoot_Id")]
  150. public virtual LibraryRoot LibraryRoot { get; set; }
  151. }
  152. }