// using System; using HyperBooru; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace HyperBooru.Migrations { [DbContext(typeof(HBContext))] [Migration("20230828053948_TagDefinitionId")] partial class TagDefinitionId { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "7.0.10") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("HyperBooru.HBObject", b => { b.Property("ObjectId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("ObjectId")); b.Property("Guid") .HasColumnType("uuid"); b.HasKey("ObjectId"); b.HasIndex("Guid"); b.ToTable("Objects", (string)null); b.UseTptMappingStrategy(); }); modelBuilder.Entity("HyperBooru.UploadedFile", b => { b.Property("UploadedFileId") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("UploadedFileId")); b.Property("CreateTime") .HasColumnType("timestamp with time zone"); b.Property("Filename") .HasColumnType("text"); b.Property("LastAccessTime") .HasColumnType("timestamp with time zone"); b.Property("LastWriteTime") .HasColumnType("timestamp with time zone"); b.Property("MediaObjectId") .HasColumnType("integer"); b.Property("OriginalChecksum") .IsRequired() .HasColumnType("text"); b.Property("UploadTime") .HasColumnType("timestamp with time zone"); b.HasKey("UploadedFileId"); b.HasIndex("MediaObjectId"); b.ToTable("UploadedFiles", (string)null); }); modelBuilder.Entity("TagDefinitionTagDefinition", b => { b.Property("ImplicitTagsObjectId") .HasColumnType("integer"); b.Property("TagDefinitionObjectId") .HasColumnType("integer"); b.HasKey("ImplicitTagsObjectId", "TagDefinitionObjectId"); b.HasIndex("TagDefinitionObjectId"); b.ToTable("TagDefinitionTagDefinition"); }); modelBuilder.Entity("HyperBooru.Media", b => { b.HasBaseType("HyperBooru.HBObject"); b.Property("Checksum") .IsRequired() .HasColumnType("text"); b.Property("LongDescription") .HasColumnType("text"); b.Property("MimeType") .IsRequired() .HasColumnType("text"); b.Property("ShortDescription") .HasColumnType("text"); b.ToTable("Media", (string)null); }); modelBuilder.Entity("HyperBooru.Tag", b => { b.HasBaseType("HyperBooru.HBObject"); b.Property("CreateTime") .HasColumnType("timestamp with time zone"); b.Property("TagDefinitionId") .HasColumnType("integer"); b.Property("TargetObjectId") .HasColumnType("integer"); b.HasIndex("TagDefinitionId"); b.HasIndex("TargetObjectId"); b.ToTable("Tags", (string)null); }); modelBuilder.Entity("HyperBooru.TagDefinition", b => { b.HasBaseType("HyperBooru.HBObject"); b.Property("Alias") .HasColumnType("text"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.Property("Namespace") .HasColumnType("text"); b.Property("Source") .HasColumnType("integer"); b.ToTable("TagDefinitions", (string)null); b.HasData( new { ObjectId = -1, Guid = new Guid("ebdad4f8-455a-4351-8017-1d4854d6fa38"), Name = "nsfw", Source = 0 }, new { ObjectId = -2, Guid = new Guid("ea212801-5bcc-4c0e-814f-fb9d30db58bc"), Name = "ingest", Source = 0 }); }); modelBuilder.Entity("HyperBooru.UploadedFile", b => { b.HasOne("HyperBooru.Media", "Media") .WithMany("UploadedFiles") .HasForeignKey("MediaObjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Media"); }); modelBuilder.Entity("TagDefinitionTagDefinition", b => { b.HasOne("HyperBooru.TagDefinition", null) .WithMany() .HasForeignKey("ImplicitTagsObjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("HyperBooru.TagDefinition", null) .WithMany() .HasForeignKey("TagDefinitionObjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("HyperBooru.Media", b => { b.HasOne("HyperBooru.HBObject", null) .WithOne() .HasForeignKey("HyperBooru.Media", "ObjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("HyperBooru.Tag", b => { b.HasOne("HyperBooru.HBObject", null) .WithOne() .HasForeignKey("HyperBooru.Tag", "ObjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("HyperBooru.TagDefinition", "TagDefinition") .WithMany() .HasForeignKey("TagDefinitionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("HyperBooru.HBObject", "Target") .WithMany("Tags") .HasForeignKey("TargetObjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("TagDefinition"); b.Navigation("Target"); }); modelBuilder.Entity("HyperBooru.TagDefinition", b => { b.HasOne("HyperBooru.HBObject", null) .WithOne() .HasForeignKey("HyperBooru.TagDefinition", "ObjectId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("HyperBooru.HBObject", b => { b.Navigation("Tags"); }); modelBuilder.Entity("HyperBooru.Media", b => { b.Navigation("UploadedFiles"); }); #pragma warning restore 612, 618 } } }