Chapter.cs 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  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))
  32. {
  33. throw new ArgumentNullException(nameof(language));
  34. }
  35. this.Language = language;
  36. this.TimeStart = timestart;
  37. if (_release0 == null)
  38. {
  39. throw new ArgumentNullException(nameof(_release0));
  40. }
  41. _release0.Chapters.Add(this);
  42. Init();
  43. }
  44. /// <summary>
  45. /// Static create function (for use in LINQ queries, etc.)
  46. /// </summary>
  47. /// <param name="language">ISO-639-3 3-character language codes.</param>
  48. /// <param name="timestart"></param>
  49. /// <param name="_release0"></param>
  50. public static Chapter Create(string language, long timestart, Release _release0)
  51. {
  52. return new Chapter(language, timestart, _release0);
  53. }
  54. /*************************************************************************
  55. * Properties
  56. *************************************************************************/
  57. /// <summary>
  58. /// Backing field for Id.
  59. /// </summary>
  60. internal int _Id;
  61. /// <summary>
  62. /// When provided in a partial class, allows value of Id to be changed before setting.
  63. /// </summary>
  64. partial void SetId(int oldValue, ref int newValue);
  65. /// <summary>
  66. /// When provided in a partial class, allows value of Id to be changed before returning.
  67. /// </summary>
  68. partial void GetId(ref int result);
  69. /// <summary>
  70. /// Identity, Indexed, Required.
  71. /// </summary>
  72. [Key]
  73. [Required]
  74. [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
  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 Name.
  95. /// </summary>
  96. protected string _Name;
  97. /// <summary>
  98. /// When provided in a partial class, allows value of Name to be changed before setting.
  99. /// </summary>
  100. partial void SetName(string oldValue, ref string newValue);
  101. /// <summary>
  102. /// When provided in a partial class, allows value of Name to be changed before returning.
  103. /// </summary>
  104. partial void GetName(ref string result);
  105. /// <summary>
  106. /// Max length = 1024
  107. /// </summary>
  108. [MaxLength(1024)]
  109. [StringLength(1024)]
  110. public string Name
  111. {
  112. get
  113. {
  114. string value = _Name;
  115. GetName(ref value);
  116. return _Name = value;
  117. }
  118. set
  119. {
  120. string oldValue = _Name;
  121. SetName(oldValue, ref value);
  122. if (oldValue != value)
  123. {
  124. _Name = value;
  125. }
  126. }
  127. }
  128. /// <summary>
  129. /// Backing field for Language.
  130. /// </summary>
  131. protected string _Language;
  132. /// <summary>
  133. /// When provided in a partial class, allows value of Language to be changed before setting.
  134. /// </summary>
  135. partial void SetLanguage(string oldValue, ref string newValue);
  136. /// <summary>
  137. /// When provided in a partial class, allows value of Language to be changed before returning.
  138. /// </summary>
  139. partial void GetLanguage(ref string result);
  140. /// <summary>
  141. /// Required, Min length = 3, Max length = 3
  142. /// ISO-639-3 3-character language codes.
  143. /// </summary>
  144. [Required]
  145. [MinLength(3)]
  146. [MaxLength(3)]
  147. [StringLength(3)]
  148. public string Language
  149. {
  150. get
  151. {
  152. string value = _Language;
  153. GetLanguage(ref value);
  154. return _Language = value;
  155. }
  156. set
  157. {
  158. string oldValue = _Language;
  159. SetLanguage(oldValue, ref value);
  160. if (oldValue != value)
  161. {
  162. _Language = value;
  163. }
  164. }
  165. }
  166. /// <summary>
  167. /// Backing field for TimeStart.
  168. /// </summary>
  169. protected long _TimeStart;
  170. /// <summary>
  171. /// When provided in a partial class, allows value of TimeStart to be changed before setting.
  172. /// </summary>
  173. partial void SetTimeStart(long oldValue, ref long newValue);
  174. /// <summary>
  175. /// When provided in a partial class, allows value of TimeStart to be changed before returning.
  176. /// </summary>
  177. partial void GetTimeStart(ref long result);
  178. /// <summary>
  179. /// Required.
  180. /// </summary>
  181. [Required]
  182. public long TimeStart
  183. {
  184. get
  185. {
  186. long value = _TimeStart;
  187. GetTimeStart(ref value);
  188. return _TimeStart = value;
  189. }
  190. set
  191. {
  192. long oldValue = _TimeStart;
  193. SetTimeStart(oldValue, ref value);
  194. if (oldValue != value)
  195. {
  196. _TimeStart = value;
  197. }
  198. }
  199. }
  200. /// <summary>
  201. /// Backing field for TimeEnd.
  202. /// </summary>
  203. protected long? _TimeEnd;
  204. /// <summary>
  205. /// When provided in a partial class, allows value of TimeEnd to be changed before setting.
  206. /// </summary>
  207. partial void SetTimeEnd(long? oldValue, ref long? newValue);
  208. /// <summary>
  209. /// When provided in a partial class, allows value of TimeEnd to be changed before returning.
  210. /// </summary>
  211. partial void GetTimeEnd(ref long? result);
  212. public long? TimeEnd
  213. {
  214. get
  215. {
  216. long? value = _TimeEnd;
  217. GetTimeEnd(ref value);
  218. return _TimeEnd = value;
  219. }
  220. set
  221. {
  222. long? oldValue = _TimeEnd;
  223. SetTimeEnd(oldValue, ref value);
  224. if (oldValue != value)
  225. {
  226. _TimeEnd = value;
  227. }
  228. }
  229. }
  230. /// <summary>
  231. /// Required, ConcurrenyToken.
  232. /// </summary>
  233. [ConcurrencyCheck]
  234. [Required]
  235. public uint RowVersion { get; set; }
  236. public void OnSavingChanges()
  237. {
  238. RowVersion++;
  239. }
  240. /*************************************************************************
  241. * Navigation properties
  242. *************************************************************************/
  243. }
  244. }