// using System; using FictionArchive.Service.NovelService.Services; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using NodaTime; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace FictionArchive.Service.NovelService.Migrations { [DbContext(typeof(NovelServiceDbContext))] partial class NovelServiceDbContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "9.0.11") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); b.ToTable("LocalizationKeys"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Localization.LocalizationRequest", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("EngineId") .HasColumnType("bigint"); b.Property("KeyRequestedForTranslationId") .HasColumnType("uuid"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.Property("TranslateTo") .HasColumnType("integer"); b.HasKey("Id"); b.HasIndex("EngineId"); b.HasIndex("KeyRequestedForTranslationId"); b.ToTable("LocalizationRequests"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Localization.LocalizationText", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("Language") .HasColumnType("integer"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.Property("LocalizationKeyId") .HasColumnType("uuid"); b.Property("Text") .IsRequired() .HasColumnType("text"); b.Property("TranslationEngineId") .HasColumnType("bigint"); b.HasKey("Id"); b.HasIndex("LocalizationKeyId"); b.HasIndex("TranslationEngineId"); b.ToTable("LocalizationText"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.Chapter", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("BodyId") .HasColumnType("uuid"); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.Property("NameId") .HasColumnType("uuid"); b.Property("NovelId") .HasColumnType("bigint"); b.Property("Order") .HasColumnType("bigint"); b.Property("Revision") .HasColumnType("bigint"); b.Property("Url") .HasColumnType("text"); b.HasKey("Id"); b.HasIndex("BodyId"); b.HasIndex("NameId"); b.HasIndex("NovelId"); b.ToTable("Chapter"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.Novel", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("AuthorId") .HasColumnType("bigint"); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("DescriptionId") .HasColumnType("uuid"); b.Property("ExternalId") .IsRequired() .HasColumnType("text"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.Property("NameId") .HasColumnType("uuid"); b.Property("RawLanguage") .HasColumnType("integer"); b.Property("RawStatus") .HasColumnType("integer"); b.Property("SourceId") .HasColumnType("bigint"); b.Property("StatusOverride") .HasColumnType("integer"); b.Property("Url") .IsRequired() .HasColumnType("text"); b.HasKey("Id"); b.HasIndex("AuthorId"); b.HasIndex("DescriptionId"); b.HasIndex("NameId"); b.HasIndex("SourceId"); b.ToTable("Novels"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.NovelTag", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("DisplayNameId") .HasColumnType("uuid"); b.Property("Key") .IsRequired() .HasColumnType("text"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.Property("SourceId") .HasColumnType("bigint"); b.Property("TagType") .HasColumnType("integer"); b.HasKey("Id"); b.HasIndex("DisplayNameId"); b.HasIndex("SourceId"); b.ToTable("Tags"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.Person", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("ExternalUrl") .HasColumnType("text"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.Property("NameId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("NameId"); b.ToTable("Person"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.Source", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("Key") .IsRequired() .HasColumnType("text"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.Property("Url") .IsRequired() .HasColumnType("text"); b.HasKey("Id"); b.ToTable("Sources"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.TranslationEngine", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("CreatedTime") .HasColumnType("timestamp with time zone"); b.Property("Key") .IsRequired() .HasColumnType("text"); b.Property("LastUpdatedTime") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); b.ToTable("TranslationEngines"); }); modelBuilder.Entity("NovelNovelTag", b => { b.Property("NovelsId") .HasColumnType("bigint"); b.Property("TagsId") .HasColumnType("bigint"); b.HasKey("NovelsId", "TagsId"); b.HasIndex("TagsId"); b.ToTable("NovelNovelTag"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Localization.LocalizationRequest", b => { b.HasOne("FictionArchive.Service.NovelService.Models.Novels.TranslationEngine", "Engine") .WithMany() .HasForeignKey("EngineId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", "KeyRequestedForTranslation") .WithMany() .HasForeignKey("KeyRequestedForTranslationId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Engine"); b.Navigation("KeyRequestedForTranslation"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Localization.LocalizationText", b => { b.HasOne("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", null) .WithMany("Texts") .HasForeignKey("LocalizationKeyId"); b.HasOne("FictionArchive.Service.NovelService.Models.Novels.TranslationEngine", "TranslationEngine") .WithMany() .HasForeignKey("TranslationEngineId"); b.Navigation("TranslationEngine"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.Chapter", b => { b.HasOne("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", "Body") .WithMany() .HasForeignKey("BodyId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", "Name") .WithMany() .HasForeignKey("NameId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FictionArchive.Service.NovelService.Models.Novels.Novel", null) .WithMany("Chapters") .HasForeignKey("NovelId"); b.Navigation("Body"); b.Navigation("Name"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.Novel", b => { b.HasOne("FictionArchive.Service.NovelService.Models.Novels.Person", "Author") .WithMany() .HasForeignKey("AuthorId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", "Description") .WithMany() .HasForeignKey("DescriptionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", "Name") .WithMany() .HasForeignKey("NameId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FictionArchive.Service.NovelService.Models.Novels.Source", "Source") .WithMany() .HasForeignKey("SourceId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Author"); b.Navigation("Description"); b.Navigation("Name"); b.Navigation("Source"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.NovelTag", b => { b.HasOne("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", "DisplayName") .WithMany() .HasForeignKey("DisplayNameId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FictionArchive.Service.NovelService.Models.Novels.Source", "Source") .WithMany() .HasForeignKey("SourceId"); b.Navigation("DisplayName"); b.Navigation("Source"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.Person", b => { b.HasOne("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", "Name") .WithMany() .HasForeignKey("NameId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Name"); }); modelBuilder.Entity("NovelNovelTag", b => { b.HasOne("FictionArchive.Service.NovelService.Models.Novels.Novel", null) .WithMany() .HasForeignKey("NovelsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FictionArchive.Service.NovelService.Models.Novels.NovelTag", null) .WithMany() .HasForeignKey("TagsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Localization.LocalizationKey", b => { b.Navigation("Texts"); }); modelBuilder.Entity("FictionArchive.Service.NovelService.Models.Novels.Novel", b => { b.Navigation("Chapters"); }); #pragma warning restore 612, 618 } } }