2
0

Library.cs 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. using System;
  2. using System.ComponentModel.DataAnnotations;
  3. using System.ComponentModel.DataAnnotations.Schema;
  4. namespace Jellyfin.Data.Entities
  5. {
  6. public partial class Library
  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 Library()
  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 Library CreateLibraryUnsafe()
  20. {
  21. return new Library();
  22. }
  23. /// <summary>
  24. /// Public constructor with required data.
  25. /// </summary>
  26. /// <param name="name"></param>
  27. public Library(string name)
  28. {
  29. if (string.IsNullOrEmpty(name))
  30. {
  31. throw new ArgumentNullException(nameof(name));
  32. }
  33. this.Name = name;
  34. Init();
  35. }
  36. /// <summary>
  37. /// Static create function (for use in LINQ queries, etc.)
  38. /// </summary>
  39. /// <param name="name"></param>
  40. public static Library Create(string name)
  41. {
  42. return new Library(name);
  43. }
  44. /*************************************************************************
  45. * Properties
  46. *************************************************************************/
  47. /// <summary>
  48. /// Backing field for Id.
  49. /// </summary>
  50. internal int _Id;
  51. /// <summary>
  52. /// When provided in a partial class, allows value of Id to be changed before setting.
  53. /// </summary>
  54. partial void SetId(int oldValue, ref int newValue);
  55. /// <summary>
  56. /// When provided in a partial class, allows value of Id to be changed before returning.
  57. /// </summary>
  58. partial void GetId(ref int result);
  59. /// <summary>
  60. /// Identity, Indexed, Required.
  61. /// </summary>
  62. [Key]
  63. [Required]
  64. [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
  65. public int Id
  66. {
  67. get
  68. {
  69. int value = _Id;
  70. GetId(ref value);
  71. return _Id = value;
  72. }
  73. protected set
  74. {
  75. int oldValue = _Id;
  76. SetId(oldValue, ref value);
  77. if (oldValue != value)
  78. {
  79. _Id = value;
  80. }
  81. }
  82. }
  83. /// <summary>
  84. /// Backing field for Name.
  85. /// </summary>
  86. protected string _Name;
  87. /// <summary>
  88. /// When provided in a partial class, allows value of Name to be changed before setting.
  89. /// </summary>
  90. partial void SetName(string oldValue, ref string newValue);
  91. /// <summary>
  92. /// When provided in a partial class, allows value of Name to be changed before returning.
  93. /// </summary>
  94. partial void GetName(ref string result);
  95. /// <summary>
  96. /// Required, Max length = 1024
  97. /// </summary>
  98. [Required]
  99. [MaxLength(1024)]
  100. [StringLength(1024)]
  101. public string Name
  102. {
  103. get
  104. {
  105. string value = _Name;
  106. GetName(ref value);
  107. return _Name = value;
  108. }
  109. set
  110. {
  111. string oldValue = _Name;
  112. SetName(oldValue, ref value);
  113. if (oldValue != value)
  114. {
  115. _Name = value;
  116. }
  117. }
  118. }
  119. /// <summary>
  120. /// Required, ConcurrenyToken.
  121. /// </summary>
  122. [ConcurrencyCheck]
  123. [Required]
  124. public uint RowVersion { get; set; }
  125. public void OnSavingChanges()
  126. {
  127. RowVersion++;
  128. }
  129. /*************************************************************************
  130. * Navigation properties
  131. *************************************************************************/
  132. }
  133. }