aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Barron <barronpm@gmail.com>2020-05-10 10:54:41 -0400
committerPatrick Barron <barronpm@gmail.com>2020-05-10 10:54:41 -0400
commit55cfa96b9f8127c6327702fe98407d771bb987b7 (patch)
treec777691bca150bc571cda27203d6676b1fed7a71
parent2b41f8ab632b706b0f4e2d17032dbb07ce73136e (diff)
Apply review suggestions
-rw-r--r--Jellyfin.Data/DbContexts/Jellyfin.cs1140
-rw-r--r--Jellyfin.Data/Entities/Artwork.cs7
-rw-r--r--Jellyfin.Data/Entities/Book.cs8
-rw-r--r--Jellyfin.Data/Entities/BookMetadata.cs7
-rw-r--r--Jellyfin.Data/Entities/Chapter.cs6
-rw-r--r--Jellyfin.Data/Entities/Collection.cs6
-rw-r--r--Jellyfin.Data/Entities/CollectionItem.cs6
-rw-r--r--Jellyfin.Data/Entities/Company.cs5
-rw-r--r--Jellyfin.Data/Entities/CompanyMetadata.cs9
-rw-r--r--Jellyfin.Data/Entities/CustomItem.cs7
-rw-r--r--Jellyfin.Data/Entities/CustomItemMetadata.cs10
-rw-r--r--Jellyfin.Data/Entities/Episode.cs8
-rw-r--r--Jellyfin.Data/Entities/EpisodeMetadata.cs9
-rw-r--r--Jellyfin.Data/Entities/Genre.cs6
-rw-r--r--Jellyfin.Data/Entities/Group.cs5
-rw-r--r--Jellyfin.Data/Entities/Library.cs6
-rw-r--r--Jellyfin.Data/Entities/LibraryItem.cs6
-rw-r--r--Jellyfin.Data/Entities/LibraryRoot.cs6
-rw-r--r--Jellyfin.Data/Entities/MediaFile.cs5
-rw-r--r--Jellyfin.Data/Entities/MediaFileStream.cs6
-rw-r--r--Jellyfin.Data/Entities/Metadata.cs5
-rw-r--r--Jellyfin.Data/Entities/MetadataProvider.cs6
-rw-r--r--Jellyfin.Data/Entities/MetadataProviderId.cs6
-rw-r--r--Jellyfin.Data/Entities/Movie.cs8
-rw-r--r--Jellyfin.Data/Entities/MovieMetadata.cs7
-rw-r--r--Jellyfin.Data/Entities/MusicAlbum.cs8
-rw-r--r--Jellyfin.Data/Entities/MusicAlbumMetadata.cs7
-rw-r--r--Jellyfin.Data/Entities/Permission.cs4
-rw-r--r--Jellyfin.Data/Entities/Person.cs5
-rw-r--r--Jellyfin.Data/Entities/PersonRole.cs5
-rw-r--r--Jellyfin.Data/Entities/Photo.cs8
-rw-r--r--Jellyfin.Data/Entities/PhotoMetadata.cs9
-rw-r--r--Jellyfin.Data/Entities/Preference.cs6
-rw-r--r--Jellyfin.Data/Entities/ProviderMapping.cs6
-rw-r--r--Jellyfin.Data/Entities/Rating.cs6
-rw-r--r--Jellyfin.Data/Entities/RatingSource.cs6
-rw-r--r--Jellyfin.Data/Entities/Release.cs5
-rw-r--r--Jellyfin.Data/Entities/Season.cs8
-rw-r--r--Jellyfin.Data/Entities/SeasonMetadata.cs8
-rw-r--r--Jellyfin.Data/Entities/Series.cs8
-rw-r--r--Jellyfin.Data/Entities/SeriesMetadata.cs7
-rw-r--r--Jellyfin.Data/Entities/Track.cs8
-rw-r--r--Jellyfin.Data/Entities/TrackMetadata.cs9
-rw-r--r--Jellyfin.Data/Entities/User.cs5
-rw-r--r--Jellyfin.Data/Enums/ArtKind.cs4
-rw-r--r--Jellyfin.Data/Enums/MediaFileKind.cs4
-rw-r--r--Jellyfin.Data/Enums/PermissionKind.cs4
-rw-r--r--Jellyfin.Data/Enums/PersonRoleType.cs4
-rw-r--r--Jellyfin.Data/Enums/PreferenceKind.cs4
-rw-r--r--Jellyfin.Data/Enums/Weekday.cs4
-rw-r--r--Jellyfin.Data/ISavingChanges.cs9
-rw-r--r--Jellyfin.Server.Implementations/Jellyfin.Server.Implementations.csproj34
-rw-r--r--Jellyfin.Server.Implementations/JellyfinDb.cs115
-rw-r--r--MediaBrowser.sln6
54 files changed, 189 insertions, 1427 deletions
diff --git a/Jellyfin.Data/DbContexts/Jellyfin.cs b/Jellyfin.Data/DbContexts/Jellyfin.cs
deleted file mode 100644
index fd488ce7d..000000000
--- a/Jellyfin.Data/DbContexts/Jellyfin.cs
+++ /dev/null
@@ -1,1140 +0,0 @@
-//------------------------------------------------------------------------------
-// <auto-generated>
-// This code was generated from a template.
-//
-// Manual changes to this file may cause unexpected behavior in your application.
-// Manual changes to this file will be overwritten if the code is regenerated.
-//
-// Produced by Entity Framework Visual Editor
-// https://github.com/msawczyn/EFDesigner
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.ComponentModel.DataAnnotations.Schema;
-using Microsoft.EntityFrameworkCore;
-
-namespace Jellyfin.Data.DbContexts
-{
- /// <inheritdoc/>
- public partial class Jellyfin : DbContext
- {
- #region DbSets
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Artwork> Artwork { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Book> Books { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.BookMetadata> BookMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Chapter> Chapters { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Collection> Collections { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.CollectionItem> CollectionItems { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Company> Companies { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.CompanyMetadata> CompanyMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.CustomItem> CustomItems { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.CustomItemMetadata> CustomItemMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Episode> Episodes { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.EpisodeMetadata> EpisodeMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Genre> Genres { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Group> Groups { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Library> Libraries { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.LibraryItem> LibraryItems { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.LibraryRoot> LibraryRoot { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.MediaFile> MediaFiles { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.MediaFileStream> MediaFileStream { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Metadata> Metadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.MetadataProvider> MetadataProviders { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.MetadataProviderId> MetadataProviderIds { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Movie> Movies { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.MovieMetadata> MovieMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.MusicAlbum> MusicAlbums { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.MusicAlbumMetadata> MusicAlbumMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Permission> Permissions { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Person> People { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.PersonRole> PersonRoles { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Photo> Photo { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.PhotoMetadata> PhotoMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Preference> Preferences { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.ProviderMapping> ProviderMappings { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Rating> Ratings { get; set; }
-
- /// <summary>
- /// Repository for global::Jellyfin.Data.Entities.RatingSource - This is the entity to
- /// store review ratings, not age ratings
- /// </summary>
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.RatingSource> RatingSources { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Release> Releases { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Season> Seasons { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.SeasonMetadata> SeasonMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Series> Series { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.SeriesMetadata> SeriesMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.Track> Tracks { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.TrackMetadata> TrackMetadata { get; set; }
- public virtual Microsoft.EntityFrameworkCore.DbSet<global::Jellyfin.Data.Entities.User> Users { get; set; }
- #endregion DbSets
-
- /// <summary>
- /// Default connection string
- /// </summary>
- public static string ConnectionString { get; set; } = @"Data Source=jellyfin.db";
-
- /// <inheritdoc />
- public Jellyfin(DbContextOptions<Jellyfin> options) : base(options)
- {
- }
-
- partial void CustomInit(DbContextOptionsBuilder optionsBuilder);
-
- /// <inheritdoc />
- protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
- {
- CustomInit(optionsBuilder);
- }
-
- partial void OnModelCreatingImpl(ModelBuilder modelBuilder);
- partial void OnModelCreatedImpl(ModelBuilder modelBuilder);
-
- /// <inheritdoc />
- protected override void OnModelCreating(ModelBuilder modelBuilder)
- {
- base.OnModelCreating(modelBuilder);
- OnModelCreatingImpl(modelBuilder);
-
- modelBuilder.HasDefaultSchema("jellyfin");
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Artwork>()
- .ToTable("Artwork")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Artwork>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Artwork>()
- .Property(t => t.Path)
- .HasMaxLength(65535)
- .IsRequired()
- .HasField("_Path")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Artwork>()
- .Property(t => t.Kind)
- .IsRequired()
- .HasField("_Kind")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Artwork>().HasIndex(t => t.Kind);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Artwork>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Book>()
- .HasMany(x => x.BookMetadata)
- .WithOne()
- .HasForeignKey("BookMetadata_BookMetadata_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Book>()
- .HasMany(x => x.Releases)
- .WithOne()
- .HasForeignKey("Release_Releases_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.BookMetadata>()
- .Property(t => t.ISBN)
- .HasField("_ISBN")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.BookMetadata>()
- .HasMany(x => x.Publishers)
- .WithOne()
- .HasForeignKey("Company_Publishers_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Chapter>()
- .ToTable("Chapter")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Chapter>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Chapter>()
- .Property(t => t.Name)
- .HasMaxLength(1024)
- .HasField("_Name")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Chapter>()
- .Property(t => t.Language)
- .HasMaxLength(3)
- .IsRequired()
- .HasField("_Language")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Chapter>()
- .Property(t => t.TimeStart)
- .IsRequired()
- .HasField("_TimeStart")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Chapter>()
- .Property(t => t.TimeEnd)
- .HasField("_TimeEnd")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Chapter>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Collection>()
- .ToTable("Collection")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Collection>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Collection>()
- .Property(t => t.Name)
- .HasMaxLength(1024)
- .HasField("_Name")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Collection>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Collection>()
- .HasMany(x => x.CollectionItem)
- .WithOne()
- .HasForeignKey("CollectionItem_CollectionItem_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CollectionItem>()
- .ToTable("CollectionItem")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CollectionItem>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CollectionItem>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CollectionItem>()
- .HasOne(x => x.LibraryItem)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.CollectionItem>("LibraryItem_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CollectionItem>()
- .HasOne(x => x.Next)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.CollectionItem>("CollectionItem_Next_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CollectionItem>()
- .HasOne(x => x.Previous)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.CollectionItem>("CollectionItem_Previous_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Company>()
- .ToTable("Company")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Company>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Company>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Company>()
- .HasMany(x => x.CompanyMetadata)
- .WithOne()
- .HasForeignKey("CompanyMetadata_CompanyMetadata_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Company>()
- .HasOne(x => x.Parent)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.Company>("Company_Parent_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CompanyMetadata>()
- .Property(t => t.Description)
- .HasMaxLength(65535)
- .HasField("_Description")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CompanyMetadata>()
- .Property(t => t.Headquarters)
- .HasMaxLength(255)
- .HasField("_Headquarters")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CompanyMetadata>()
- .Property(t => t.Country)
- .HasMaxLength(2)
- .HasField("_Country")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CompanyMetadata>()
- .Property(t => t.Homepage)
- .HasMaxLength(1024)
- .HasField("_Homepage")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CustomItem>()
- .HasMany(x => x.CustomItemMetadata)
- .WithOne()
- .HasForeignKey("CustomItemMetadata_CustomItemMetadata_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.CustomItem>()
- .HasMany(x => x.Releases)
- .WithOne()
- .HasForeignKey("Release_Releases_Id")
- .IsRequired();
-
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Episode>()
- .Property(t => t.EpisodeNumber)
- .HasField("_EpisodeNumber")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Episode>()
- .HasMany(x => x.Releases)
- .WithOne()
- .HasForeignKey("Release_Releases_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Episode>()
- .HasMany(x => x.EpisodeMetadata)
- .WithOne()
- .HasForeignKey("EpisodeMetadata_EpisodeMetadata_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.EpisodeMetadata>()
- .Property(t => t.Outline)
- .HasMaxLength(1024)
- .HasField("_Outline")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.EpisodeMetadata>()
- .Property(t => t.Plot)
- .HasMaxLength(65535)
- .HasField("_Plot")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.EpisodeMetadata>()
- .Property(t => t.Tagline)
- .HasMaxLength(1024)
- .HasField("_Tagline")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Genre>()
- .ToTable("Genre")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Genre>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Genre>()
- .Property(t => t.Name)
- .HasMaxLength(255)
- .IsRequired()
- .HasField("_Name")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Genre>().HasIndex(t => t.Name)
- .IsUnique();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Genre>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Group>()
- .ToTable("Groups")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Group>()
- .Property(t => t.Id)
- .IsRequired()
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Group>()
- .Property(t => t.Name)
- .HasMaxLength(255)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Group>().Property<byte[]>("Timestamp").IsConcurrencyToken();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Group>()
- .HasMany(x => x.GroupPermissions)
- .WithOne()
- .HasForeignKey("Permission_GroupPermissions_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Group>()
- .HasMany(x => x.ProviderMappings)
- .WithOne()
- .HasForeignKey("ProviderMapping_ProviderMappings_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Group>()
- .HasMany(x => x.Preferences)
- .WithOne()
- .HasForeignKey("Preference_Preferences_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Library>()
- .ToTable("Library")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Library>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Library>()
- .Property(t => t.Name)
- .HasMaxLength(1024)
- .IsRequired()
- .HasField("_Name")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Library>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryItem>()
- .ToTable("LibraryItem")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryItem>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryItem>()
- .Property(t => t.UrlId)
- .IsRequired()
- .HasField("_UrlId")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryItem>().HasIndex(t => t.UrlId)
- .IsUnique();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryItem>()
- .Property(t => t.DateAdded)
- .IsRequired()
- .HasField("_DateAdded")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryItem>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryItem>()
- .HasOne(x => x.LibraryRoot)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.LibraryItem>("LibraryRoot_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryRoot>()
- .ToTable("LibraryRoot")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryRoot>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryRoot>()
- .Property(t => t.Path)
- .HasMaxLength(65535)
- .IsRequired()
- .HasField("_Path")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryRoot>()
- .Property(t => t.NetworkPath)
- .HasMaxLength(65535)
- .HasField("_NetworkPath")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryRoot>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.LibraryRoot>()
- .HasOne(x => x.Library)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.LibraryRoot>("Library_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFile>()
- .ToTable("MediaFile")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFile>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFile>()
- .Property(t => t.Path)
- .HasMaxLength(65535)
- .IsRequired()
- .HasField("_Path")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFile>()
- .Property(t => t.Kind)
- .IsRequired()
- .HasField("_Kind")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFile>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFile>()
- .HasMany(x => x.MediaFileStreams)
- .WithOne()
- .HasForeignKey("MediaFileStream_MediaFileStreams_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFileStream>()
- .ToTable("MediaFileStream")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFileStream>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFileStream>()
- .Property(t => t.StreamNumber)
- .IsRequired()
- .HasField("_StreamNumber")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MediaFileStream>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .ToTable("Metadata")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.Title)
- .HasMaxLength(1024)
- .IsRequired()
- .HasField("_Title")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.OriginalTitle)
- .HasMaxLength(1024)
- .HasField("_OriginalTitle")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.SortTitle)
- .HasMaxLength(1024)
- .HasField("_SortTitle")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.Language)
- .HasMaxLength(3)
- .IsRequired()
- .HasField("_Language")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.ReleaseDate)
- .HasField("_ReleaseDate")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.DateAdded)
- .IsRequired()
- .HasField("_DateAdded")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.DateModified)
- .IsRequired()
- .HasField("_DateModified")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .HasMany(x => x.PersonRoles)
- .WithOne()
- .HasForeignKey("PersonRole_PersonRoles_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .HasMany(x => x.Genres)
- .WithOne()
- .HasForeignKey("Genre_Genres_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .HasMany(x => x.Artwork)
- .WithOne()
- .HasForeignKey("Artwork_Artwork_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .HasMany(x => x.Ratings)
- .WithOne()
- .HasForeignKey("Rating_Ratings_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Metadata>()
- .HasMany(x => x.Sources)
- .WithOne()
- .HasForeignKey("MetadataProviderId_Sources_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProvider>()
- .ToTable("MetadataProvider")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProvider>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProvider>()
- .Property(t => t.Name)
- .HasMaxLength(1024)
- .IsRequired()
- .HasField("_Name")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProvider>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProviderId>()
- .ToTable("MetadataProviderId")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProviderId>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProviderId>()
- .Property(t => t.ProviderId)
- .HasMaxLength(255)
- .IsRequired()
- .HasField("_ProviderId")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProviderId>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MetadataProviderId>()
- .HasOne(x => x.MetadataProvider)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.MetadataProviderId>("MetadataProvider_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Movie>()
- .HasMany(x => x.Releases)
- .WithOne()
- .HasForeignKey("Release_Releases_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Movie>()
- .HasMany(x => x.MovieMetadata)
- .WithOne()
- .HasForeignKey("MovieMetadata_MovieMetadata_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MovieMetadata>()
- .Property(t => t.Outline)
- .HasMaxLength(1024)
- .HasField("_Outline")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MovieMetadata>()
- .Property(t => t.Plot)
- .HasMaxLength(65535)
- .HasField("_Plot")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MovieMetadata>()
- .Property(t => t.Tagline)
- .HasMaxLength(1024)
- .HasField("_Tagline")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MovieMetadata>()
- .Property(t => t.Country)
- .HasMaxLength(2)
- .HasField("_Country")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MovieMetadata>()
- .HasMany(x => x.Studios)
- .WithOne()
- .HasForeignKey("Company_Studios_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MusicAlbum>()
- .HasMany(x => x.MusicAlbumMetadata)
- .WithOne()
- .HasForeignKey("MusicAlbumMetadata_MusicAlbumMetadata_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MusicAlbum>()
- .HasMany(x => x.Tracks)
- .WithOne()
- .HasForeignKey("Track_Tracks_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MusicAlbumMetadata>()
- .Property(t => t.Barcode)
- .HasMaxLength(255)
- .HasField("_Barcode")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MusicAlbumMetadata>()
- .Property(t => t.LabelNumber)
- .HasMaxLength(255)
- .HasField("_LabelNumber")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MusicAlbumMetadata>()
- .Property(t => t.Country)
- .HasMaxLength(2)
- .HasField("_Country")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.MusicAlbumMetadata>()
- .HasMany(x => x.Labels)
- .WithOne()
- .HasForeignKey("Company_Labels_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Permission>()
- .ToTable("Permissions")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Permission>()
- .Property(t => t.Id)
- .IsRequired()
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Permission>()
- .Property(t => t.Kind)
- .IsRequired()
- .HasField("_Kind")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Permission>()
- .Property(t => t.Value)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Permission>().Property<byte[]>("Timestamp").IsConcurrencyToken();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .ToTable("Person")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .Property(t => t.UrlId)
- .IsRequired()
- .HasField("_UrlId")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .Property(t => t.Name)
- .HasMaxLength(1024)
- .IsRequired()
- .HasField("_Name")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .Property(t => t.SourceId)
- .HasMaxLength(255)
- .HasField("_SourceId")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .Property(t => t.DateAdded)
- .IsRequired()
- .HasField("_DateAdded")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .Property(t => t.DateModified)
- .IsRequired()
- .HasField("_DateModified")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Person>()
- .HasMany(x => x.Sources)
- .WithOne()
- .HasForeignKey("MetadataProviderId_Sources_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.PersonRole>()
- .ToTable("PersonRole")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.PersonRole>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.PersonRole>()
- .Property(t => t.Role)
- .HasMaxLength(1024)
- .HasField("_Role")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.PersonRole>()
- .Property(t => t.Type)
- .IsRequired()
- .HasField("_Type")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.PersonRole>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.PersonRole>()
- .HasOne(x => x.Person)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.PersonRole>("Person_Id")
- .IsRequired()
- .OnDelete(DeleteBehavior.Cascade);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.PersonRole>()
- .HasOne(x => x.Artwork)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.PersonRole>("Artwork_Artwork_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.PersonRole>()
- .HasMany(x => x.Sources)
- .WithOne()
- .HasForeignKey("MetadataProviderId_Sources_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Photo>()
- .HasMany(x => x.PhotoMetadata)
- .WithOne()
- .HasForeignKey("PhotoMetadata_PhotoMetadata_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Photo>()
- .HasMany(x => x.Releases)
- .WithOne()
- .HasForeignKey("Release_Releases_Id")
- .IsRequired();
-
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Preference>()
- .ToTable("Preferences")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Preference>()
- .Property(t => t.Id)
- .IsRequired()
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Preference>()
- .Property(t => t.Kind)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Preference>()
- .Property(t => t.Value)
- .HasMaxLength(65535)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Preference>().Property<byte[]>("Timestamp").IsConcurrencyToken();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.ProviderMapping>()
- .ToTable("ProviderMappings")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.ProviderMapping>()
- .Property(t => t.Id)
- .IsRequired()
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.ProviderMapping>()
- .Property(t => t.ProviderName)
- .HasMaxLength(255)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.ProviderMapping>()
- .Property(t => t.ProviderSecrets)
- .HasMaxLength(65535)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.ProviderMapping>()
- .Property(t => t.ProviderData)
- .HasMaxLength(65535)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.ProviderMapping>().Property<byte[]>("Timestamp").IsConcurrencyToken();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Rating>()
- .ToTable("Rating")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Rating>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Rating>()
- .Property(t => t.Value)
- .IsRequired()
- .HasField("_Value")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Rating>()
- .Property(t => t.Votes)
- .HasField("_Votes")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Rating>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Rating>()
- .HasOne(x => x.RatingType)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.Rating>("RatingSource_RatingType_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.RatingSource>()
- .ToTable("RatingType")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.RatingSource>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.RatingSource>()
- .Property(t => t.Name)
- .HasMaxLength(1024)
- .HasField("_Name")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.RatingSource>()
- .Property(t => t.MaximumValue)
- .IsRequired()
- .HasField("_MaximumValue")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.RatingSource>()
- .Property(t => t.MinimumValue)
- .IsRequired()
- .HasField("_MinimumValue")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.RatingSource>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.RatingSource>()
- .HasOne(x => x.Source)
- .WithOne()
- .HasForeignKey<global::Jellyfin.Data.Entities.RatingSource>("MetadataProviderId_Source_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Release>()
- .ToTable("Release")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Release>()
- .Property(t => t.Id)
- .IsRequired()
- .HasField("_Id")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Release>()
- .Property(t => t.Name)
- .HasMaxLength(1024)
- .IsRequired()
- .HasField("_Name")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Release>()
- .Property(t => t.Timestamp)
- .IsRequired()
- .HasField("_Timestamp")
- .UsePropertyAccessMode(PropertyAccessMode.Property)
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Release>()
- .HasMany(x => x.MediaFiles)
- .WithOne()
- .HasForeignKey("MediaFile_MediaFiles_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Release>()
- .HasMany(x => x.Chapters)
- .WithOne()
- .HasForeignKey("Chapter_Chapters_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Season>()
- .Property(t => t.SeasonNumber)
- .HasField("_SeasonNumber")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Season>()
- .HasMany(x => x.SeasonMetadata)
- .WithOne()
- .HasForeignKey("SeasonMetadata_SeasonMetadata_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Season>()
- .HasMany(x => x.Episodes)
- .WithOne()
- .HasForeignKey("Episode_Episodes_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.SeasonMetadata>()
- .Property(t => t.Outline)
- .HasMaxLength(1024)
- .HasField("_Outline")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Series>()
- .Property(t => t.AirsDayOfWeek)
- .HasField("_AirsDayOfWeek")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Series>()
- .Property(t => t.AirsTime)
- .HasField("_AirsTime")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Series>()
- .Property(t => t.FirstAired)
- .HasField("_FirstAired")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Series>()
- .HasMany(x => x.SeriesMetadata)
- .WithOne()
- .HasForeignKey("SeriesMetadata_SeriesMetadata_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Series>()
- .HasMany(x => x.Seasons)
- .WithOne()
- .HasForeignKey("Season_Seasons_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.SeriesMetadata>()
- .Property(t => t.Outline)
- .HasMaxLength(1024)
- .HasField("_Outline")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.SeriesMetadata>()
- .Property(t => t.Plot)
- .HasMaxLength(65535)
- .HasField("_Plot")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.SeriesMetadata>()
- .Property(t => t.Tagline)
- .HasMaxLength(1024)
- .HasField("_Tagline")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.SeriesMetadata>()
- .Property(t => t.Country)
- .HasMaxLength(2)
- .HasField("_Country")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.SeriesMetadata>()
- .HasMany(x => x.Networks)
- .WithOne()
- .HasForeignKey("Company_Networks_Id")
- .IsRequired();
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Track>()
- .Property(t => t.TrackNumber)
- .HasField("_TrackNumber")
- .UsePropertyAccessMode(PropertyAccessMode.Property);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Track>()
- .HasMany(x => x.Releases)
- .WithOne()
- .HasForeignKey("Release_Releases_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.Track>()
- .HasMany(x => x.TrackMetadata)
- .WithOne()
- .HasForeignKey("TrackMetadata_TrackMetadata_Id")
- .IsRequired();
-
-
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .ToTable("Users")
- .HasKey(t => t.Id);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.Id)
- .IsRequired()
- .ValueGeneratedOnAdd();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.LastLoginTimestamp)
- .IsRequired()
- .IsRowVersion();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.Username)
- .HasMaxLength(255)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.Password)
- .HasMaxLength(65535);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.MustUpdatePassword)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.AudioLanguagePreference)
- .HasMaxLength(255)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.AuthenticationProviderId)
- .HasMaxLength(255)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.GroupedFolders)
- .HasMaxLength(65535);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.InvalidLoginAttemptCount)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.LatestItemExcludes)
- .HasMaxLength(65535);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.MyMediaExcludes)
- .HasMaxLength(65535);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.OrderedViews)
- .HasMaxLength(65535);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.SubtitleMode)
- .HasMaxLength(255)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.PlayDefaultAudioTrack)
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .Property(t => t.SubtitleLanguagePrefernce)
- .HasMaxLength(255);
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .HasMany(x => x.Groups)
- .WithOne()
- .HasForeignKey("Group_Groups_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .HasMany(x => x.Permissions)
- .WithOne()
- .HasForeignKey("Permission_Permissions_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .HasMany(x => x.ProviderMappings)
- .WithOne()
- .HasForeignKey("ProviderMapping_ProviderMappings_Id")
- .IsRequired();
- modelBuilder.Entity<global::Jellyfin.Data.Entities.User>()
- .HasMany(x => x.Preferences)
- .WithOne()
- .HasForeignKey("Preference_Preferences_Id")
- .IsRequired();
-
- OnModelCreatedImpl(modelBuilder);
- }
- }
-}
diff --git a/Jellyfin.Data/Entities/Artwork.cs b/Jellyfin.Data/Entities/Artwork.cs
index da31d686e..bf3029368 100644
--- a/Jellyfin.Data/Entities/Artwork.cs
+++ b/Jellyfin.Data/Entities/Artwork.cs
@@ -1,15 +1,8 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
-using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Artwork")]
public partial class Artwork
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Book.cs b/Jellyfin.Data/Entities/Book.cs
index 7dda26f41..42d24e31d 100644
--- a/Jellyfin.Data/Entities/Book.cs
+++ b/Jellyfin.Data/Entities/Book.cs
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Book")]
public partial class Book : LibraryItem
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected Book() : base()
+ protected Book()
{
BookMetadata = new HashSet<BookMetadata>();
Releases = new HashSet<Release>();
diff --git a/Jellyfin.Data/Entities/BookMetadata.cs b/Jellyfin.Data/Entities/BookMetadata.cs
index 8afd37163..d52fe7605 100644
--- a/Jellyfin.Data/Entities/BookMetadata.cs
+++ b/Jellyfin.Data/Entities/BookMetadata.cs
@@ -1,11 +1,6 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
@@ -16,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected BookMetadata() : base()
+ protected BookMetadata()
{
Publishers = new HashSet<Company>();
diff --git a/Jellyfin.Data/Entities/Chapter.cs b/Jellyfin.Data/Entities/Chapter.cs
index 1ee6a9c07..d48cb9b62 100644
--- a/Jellyfin.Data/Entities/Chapter.cs
+++ b/Jellyfin.Data/Entities/Chapter.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Chapter")]
public partial class Chapter
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Collection.cs b/Jellyfin.Data/Entities/Collection.cs
index d3ccb13f5..e2fa3a5bd 100644
--- a/Jellyfin.Data/Entities/Collection.cs
+++ b/Jellyfin.Data/Entities/Collection.cs
@@ -1,15 +1,9 @@
-using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Collection")]
public partial class Collection
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/CollectionItem.cs b/Jellyfin.Data/Entities/CollectionItem.cs
index f40158b20..4a3d06639 100644
--- a/Jellyfin.Data/Entities/CollectionItem.cs
+++ b/Jellyfin.Data/Entities/CollectionItem.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("CollectionItem")]
public partial class CollectionItem
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Company.cs b/Jellyfin.Data/Entities/Company.cs
index 5b8a21423..0650271c6 100644
--- a/Jellyfin.Data/Entities/Company.cs
+++ b/Jellyfin.Data/Entities/Company.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Company")]
public partial class Company
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/CompanyMetadata.cs b/Jellyfin.Data/Entities/CompanyMetadata.cs
index 18357b326..b3ec9c1a7 100644
--- a/Jellyfin.Data/Entities/CompanyMetadata.cs
+++ b/Jellyfin.Data/Entities/CompanyMetadata.cs
@@ -1,15 +1,8 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
-using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("CompanyMetadata")]
public partial class CompanyMetadata : Metadata
{
partial void Init();
@@ -17,7 +10,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected CompanyMetadata() : base()
+ protected CompanyMetadata()
{
Init();
}
diff --git a/Jellyfin.Data/Entities/CustomItem.cs b/Jellyfin.Data/Entities/CustomItem.cs
index 29f4b62a6..2006717bf 100644
--- a/Jellyfin.Data/Entities/CustomItem.cs
+++ b/Jellyfin.Data/Entities/CustomItem.cs
@@ -1,11 +1,6 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
@@ -16,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected CustomItem() : base()
+ protected CustomItem()
{
CustomItemMetadata = new HashSet<CustomItemMetadata>();
Releases = new HashSet<Release>();
diff --git a/Jellyfin.Data/Entities/CustomItemMetadata.cs b/Jellyfin.Data/Entities/CustomItemMetadata.cs
index 8fbccfdd8..e09e4467a 100644
--- a/Jellyfin.Data/Entities/CustomItemMetadata.cs
+++ b/Jellyfin.Data/Entities/CustomItemMetadata.cs
@@ -1,15 +1,7 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
-using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("CustomItemMetadata")]
public partial class CustomItemMetadata : Metadata
{
partial void Init();
@@ -17,7 +9,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected CustomItemMetadata() : base()
+ protected CustomItemMetadata()
{
Init();
}
diff --git a/Jellyfin.Data/Entities/Episode.cs b/Jellyfin.Data/Entities/Episode.cs
index be358a0fd..6f6baa14d 100644
--- a/Jellyfin.Data/Entities/Episode.cs
+++ b/Jellyfin.Data/Entities/Episode.cs
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Episode")]
public partial class Episode : LibraryItem
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected Episode() : base()
+ protected Episode()
{
// NOTE: This class has one-to-one associations with LibraryRoot, LibraryItem and CollectionItem.
// One-to-one associations are not validated in constructors since this causes a scenario where each one must be constructed before the other.
diff --git a/Jellyfin.Data/Entities/EpisodeMetadata.cs b/Jellyfin.Data/Entities/EpisodeMetadata.cs
index a1f4adf7b..e5431bf22 100644
--- a/Jellyfin.Data/Entities/EpisodeMetadata.cs
+++ b/Jellyfin.Data/Entities/EpisodeMetadata.cs
@@ -1,15 +1,8 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
-using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("EpisodeMetadata")]
public partial class EpisodeMetadata : Metadata
{
partial void Init();
@@ -17,7 +10,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected EpisodeMetadata() : base()
+ protected EpisodeMetadata()
{
Init();
}
diff --git a/Jellyfin.Data/Entities/Genre.cs b/Jellyfin.Data/Entities/Genre.cs
index d38265d80..38f289a8e 100644
--- a/Jellyfin.Data/Entities/Genre.cs
+++ b/Jellyfin.Data/Entities/Genre.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Genre")]
public partial class Genre
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Group.cs b/Jellyfin.Data/Entities/Group.cs
index 4b58120fc..54f9f4905 100644
--- a/Jellyfin.Data/Entities/Group.cs
+++ b/Jellyfin.Data/Entities/Group.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Group")]
public partial class Group
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Library.cs b/Jellyfin.Data/Entities/Library.cs
index f3faa8699..c11c09e91 100644
--- a/Jellyfin.Data/Entities/Library.cs
+++ b/Jellyfin.Data/Entities/Library.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Library")]
public partial class Library
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/LibraryItem.cs b/Jellyfin.Data/Entities/LibraryItem.cs
index 29547562b..af6c640b9 100644
--- a/Jellyfin.Data/Entities/LibraryItem.cs
+++ b/Jellyfin.Data/Entities/LibraryItem.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("LibraryItem")]
public abstract partial class LibraryItem
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/LibraryRoot.cs b/Jellyfin.Data/Entities/LibraryRoot.cs
index 932e3edb8..bbc23e1c9 100644
--- a/Jellyfin.Data/Entities/LibraryRoot.cs
+++ b/Jellyfin.Data/Entities/LibraryRoot.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("LibraryRoot")]
public partial class LibraryRoot
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/MediaFile.cs b/Jellyfin.Data/Entities/MediaFile.cs
index dbb65a6f7..719539e5c 100644
--- a/Jellyfin.Data/Entities/MediaFile.cs
+++ b/Jellyfin.Data/Entities/MediaFile.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("MediaFile")]
public partial class MediaFile
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/MediaFileStream.cs b/Jellyfin.Data/Entities/MediaFileStream.cs
index 3ce18b8d7..7b3399731 100644
--- a/Jellyfin.Data/Entities/MediaFileStream.cs
+++ b/Jellyfin.Data/Entities/MediaFileStream.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("MediaFileStream")]
public partial class MediaFileStream
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Metadata.cs b/Jellyfin.Data/Entities/Metadata.cs
index 5cba24ee3..467ee6822 100644
--- a/Jellyfin.Data/Entities/Metadata.cs
+++ b/Jellyfin.Data/Entities/Metadata.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Metadata")]
public abstract partial class Metadata
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/MetadataProvider.cs b/Jellyfin.Data/Entities/MetadataProvider.cs
index bc6e04277..4e4f107fb 100644
--- a/Jellyfin.Data/Entities/MetadataProvider.cs
+++ b/Jellyfin.Data/Entities/MetadataProvider.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("MetadataProvider")]
public partial class MetadataProvider
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/MetadataProviderId.cs b/Jellyfin.Data/Entities/MetadataProviderId.cs
index d381856f3..926f223de 100644
--- a/Jellyfin.Data/Entities/MetadataProviderId.cs
+++ b/Jellyfin.Data/Entities/MetadataProviderId.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("MetadataProviderId")]
public partial class MetadataProviderId
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Movie.cs b/Jellyfin.Data/Entities/Movie.cs
index 23a340b1b..b359b42fc 100644
--- a/Jellyfin.Data/Entities/Movie.cs
+++ b/Jellyfin.Data/Entities/Movie.cs
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Movie")]
public partial class Movie : LibraryItem
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected Movie() : base()
+ protected Movie()
{
Releases = new HashSet<Release>();
MovieMetadata = new HashSet<MovieMetadata>();
diff --git a/Jellyfin.Data/Entities/MovieMetadata.cs b/Jellyfin.Data/Entities/MovieMetadata.cs
index 090761877..319ae94e5 100644
--- a/Jellyfin.Data/Entities/MovieMetadata.cs
+++ b/Jellyfin.Data/Entities/MovieMetadata.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("MovieMetadata")]
public partial class MovieMetadata : Metadata
{
partial void Init();
@@ -17,7 +12,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected MovieMetadata() : base()
+ protected MovieMetadata()
{
Studios = new HashSet<Company>();
diff --git a/Jellyfin.Data/Entities/MusicAlbum.cs b/Jellyfin.Data/Entities/MusicAlbum.cs
index fc9c12286..00cb8fe00 100644
--- a/Jellyfin.Data/Entities/MusicAlbum.cs
+++ b/Jellyfin.Data/Entities/MusicAlbum.cs
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("MusicAlbum")]
public partial class MusicAlbum : LibraryItem
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected MusicAlbum() : base()
+ protected MusicAlbum()
{
MusicAlbumMetadata = new HashSet<MusicAlbumMetadata>();
Tracks = new HashSet<Track>();
diff --git a/Jellyfin.Data/Entities/MusicAlbumMetadata.cs b/Jellyfin.Data/Entities/MusicAlbumMetadata.cs
index 4bfe780d1..b52ca6564 100644
--- a/Jellyfin.Data/Entities/MusicAlbumMetadata.cs
+++ b/Jellyfin.Data/Entities/MusicAlbumMetadata.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("MusicAlbumMetadata")]
public partial class MusicAlbumMetadata : Metadata
{
partial void Init();
@@ -17,7 +12,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected MusicAlbumMetadata() : base()
+ protected MusicAlbumMetadata()
{
Labels = new HashSet<Company>();
diff --git a/Jellyfin.Data/Entities/Permission.cs b/Jellyfin.Data/Entities/Permission.cs
index 29ba9e1a4..0b5b52cbd 100644
--- a/Jellyfin.Data/Entities/Permission.cs
+++ b/Jellyfin.Data/Entities/Permission.cs
@@ -1,15 +1,11 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Permission")]
public partial class Permission
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Person.cs b/Jellyfin.Data/Entities/Person.cs
index 6a4ad5285..d893b7e39 100644
--- a/Jellyfin.Data/Entities/Person.cs
+++ b/Jellyfin.Data/Entities/Person.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Person")]
public partial class Person
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/PersonRole.cs b/Jellyfin.Data/Entities/PersonRole.cs
index 0c6cb2c6e..9bd12c7fb 100644
--- a/Jellyfin.Data/Entities/PersonRole.cs
+++ b/Jellyfin.Data/Entities/PersonRole.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("PersonRole")]
public partial class PersonRole
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Photo.cs b/Jellyfin.Data/Entities/Photo.cs
index 89f976444..7abe62891 100644
--- a/Jellyfin.Data/Entities/Photo.cs
+++ b/Jellyfin.Data/Entities/Photo.cs
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Photo")]
public partial class Photo : LibraryItem
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected Photo() : base()
+ protected Photo()
{
PhotoMetadata = new HashSet<PhotoMetadata>();
Releases = new HashSet<Release>();
diff --git a/Jellyfin.Data/Entities/PhotoMetadata.cs b/Jellyfin.Data/Entities/PhotoMetadata.cs
index b3f796839..c5502f707 100644
--- a/Jellyfin.Data/Entities/PhotoMetadata.cs
+++ b/Jellyfin.Data/Entities/PhotoMetadata.cs
@@ -1,15 +1,8 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("PhotoMetadata")]
public partial class PhotoMetadata : Metadata
{
partial void Init();
@@ -17,7 +10,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected PhotoMetadata() : base()
+ protected PhotoMetadata()
{
Init();
}
diff --git a/Jellyfin.Data/Entities/Preference.cs b/Jellyfin.Data/Entities/Preference.cs
index 8b3ddb568..505f52e6b 100644
--- a/Jellyfin.Data/Entities/Preference.cs
+++ b/Jellyfin.Data/Entities/Preference.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Preference")]
public partial class Preference
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/ProviderMapping.cs b/Jellyfin.Data/Entities/ProviderMapping.cs
index 0eb098a8f..6197bd97b 100644
--- a/Jellyfin.Data/Entities/ProviderMapping.cs
+++ b/Jellyfin.Data/Entities/ProviderMapping.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("ProviderMapping")]
public partial class ProviderMapping
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Rating.cs b/Jellyfin.Data/Entities/Rating.cs
index 46e8c3f11..f70ea8b33 100644
--- a/Jellyfin.Data/Entities/Rating.cs
+++ b/Jellyfin.Data/Entities/Rating.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Rating")]
public partial class Rating
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/RatingSource.cs b/Jellyfin.Data/Entities/RatingSource.cs
index 7e60fac43..070f1ae27 100644
--- a/Jellyfin.Data/Entities/RatingSource.cs
+++ b/Jellyfin.Data/Entities/RatingSource.cs
@@ -1,18 +1,12 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
/// <summary>
/// This is the entity to store review ratings, not age ratings
/// </summary>
- [Table("RatingSource")]
public partial class RatingSource
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Release.cs b/Jellyfin.Data/Entities/Release.cs
index 91dd35a7f..d1928fcf7 100644
--- a/Jellyfin.Data/Entities/Release.cs
+++ b/Jellyfin.Data/Entities/Release.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Release")]
public partial class Release
{
partial void Init();
diff --git a/Jellyfin.Data/Entities/Season.cs b/Jellyfin.Data/Entities/Season.cs
index 3928a4ba6..96e89cde0 100644
--- a/Jellyfin.Data/Entities/Season.cs
+++ b/Jellyfin.Data/Entities/Season.cs
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Season")]
public partial class Season : LibraryItem
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected Season() : base()
+ protected Season()
{
// NOTE: This class has one-to-one associations with LibraryRoot, LibraryItem and CollectionItem.
// One-to-one associations are not validated in constructors since this causes a scenario where each one must be constructed before the other.
diff --git a/Jellyfin.Data/Entities/SeasonMetadata.cs b/Jellyfin.Data/Entities/SeasonMetadata.cs
index f0e669a49..64ecbfbfa 100644
--- a/Jellyfin.Data/Entities/SeasonMetadata.cs
+++ b/Jellyfin.Data/Entities/SeasonMetadata.cs
@@ -1,15 +1,9 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("SeasonMetadata")]
public partial class SeasonMetadata : Metadata
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected SeasonMetadata() : base()
+ protected SeasonMetadata()
{
Init();
}
diff --git a/Jellyfin.Data/Entities/Series.cs b/Jellyfin.Data/Entities/Series.cs
index fecc229af..097b9958e 100644
--- a/Jellyfin.Data/Entities/Series.cs
+++ b/Jellyfin.Data/Entities/Series.cs
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Series")]
public partial class Series : LibraryItem
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected Series() : base()
+ protected Series()
{
SeriesMetadata = new HashSet<SeriesMetadata>();
Seasons = new HashSet<Season>();
diff --git a/Jellyfin.Data/Entities/SeriesMetadata.cs b/Jellyfin.Data/Entities/SeriesMetadata.cs
index 15818f941..52691783f 100644
--- a/Jellyfin.Data/Entities/SeriesMetadata.cs
+++ b/Jellyfin.Data/Entities/SeriesMetadata.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("SeriesMetadata")]
public partial class SeriesMetadata : Metadata
{
partial void Init();
@@ -17,7 +12,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected SeriesMetadata() : base()
+ protected SeriesMetadata()
{
Networks = new HashSet<Company>();
diff --git a/Jellyfin.Data/Entities/Track.cs b/Jellyfin.Data/Entities/Track.cs
index 50ee43042..079d73d2b 100644
--- a/Jellyfin.Data/Entities/Track.cs
+++ b/Jellyfin.Data/Entities/Track.cs
@@ -1,15 +1,9 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("Track")]
public partial class Track : LibraryItem
{
partial void Init();
@@ -17,7 +11,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected Track() : base()
+ protected Track()
{
// NOTE: This class has one-to-one associations with LibraryRoot, LibraryItem and CollectionItem.
// One-to-one associations are not validated in constructors since this causes a scenario where each one must be constructed before the other.
diff --git a/Jellyfin.Data/Entities/TrackMetadata.cs b/Jellyfin.Data/Entities/TrackMetadata.cs
index 84679ebb5..86c9161f6 100644
--- a/Jellyfin.Data/Entities/TrackMetadata.cs
+++ b/Jellyfin.Data/Entities/TrackMetadata.cs
@@ -1,15 +1,8 @@
using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("TrackMetadata")]
public partial class TrackMetadata : Metadata
{
partial void Init();
@@ -17,7 +10,7 @@ namespace Jellyfin.Data.Entities
/// <summary>
/// Default constructor. Protected due to required properties, but present because EF needs it.
/// </summary>
- protected TrackMetadata() : base()
+ protected TrackMetadata()
{
Init();
}
diff --git a/Jellyfin.Data/Entities/User.cs b/Jellyfin.Data/Entities/User.cs
index 715969dbf..a81d5215b 100644
--- a/Jellyfin.Data/Entities/User.cs
+++ b/Jellyfin.Data/Entities/User.cs
@@ -1,15 +1,10 @@
using System;
using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
-using System.Linq;
-using System.Runtime.CompilerServices;
namespace Jellyfin.Data.Entities
{
- [Table("User")]
public partial class User
{
partial void Init();
diff --git a/Jellyfin.Data/Enums/ArtKind.cs b/Jellyfin.Data/Enums/ArtKind.cs
index 546e1533c..6b69d68b2 100644
--- a/Jellyfin.Data/Enums/ArtKind.cs
+++ b/Jellyfin.Data/Enums/ArtKind.cs
@@ -1,8 +1,6 @@
-using System;
-
namespace Jellyfin.Data.Enums
{
- public enum ArtKind : Int32
+ public enum ArtKind
{
Other,
Poster,
diff --git a/Jellyfin.Data/Enums/MediaFileKind.cs b/Jellyfin.Data/Enums/MediaFileKind.cs
index d24920228..12f48c558 100644
--- a/Jellyfin.Data/Enums/MediaFileKind.cs
+++ b/Jellyfin.Data/Enums/MediaFileKind.cs
@@ -1,8 +1,6 @@
-using System;
-
namespace Jellyfin.Data.Enums
{
- public enum MediaFileKind : Int32
+ public enum MediaFileKind
{
Main,
Sidecar,
diff --git a/Jellyfin.Data/Enums/PermissionKind.cs b/Jellyfin.Data/Enums/PermissionKind.cs
index 4447fdb77..1506471e8 100644
--- a/Jellyfin.Data/Enums/PermissionKind.cs
+++ b/Jellyfin.Data/Enums/PermissionKind.cs
@@ -1,8 +1,6 @@
-using System;
-
namespace Jellyfin.Data.Enums
{
- public enum PermissionKind : Int32
+ public enum PermissionKind
{
IsAdministrator,
IsHidden,
diff --git a/Jellyfin.Data/Enums/PersonRoleType.cs b/Jellyfin.Data/Enums/PersonRoleType.cs
index 5621ffa4d..6e52f2c85 100644
--- a/Jellyfin.Data/Enums/PersonRoleType.cs
+++ b/Jellyfin.Data/Enums/PersonRoleType.cs
@@ -1,8 +1,6 @@
-using System;
-
namespace Jellyfin.Data.Enums
{
- public enum PersonRoleType : Int32
+ public enum PersonRoleType
{
Other,
Director,
diff --git a/Jellyfin.Data/Enums/PreferenceKind.cs b/Jellyfin.Data/Enums/PreferenceKind.cs
index e66a51cae..cd2cb791a 100644
--- a/Jellyfin.Data/Enums/PreferenceKind.cs
+++ b/Jellyfin.Data/Enums/PreferenceKind.cs
@@ -1,8 +1,6 @@
-using System;
-
namespace Jellyfin.Data.Enums
{
- public enum PreferenceKind : Int32
+ public enum PreferenceKind
{
MaxParentalRating,
BlockedTags,
diff --git a/Jellyfin.Data/Enums/Weekday.cs b/Jellyfin.Data/Enums/Weekday.cs
index 58523a6c7..b80a03a33 100644
--- a/Jellyfin.Data/Enums/Weekday.cs
+++ b/Jellyfin.Data/Enums/Weekday.cs
@@ -1,8 +1,6 @@
-using System;
-
namespace Jellyfin.Data.Enums
{
- public enum Weekday : Int32
+ public enum Weekday
{
Sunday,
Monday,
diff --git a/Jellyfin.Data/ISavingChanges.cs b/Jellyfin.Data/ISavingChanges.cs
new file mode 100644
index 000000000..f392dae6a
--- /dev/null
+++ b/Jellyfin.Data/ISavingChanges.cs
@@ -0,0 +1,9 @@
+#pragma warning disable CS1591
+
+namespace Jellyfin.Data
+{
+ public interface ISavingChanges
+ {
+ void OnSavingChanges();
+ }
+}
diff --git a/Jellyfin.Server.Implementations/Jellyfin.Server.Implementations.csproj b/Jellyfin.Server.Implementations/Jellyfin.Server.Implementations.csproj
new file mode 100644
index 000000000..a31f28f64
--- /dev/null
+++ b/Jellyfin.Server.Implementations/Jellyfin.Server.Implementations.csproj
@@ -0,0 +1,34 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+ <PropertyGroup>
+ <TargetFramework>netcoreapp3.1</TargetFramework>
+ <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
+ <GenerateDocumentationFile>true</GenerateDocumentationFile>
+ <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
+ </PropertyGroup>
+
+ <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
+ <CodeAnalysisRuleSet>../jellyfin.ruleset</CodeAnalysisRuleSet>
+ </PropertyGroup>
+
+ <!-- Code analysers-->
+ <ItemGroup Condition=" '$(Configuration)' == 'Debug' ">
+ <PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.8" PrivateAssets="All" />
+ <PackageReference Include="SerilogAnalyzer" Version="0.15.0" PrivateAssets="All" />
+ <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="All" />
+ <PackageReference Include="SmartAnalyzers.MultithreadingAnalyzer" Version="1.1.31" PrivateAssets="All" />
+ </ItemGroup>
+
+ <ItemGroup>
+ <Compile Include="..\SharedVersion.cs" />
+ <Compile Remove="Migrations\20200430214405_InitialSchema.cs" />
+ <Compile Remove="Migrations\20200430214405_InitialSchema.Designer.cs" />
+ </ItemGroup>
+
+ <ItemGroup>
+ <ProjectReference Include="..\Jellyfin.Data\Jellyfin.Data.csproj" />
+ <ProjectReference Include="..\MediaBrowser.Controller\MediaBrowser.Controller.csproj" />
+ <ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
+ </ItemGroup>
+
+</Project>
diff --git a/Jellyfin.Server.Implementations/JellyfinDb.cs b/Jellyfin.Server.Implementations/JellyfinDb.cs
new file mode 100644
index 000000000..76343edf9
--- /dev/null
+++ b/Jellyfin.Server.Implementations/JellyfinDb.cs
@@ -0,0 +1,115 @@
+#pragma warning disable CS1591
+#pragma warning disable SA1201 // Constuctors should not follow properties
+#pragma warning disable SA1516 // Elements should be followed by a blank line
+#pragma warning disable SA1623 // Property's documentation should begin with gets or sets
+#pragma warning disable SA1629 // Documentation should end with a period
+#pragma warning disable SA1648 // Inheritdoc should be used with inheriting class
+
+using System.Linq;
+using Jellyfin.Data;
+using Jellyfin.Data.Entities;
+using Microsoft.EntityFrameworkCore;
+
+namespace Jellyfin.Server.Implementations
+{
+ /// <inheritdoc/>
+ public partial class JellyfinDb : DbContext
+ {
+ /*public virtual DbSet<Artwork> Artwork { get; set; }
+ public virtual DbSet<Book> Books { get; set; }
+ public virtual DbSet<BookMetadata> BookMetadata { get; set; }
+ public virtual DbSet<Chapter> Chapters { get; set; }
+ public virtual DbSet<Collection> Collections { get; set; }
+ public virtual DbSet<CollectionItem> CollectionItems { get; set; }
+ public virtual DbSet<Company> Companies { get; set; }
+ public virtual DbSet<CompanyMetadata> CompanyMetadata { get; set; }
+ public virtual DbSet<CustomItem> CustomItems { get; set; }
+ public virtual DbSet<CustomItemMetadata> CustomItemMetadata { get; set; }
+ public virtual DbSet<Episode> Episodes { get; set; }
+ public virtual DbSet<EpisodeMetadata> EpisodeMetadata { get; set; }
+ public virtual DbSet<Genre> Genres { get; set; }
+ public virtual DbSet<Group> Groups { get; set; }
+ public virtual DbSet<Library> Libraries { get; set; }
+ public virtual DbSet<LibraryItem> LibraryItems { get; set; }
+ public virtual DbSet<LibraryRoot> LibraryRoot { get; set; }
+ public virtual DbSet<MediaFile> MediaFiles { get; set; }
+ public virtual DbSet<MediaFileStream> MediaFileStream { get; set; }
+ public virtual DbSet<Metadata> Metadata { get; set; }
+ public virtual DbSet<MetadataProvider> MetadataProviders { get; set; }
+ public virtual DbSet<MetadataProviderId> MetadataProviderIds { get; set; }
+ public virtual DbSet<Movie> Movies { get; set; }
+ public virtual DbSet<MovieMetadata> MovieMetadata { get; set; }
+ public virtual DbSet<MusicAlbum> MusicAlbums { get; set; }
+ public virtual DbSet<MusicAlbumMetadata> MusicAlbumMetadata { get; set; }
+ public virtual DbSet<Permission> Permissions { get; set; }
+ public virtual DbSet<Person> People { get; set; }
+ public virtual DbSet<PersonRole> PersonRoles { get; set; }
+ public virtual DbSet<Photo> Photo { get; set; }
+ public virtual DbSet<PhotoMetadata> PhotoMetadata { get; set; }
+ public virtual DbSet<Preference> Preferences { get; set; }
+ public virtual DbSet<ProviderMapping> ProviderMappings { get; set; }
+ public virtual DbSet<Rating> Ratings { get; set; }
+ /// <summary>
+ /// Repository for global::Jellyfin.Data.Entities.RatingSource - This is the entity to
+ /// store review ratings, not age ratings
+ /// </summary>
+ public virtual DbSet<RatingSource> RatingSources { get; set; }
+ public virtual DbSet<Release> Releases { get; set; }
+ public virtual DbSet<Season> Seasons { get; set; }
+ public virtual DbSet<SeasonMetadata> SeasonMetadata { get; set; }
+ public virtual DbSet<Series> Series { get; set; }
+ public virtual DbSet<SeriesMetadata> SeriesMetadata { get; set; }
+ public virtual DbSet<Track> Tracks { get; set; }
+ public virtual DbSet<TrackMetadata> TrackMetadata { get; set; }
+ public virtual DbSet<User> Users { get; set; } */
+
+ /// <summary>
+ /// Gets or sets the default connection string.
+ /// </summary>
+ public static string ConnectionString { get; set; } = @"Data Source=jellyfin.db";
+
+ /// <inheritdoc />
+ public JellyfinDb(DbContextOptions<JellyfinDb> options) : base(options)
+ {
+ }
+
+ partial void CustomInit(DbContextOptionsBuilder optionsBuilder);
+
+ /// <inheritdoc />
+ protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
+ {
+ CustomInit(optionsBuilder);
+ }
+
+ partial void OnModelCreatingImpl(ModelBuilder modelBuilder);
+ partial void OnModelCreatedImpl(ModelBuilder modelBuilder);
+
+ /// <inheritdoc />
+ protected override void OnModelCreating(ModelBuilder modelBuilder)
+ {
+ base.OnModelCreating(modelBuilder);
+ OnModelCreatingImpl(modelBuilder);
+
+ modelBuilder.HasDefaultSchema("jellyfin");
+
+ /*modelBuilder.Entity<Artwork>().HasIndex(t => t.Kind);
+ modelBuilder.Entity<Genre>().HasIndex(t => t.Name)
+ .IsUnique();
+ modelBuilder.Entity<LibraryItem>().HasIndex(t => t.UrlId)
+ .IsUnique();*/
+
+ OnModelCreatedImpl(modelBuilder);
+ }
+
+ public override int SaveChanges()
+ {
+ foreach (var entity in ChangeTracker.Entries().Where(e => e.State == EntityState.Modified))
+ {
+ var saveEntity = entity.Entity as ISavingChanges;
+ saveEntity.OnSavingChanges();
+ }
+
+ return base.SaveChanges();
+ }
+ }
+}
diff --git a/MediaBrowser.sln b/MediaBrowser.sln
index a1dbe8047..a514d2e2b 100644
--- a/MediaBrowser.sln
+++ b/MediaBrowser.sln
@@ -64,6 +64,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfin.Controller.Tests",
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfin.Data", "Jellyfin.Data\Jellyfin.Data.csproj", "{F03299F2-469F-40EF-A655-3766F97A5702}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jellyfin.Server.Implementations", "Jellyfin.Server.Implementations\Jellyfin.Server.Implementations.csproj", "{22C7DA3A-94F2-4E86-9CE6-86AB02B4F843}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -182,6 +184,10 @@ Global
{F03299F2-469F-40EF-A655-3766F97A5702}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F03299F2-469F-40EF-A655-3766F97A5702}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F03299F2-469F-40EF-A655-3766F97A5702}.Release|Any CPU.Build.0 = Release|Any CPU
+ {22C7DA3A-94F2-4E86-9CE6-86AB02B4F843}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {22C7DA3A-94F2-4E86-9CE6-86AB02B4F843}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {22C7DA3A-94F2-4E86-9CE6-86AB02B4F843}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {22C7DA3A-94F2-4E86-9CE6-86AB02B4F843}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE