Chapter.cs 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263
  1. using System;
  2. using System.ComponentModel.DataAnnotations;
  3. using System.ComponentModel.DataAnnotations.Schema;
  4. namespace Jellyfin.Data.Entities
  5. {
  6. public partial class Chapter
  7. {
  8. partial void Init();
  9. /// <summary>
  10. /// Default constructor. Protected due to required properties, but present because EF needs it.
  11. /// </summary>
  12. protected Chapter()
  13. {
  14. Init();
  15. }
  16. /// <summary>
  17. /// Replaces default constructor, since it's protected. Caller assumes responsibility for setting all required values before saving.
  18. /// </summary>
  19. public static Chapter CreateChapterUnsafe()
  20. {
  21. return new Chapter();
  22. }
  23. /// <summary>
  24. /// Public constructor with required data
  25. /// </summary>
  26. /// <param name="language">ISO-639-3 3-character language codes</param>
  27. /// <param name="timestart"></param>
  28. /// <param name="_release0"></param>
  29. public Chapter(string language, long timestart, Release _release0)
  30. {
  31. if (string.IsNullOrEmpty(language)) throw new ArgumentNullException(nameof(language));
  32. this.Language = language;
  33. this.TimeStart = timestart;
  34. if (_release0 == null) throw new ArgumentNullException(nameof(_release0));
  35. _release0.Chapters.Add(this);
  36. Init();
  37. }
  38. /// <summary>
  39. /// Static create function (for use in LINQ queries, etc.)
  40. /// </summary>
  41. /// <param name="language">ISO-639-3 3-character language codes</param>
  42. /// <param name="timestart"></param>
  43. /// <param name="_release0"></param>
  44. public static Chapter Create(string language, long timestart, Release _release0)
  45. {
  46. return new Chapter(language, timestart, _release0);
  47. }
  48. /*************************************************************************
  49. * Properties
  50. *************************************************************************/
  51. /// <summary>
  52. /// Backing field for Id
  53. /// </summary>
  54. internal int _Id;
  55. /// <summary>
  56. /// When provided in a partial class, allows value of Id to be changed before setting.
  57. /// </summary>
  58. partial void SetId(int oldValue, ref int newValue);
  59. /// <summary>
  60. /// When provided in a partial class, allows value of Id to be changed before returning.
  61. /// </summary>
  62. partial void GetId(ref int result);
  63. /// <summary>
  64. /// Identity, Indexed, Required
  65. /// </summary>
  66. [Key]
  67. [Required]
  68. [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
  69. public int Id
  70. {
  71. get
  72. {
  73. int value = _Id;
  74. GetId(ref value);
  75. return (_Id = value);
  76. }
  77. protected set
  78. {
  79. int oldValue = _Id;
  80. SetId(oldValue, ref value);
  81. if (oldValue != value)
  82. {
  83. _Id = value;
  84. }
  85. }
  86. }
  87. /// <summary>
  88. /// Backing field for Name
  89. /// </summary>
  90. protected string _Name;
  91. /// <summary>
  92. /// When provided in a partial class, allows value of Name to be changed before setting.
  93. /// </summary>
  94. partial void SetName(string oldValue, ref string newValue);
  95. /// <summary>
  96. /// When provided in a partial class, allows value of Name to be changed before returning.
  97. /// </summary>
  98. partial void GetName(ref string result);
  99. /// <summary>
  100. /// Max length = 1024
  101. /// </summary>
  102. [MaxLength(1024)]
  103. [StringLength(1024)]
  104. public string Name
  105. {
  106. get
  107. {
  108. string value = _Name;
  109. GetName(ref value);
  110. return (_Name = value);
  111. }
  112. set
  113. {
  114. string oldValue = _Name;
  115. SetName(oldValue, ref value);
  116. if (oldValue != value)
  117. {
  118. _Name = value;
  119. }
  120. }
  121. }
  122. /// <summary>
  123. /// Backing field for Language
  124. /// </summary>
  125. protected string _Language;
  126. /// <summary>
  127. /// When provided in a partial class, allows value of Language to be changed before setting.
  128. /// </summary>
  129. partial void SetLanguage(string oldValue, ref string newValue);
  130. /// <summary>
  131. /// When provided in a partial class, allows value of Language to be changed before returning.
  132. /// </summary>
  133. partial void GetLanguage(ref string result);
  134. /// <summary>
  135. /// Required, Min length = 3, Max length = 3
  136. /// ISO-639-3 3-character language codes
  137. /// </summary>
  138. [Required]
  139. [MinLength(3)]
  140. [MaxLength(3)]
  141. [StringLength(3)]
  142. public string Language
  143. {
  144. get
  145. {
  146. string value = _Language;
  147. GetLanguage(ref value);
  148. return (_Language = value);
  149. }
  150. set
  151. {
  152. string oldValue = _Language;
  153. SetLanguage(oldValue, ref value);
  154. if (oldValue != value)
  155. {
  156. _Language = value;
  157. }
  158. }
  159. }
  160. /// <summary>
  161. /// Backing field for TimeStart
  162. /// </summary>
  163. protected long _TimeStart;
  164. /// <summary>
  165. /// When provided in a partial class, allows value of TimeStart to be changed before setting.
  166. /// </summary>
  167. partial void SetTimeStart(long oldValue, ref long newValue);
  168. /// <summary>
  169. /// When provided in a partial class, allows value of TimeStart to be changed before returning.
  170. /// </summary>
  171. partial void GetTimeStart(ref long result);
  172. /// <summary>
  173. /// Required
  174. /// </summary>
  175. [Required]
  176. public long TimeStart
  177. {
  178. get
  179. {
  180. long value = _TimeStart;
  181. GetTimeStart(ref value);
  182. return (_TimeStart = value);
  183. }
  184. set
  185. {
  186. long oldValue = _TimeStart;
  187. SetTimeStart(oldValue, ref value);
  188. if (oldValue != value)
  189. {
  190. _TimeStart = value;
  191. }
  192. }
  193. }
  194. /// <summary>
  195. /// Backing field for TimeEnd
  196. /// </summary>
  197. protected long? _TimeEnd;
  198. /// <summary>
  199. /// When provided in a partial class, allows value of TimeEnd to be changed before setting.
  200. /// </summary>
  201. partial void SetTimeEnd(long? oldValue, ref long? newValue);
  202. /// <summary>
  203. /// When provided in a partial class, allows value of TimeEnd to be changed before returning.
  204. /// </summary>
  205. partial void GetTimeEnd(ref long? result);
  206. public long? TimeEnd
  207. {
  208. get
  209. {
  210. long? value = _TimeEnd;
  211. GetTimeEnd(ref value);
  212. return (_TimeEnd = value);
  213. }
  214. set
  215. {
  216. long? oldValue = _TimeEnd;
  217. SetTimeEnd(oldValue, ref value);
  218. if (oldValue != value)
  219. {
  220. _TimeEnd = value;
  221. }
  222. }
  223. }
  224. /// <summary>
  225. /// Required, ConcurrenyToken
  226. /// </summary>
  227. [ConcurrencyCheck]
  228. [Required]
  229. public uint RowVersion { get; set; }
  230. public void OnSavingChanges()
  231. {
  232. RowVersion++;
  233. }
  234. /*************************************************************************
  235. * Navigation properties
  236. *************************************************************************/
  237. }
  238. }