Person.cs 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.ComponentModel.DataAnnotations.Schema;
  5. namespace Jellyfin.Data.Entities
  6. {
  7. public partial class Person
  8. {
  9. partial void Init();
  10. /// <summary>
  11. /// Default constructor. Protected due to required properties, but present because EF needs it.
  12. /// </summary>
  13. protected Person()
  14. {
  15. Sources = new HashSet<MetadataProviderId>();
  16. Init();
  17. }
  18. /// <summary>
  19. /// Replaces default constructor, since it's protected. Caller assumes responsibility for setting all required values before saving.
  20. /// </summary>
  21. public static Person CreatePersonUnsafe()
  22. {
  23. return new Person();
  24. }
  25. /// <summary>
  26. /// Public constructor with required data.
  27. /// </summary>
  28. /// <param name="urlid"></param>
  29. /// <param name="name"></param>
  30. public Person(Guid urlid, string name, DateTime dateadded, DateTime datemodified)
  31. {
  32. this.UrlId = urlid;
  33. if (string.IsNullOrEmpty(name))
  34. {
  35. throw new ArgumentNullException(nameof(name));
  36. }
  37. this.Name = name;
  38. this.Sources = new HashSet<MetadataProviderId>();
  39. Init();
  40. }
  41. /// <summary>
  42. /// Static create function (for use in LINQ queries, etc.)
  43. /// </summary>
  44. /// <param name="urlid"></param>
  45. /// <param name="name"></param>
  46. public static Person Create(Guid urlid, string name, DateTime dateadded, DateTime datemodified)
  47. {
  48. return new Person(urlid, name, dateadded, datemodified);
  49. }
  50. /*************************************************************************
  51. * Properties
  52. *************************************************************************/
  53. /// <summary>
  54. /// Backing field for Id.
  55. /// </summary>
  56. internal int _Id;
  57. /// <summary>
  58. /// When provided in a partial class, allows value of Id to be changed before setting.
  59. /// </summary>
  60. partial void SetId(int oldValue, ref int newValue);
  61. /// <summary>
  62. /// When provided in a partial class, allows value of Id to be changed before returning.
  63. /// </summary>
  64. partial void GetId(ref int result);
  65. /// <summary>
  66. /// Identity, Indexed, Required.
  67. /// </summary>
  68. [Key]
  69. [Required]
  70. [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
  71. public int Id
  72. {
  73. get
  74. {
  75. int value = _Id;
  76. GetId(ref value);
  77. return _Id = value;
  78. }
  79. protected set
  80. {
  81. int oldValue = _Id;
  82. SetId(oldValue, ref value);
  83. if (oldValue != value)
  84. {
  85. _Id = value;
  86. }
  87. }
  88. }
  89. /// <summary>
  90. /// Backing field for UrlId.
  91. /// </summary>
  92. protected Guid _UrlId;
  93. /// <summary>
  94. /// When provided in a partial class, allows value of UrlId to be changed before setting.
  95. /// </summary>
  96. partial void SetUrlId(Guid oldValue, ref Guid newValue);
  97. /// <summary>
  98. /// When provided in a partial class, allows value of UrlId to be changed before returning.
  99. /// </summary>
  100. partial void GetUrlId(ref Guid result);
  101. /// <summary>
  102. /// Required.
  103. /// </summary>
  104. [Required]
  105. public Guid UrlId
  106. {
  107. get
  108. {
  109. Guid value = _UrlId;
  110. GetUrlId(ref value);
  111. return _UrlId = value;
  112. }
  113. set
  114. {
  115. Guid oldValue = _UrlId;
  116. SetUrlId(oldValue, ref value);
  117. if (oldValue != value)
  118. {
  119. _UrlId = value;
  120. }
  121. }
  122. }
  123. /// <summary>
  124. /// Backing field for Name.
  125. /// </summary>
  126. protected string _Name;
  127. /// <summary>
  128. /// When provided in a partial class, allows value of Name to be changed before setting.
  129. /// </summary>
  130. partial void SetName(string oldValue, ref string newValue);
  131. /// <summary>
  132. /// When provided in a partial class, allows value of Name to be changed before returning.
  133. /// </summary>
  134. partial void GetName(ref string result);
  135. /// <summary>
  136. /// Required, Max length = 1024
  137. /// </summary>
  138. [Required]
  139. [MaxLength(1024)]
  140. [StringLength(1024)]
  141. public string Name
  142. {
  143. get
  144. {
  145. string value = _Name;
  146. GetName(ref value);
  147. return _Name = value;
  148. }
  149. set
  150. {
  151. string oldValue = _Name;
  152. SetName(oldValue, ref value);
  153. if (oldValue != value)
  154. {
  155. _Name = value;
  156. }
  157. }
  158. }
  159. /// <summary>
  160. /// Backing field for SourceId.
  161. /// </summary>
  162. protected string _SourceId;
  163. /// <summary>
  164. /// When provided in a partial class, allows value of SourceId to be changed before setting.
  165. /// </summary>
  166. partial void SetSourceId(string oldValue, ref string newValue);
  167. /// <summary>
  168. /// When provided in a partial class, allows value of SourceId to be changed before returning.
  169. /// </summary>
  170. partial void GetSourceId(ref string result);
  171. /// <summary>
  172. /// Max length = 255
  173. /// </summary>
  174. [MaxLength(255)]
  175. [StringLength(255)]
  176. public string SourceId
  177. {
  178. get
  179. {
  180. string value = _SourceId;
  181. GetSourceId(ref value);
  182. return _SourceId = value;
  183. }
  184. set
  185. {
  186. string oldValue = _SourceId;
  187. SetSourceId(oldValue, ref value);
  188. if (oldValue != value)
  189. {
  190. _SourceId = value;
  191. }
  192. }
  193. }
  194. /// <summary>
  195. /// Backing field for DateAdded.
  196. /// </summary>
  197. protected DateTime _DateAdded;
  198. /// <summary>
  199. /// When provided in a partial class, allows value of DateAdded to be changed before setting.
  200. /// </summary>
  201. partial void SetDateAdded(DateTime oldValue, ref DateTime newValue);
  202. /// <summary>
  203. /// When provided in a partial class, allows value of DateAdded to be changed before returning.
  204. /// </summary>
  205. partial void GetDateAdded(ref DateTime result);
  206. /// <summary>
  207. /// Required.
  208. /// </summary>
  209. [Required]
  210. public DateTime DateAdded
  211. {
  212. get
  213. {
  214. DateTime value = _DateAdded;
  215. GetDateAdded(ref value);
  216. return _DateAdded = value;
  217. }
  218. internal set
  219. {
  220. DateTime oldValue = _DateAdded;
  221. SetDateAdded(oldValue, ref value);
  222. if (oldValue != value)
  223. {
  224. _DateAdded = value;
  225. }
  226. }
  227. }
  228. /// <summary>
  229. /// Backing field for DateModified.
  230. /// </summary>
  231. protected DateTime _DateModified;
  232. /// <summary>
  233. /// When provided in a partial class, allows value of DateModified to be changed before setting.
  234. /// </summary>
  235. partial void SetDateModified(DateTime oldValue, ref DateTime newValue);
  236. /// <summary>
  237. /// When provided in a partial class, allows value of DateModified to be changed before returning.
  238. /// </summary>
  239. partial void GetDateModified(ref DateTime result);
  240. /// <summary>
  241. /// Required.
  242. /// </summary>
  243. [Required]
  244. public DateTime DateModified
  245. {
  246. get
  247. {
  248. DateTime value = _DateModified;
  249. GetDateModified(ref value);
  250. return _DateModified = value;
  251. }
  252. internal set
  253. {
  254. DateTime oldValue = _DateModified;
  255. SetDateModified(oldValue, ref value);
  256. if (oldValue != value)
  257. {
  258. _DateModified = value;
  259. }
  260. }
  261. }
  262. /// <summary>
  263. /// Required, ConcurrenyToken.
  264. /// </summary>
  265. [ConcurrencyCheck]
  266. [Required]
  267. public uint RowVersion { get; set; }
  268. public void OnSavingChanges()
  269. {
  270. RowVersion++;
  271. }
  272. /*************************************************************************
  273. * Navigation properties
  274. *************************************************************************/
  275. [ForeignKey("MetadataProviderId_Sources_Id")]
  276. public virtual ICollection<MetadataProviderId> Sources { get; protected set; }
  277. }
  278. }