diff options
| author | JPVenson <6794763+JPVenson@users.noreply.github.com> | 2024-10-09 11:02:47 +0000 |
|---|---|---|
| committer | JPVenson <6794763+JPVenson@users.noreply.github.com> | 2024-10-09 11:02:47 +0000 |
| commit | 3dc402433870ba3dcd0f0c9f282ea96538e43c8b (patch) | |
| tree | e25b4f8727a20151462cd3ed475e6b6101badd61 | |
| parent | 2014fa56b8ab0b0aec0b31ae0d2d9e2fce02ee53 (diff) | |
Added BaseItem Configuration
| -rw-r--r-- | Jellyfin.Data/Entities/BaseItemEntity.cs | 24 | ||||
| -rw-r--r-- | Jellyfin.Data/Entities/Chapter.cs | 2 | ||||
| -rw-r--r-- | Jellyfin.Data/Entities/ItemValue.cs | 2 | ||||
| -rw-r--r-- | Jellyfin.Data/Entities/MediaStreamInfo.cs | 2 | ||||
| -rw-r--r-- | Jellyfin.Server.Implementations/ModelConfiguration/BaseItemConfiguration.cs | 14 |
5 files changed, 32 insertions, 12 deletions
diff --git a/Jellyfin.Data/Entities/BaseItemEntity.cs b/Jellyfin.Data/Entities/BaseItemEntity.cs index 92b5caf05..1b8a6b553 100644 --- a/Jellyfin.Data/Entities/BaseItemEntity.cs +++ b/Jellyfin.Data/Entities/BaseItemEntity.cs @@ -16,8 +16,6 @@ public class BaseItemEntity public string? Data { get; set; } - public Guid? ParentId { get; set; } - public string? Path { get; set; } public DateTime StartDate { get; set; } @@ -94,8 +92,6 @@ public class BaseItemEntity public string? UnratedType { get; set; } - public Guid? TopParentId { get; set; } - public string? TrailerTypes { get; set; } public float? CriticRating { get; set; } @@ -124,10 +120,6 @@ public class BaseItemEntity public string? SeasonName { get; set; } - public Guid? SeasonId { get; set; } - - public Guid? SeriesId { get; set; } - public string? ExternalSeriesId { get; set; } public string? Tagline { get; set; } @@ -160,6 +152,22 @@ public class BaseItemEntity public long? Size { get; set; } + public Guid? ParentId { get; set; } + + public BaseItemEntity? Parent { get; set; } + + public Guid? TopParentId { get; set; } + + public BaseItemEntity? TopParent { get; set; } + + public Guid? SeasonId { get; set; } + + public BaseItemEntity? Season { get; set; } + + public Guid? SeriesId { get; set; } + + public BaseItemEntity? Series { get; set; } + #pragma warning disable CA2227 // Collection properties should be read only public ICollection<People>? Peoples { get; set; } diff --git a/Jellyfin.Data/Entities/Chapter.cs b/Jellyfin.Data/Entities/Chapter.cs index be353b5da..a55b7fb53 100644 --- a/Jellyfin.Data/Entities/Chapter.cs +++ b/Jellyfin.Data/Entities/Chapter.cs @@ -8,7 +8,7 @@ namespace Jellyfin.Data.Entities; #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member public class Chapter { - public Guid ItemId { get; set; } + public required Guid ItemId { get; set; } public required BaseItemEntity Item { get; set; } diff --git a/Jellyfin.Data/Entities/ItemValue.cs b/Jellyfin.Data/Entities/ItemValue.cs index 1063aaa8b..78da478b1 100644 --- a/Jellyfin.Data/Entities/ItemValue.cs +++ b/Jellyfin.Data/Entities/ItemValue.cs @@ -13,7 +13,7 @@ public class ItemValue /// <summary> /// Gets or Sets the reference ItemId. /// </summary> - public Guid ItemId { get; set; } + public required Guid ItemId { get; set; } /// <summary> /// Gets or Sets the referenced BaseItem. diff --git a/Jellyfin.Data/Entities/MediaStreamInfo.cs b/Jellyfin.Data/Entities/MediaStreamInfo.cs index 992f33ecf..97b7036b2 100644 --- a/Jellyfin.Data/Entities/MediaStreamInfo.cs +++ b/Jellyfin.Data/Entities/MediaStreamInfo.cs @@ -5,7 +5,7 @@ namespace Jellyfin.Data.Entities; #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member public class MediaStreamInfo { - public Guid ItemId { get; set; } + public required Guid ItemId { get; set; } public required BaseItemEntity Item { get; set; } diff --git a/Jellyfin.Server.Implementations/ModelConfiguration/BaseItemConfiguration.cs b/Jellyfin.Server.Implementations/ModelConfiguration/BaseItemConfiguration.cs index 4aba9d07e..6f8adb44d 100644 --- a/Jellyfin.Server.Implementations/ModelConfiguration/BaseItemConfiguration.cs +++ b/Jellyfin.Server.Implementations/ModelConfiguration/BaseItemConfiguration.cs @@ -13,7 +13,19 @@ public class BaseItemConfiguration : IEntityTypeConfiguration<BaseItemEntity> /// <inheritdoc/> public void Configure(EntityTypeBuilder<BaseItemEntity> builder) { - builder.HasNoKey(); + builder.HasKey(e => e.Id); + builder.HasOne(e => e.Parent); + builder.HasOne(e => e.TopParent); + builder.HasOne(e => e.Season); + builder.HasOne(e => e.Series); + builder.HasMany(e => e.Peoples); + builder.HasMany(e => e.UserData); + builder.HasMany(e => e.ItemValues); + builder.HasMany(e => e.MediaStreams); + builder.HasMany(e => e.Chapters); + builder.HasMany(e => e.Provider); + builder.HasMany(e => e.AncestorIds); + builder.HasIndex(e => e.Path); builder.HasIndex(e => e.ParentId); builder.HasIndex(e => e.PresentationUniqueKey); |
