// using System; using Cleanuparr.Persistence; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; #nullable disable namespace Cleanuparr.Persistence.Migrations.Events { [DbContext(typeof(EventsContext))] partial class EventsContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder.HasAnnotation("ProductVersion", "10.0.1"); modelBuilder.Entity("Cleanuparr.Persistence.Models.Events.AppEvent", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasColumnName("id"); b.Property("CompletedAt") .HasColumnType("TEXT") .HasColumnName("completed_at"); b.Property("CycleId") .HasColumnType("TEXT") .HasColumnName("cycle_id"); b.Property("Data") .HasColumnType("TEXT") .HasColumnName("data"); b.Property("DownloadClientName") .HasMaxLength(200) .HasColumnType("TEXT") .HasColumnName("download_client_name"); b.Property("DownloadClientType") .HasColumnType("TEXT") .HasColumnName("download_client_type"); b.Property("EventType") .IsRequired() .HasColumnType("TEXT") .HasColumnName("event_type"); b.Property("InstanceType") .HasColumnType("TEXT") .HasColumnName("instance_type"); b.Property("InstanceUrl") .HasMaxLength(500) .HasColumnType("TEXT") .HasColumnName("instance_url"); b.Property("IsDryRun") .HasColumnType("INTEGER") .HasColumnName("is_dry_run"); b.Property("JobRunId") .HasColumnType("TEXT") .HasColumnName("job_run_id"); b.Property("Message") .IsRequired() .HasMaxLength(1000) .HasColumnType("TEXT") .HasColumnName("message"); b.Property("SearchStatus") .HasColumnType("TEXT") .HasColumnName("search_status"); b.Property("Severity") .IsRequired() .HasColumnType("TEXT") .HasColumnName("severity"); b.Property("StrikeId") .HasColumnType("TEXT") .HasColumnName("strike_id"); b.Property("Timestamp") .HasColumnType("TEXT") .HasColumnName("timestamp"); b.Property("TrackingId") .HasColumnType("TEXT") .HasColumnName("tracking_id"); b.HasKey("Id") .HasName("pk_events"); b.HasIndex("CycleId") .HasDatabaseName("ix_events_cycle_id"); b.HasIndex("DownloadClientType") .HasDatabaseName("ix_events_download_client_type"); b.HasIndex("EventType") .HasDatabaseName("ix_events_event_type"); b.HasIndex("InstanceType") .HasDatabaseName("ix_events_instance_type"); b.HasIndex("JobRunId") .HasDatabaseName("ix_events_job_run_id"); b.HasIndex("Message") .HasDatabaseName("ix_events_message"); b.HasIndex("Severity") .HasDatabaseName("ix_events_severity"); b.HasIndex("StrikeId") .HasDatabaseName("ix_events_strike_id"); b.HasIndex("Timestamp") .IsDescending() .HasDatabaseName("ix_events_timestamp"); b.ToTable("events", (string)null); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.Events.ManualEvent", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasColumnName("id"); b.Property("Data") .HasColumnType("TEXT") .HasColumnName("data"); b.Property("DownloadClientName") .HasMaxLength(200) .HasColumnType("TEXT") .HasColumnName("download_client_name"); b.Property("DownloadClientType") .HasColumnType("TEXT") .HasColumnName("download_client_type"); b.Property("InstanceType") .HasColumnType("TEXT") .HasColumnName("instance_type"); b.Property("InstanceUrl") .HasMaxLength(500) .HasColumnType("TEXT") .HasColumnName("instance_url"); b.Property("IsDryRun") .HasColumnType("INTEGER") .HasColumnName("is_dry_run"); b.Property("IsResolved") .HasColumnType("INTEGER") .HasColumnName("is_resolved"); b.Property("JobRunId") .HasColumnType("TEXT") .HasColumnName("job_run_id"); b.Property("Message") .IsRequired() .HasMaxLength(1000) .HasColumnType("TEXT") .HasColumnName("message"); b.Property("Severity") .IsRequired() .HasColumnType("TEXT") .HasColumnName("severity"); b.Property("Timestamp") .HasColumnType("TEXT") .HasColumnName("timestamp"); b.HasKey("Id") .HasName("pk_manual_events"); b.HasIndex("InstanceType") .HasDatabaseName("ix_manual_events_instance_type"); b.HasIndex("IsResolved") .HasDatabaseName("ix_manual_events_is_resolved"); b.HasIndex("JobRunId") .HasDatabaseName("ix_manual_events_job_run_id"); b.HasIndex("Message") .HasDatabaseName("ix_manual_events_message"); b.HasIndex("Severity") .HasDatabaseName("ix_manual_events_severity"); b.HasIndex("Timestamp") .IsDescending() .HasDatabaseName("ix_manual_events_timestamp"); b.ToTable("manual_events", (string)null); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.State.DownloadItem", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasColumnName("id"); b.Property("DownloadId") .IsRequired() .HasMaxLength(100) .HasColumnType("TEXT") .HasColumnName("download_id"); b.Property("IsMarkedForRemoval") .HasColumnType("INTEGER") .HasColumnName("is_marked_for_removal"); b.Property("IsRemoved") .HasColumnType("INTEGER") .HasColumnName("is_removed"); b.Property("IsReturning") .HasColumnType("INTEGER") .HasColumnName("is_returning"); b.Property("Title") .IsRequired() .HasMaxLength(500) .HasColumnType("TEXT") .HasColumnName("title"); b.HasKey("Id") .HasName("pk_download_items"); b.HasIndex("DownloadId") .IsUnique() .HasDatabaseName("ix_download_items_download_id"); b.ToTable("download_items", (string)null); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.State.JobRun", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasColumnName("id"); b.Property("CompletedAt") .HasColumnType("TEXT") .HasColumnName("completed_at"); b.Property("StartedAt") .HasColumnType("TEXT") .HasColumnName("started_at"); b.Property("Status") .HasColumnType("TEXT") .HasColumnName("status"); b.Property("Type") .IsRequired() .HasColumnType("TEXT") .HasColumnName("type"); b.HasKey("Id") .HasName("pk_job_runs"); b.HasIndex("StartedAt") .IsDescending() .HasDatabaseName("ix_job_runs_started_at"); b.HasIndex("Type") .HasDatabaseName("ix_job_runs_type"); b.ToTable("job_runs", (string)null); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.State.Strike", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasColumnName("id"); b.Property("CreatedAt") .HasColumnType("TEXT") .HasColumnName("created_at"); b.Property("DownloadItemId") .HasColumnType("TEXT") .HasColumnName("download_item_id"); b.Property("IsDryRun") .HasColumnType("INTEGER") .HasColumnName("is_dry_run"); b.Property("JobRunId") .HasColumnType("TEXT") .HasColumnName("job_run_id"); b.Property("LastDownloadedBytes") .HasColumnType("INTEGER") .HasColumnName("last_downloaded_bytes"); b.Property("Type") .IsRequired() .HasColumnType("TEXT") .HasColumnName("type"); b.HasKey("Id") .HasName("pk_strikes"); b.HasIndex("CreatedAt") .HasDatabaseName("ix_strikes_created_at"); b.HasIndex("JobRunId") .HasDatabaseName("ix_strikes_job_run_id"); b.HasIndex("DownloadItemId", "Type") .HasDatabaseName("ix_strikes_download_item_id_type"); b.ToTable("strikes", (string)null); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.Events.AppEvent", b => { b.HasOne("Cleanuparr.Persistence.Models.State.JobRun", "JobRun") .WithMany("Events") .HasForeignKey("JobRunId") .HasConstraintName("fk_events_job_runs_job_run_id"); b.HasOne("Cleanuparr.Persistence.Models.State.Strike", "Strike") .WithMany() .HasForeignKey("StrikeId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("fk_events_strikes_strike_id"); b.Navigation("JobRun"); b.Navigation("Strike"); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.Events.ManualEvent", b => { b.HasOne("Cleanuparr.Persistence.Models.State.JobRun", "JobRun") .WithMany("ManualEvents") .HasForeignKey("JobRunId") .HasConstraintName("fk_manual_events_job_runs_job_run_id"); b.Navigation("JobRun"); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.State.Strike", b => { b.HasOne("Cleanuparr.Persistence.Models.State.DownloadItem", "DownloadItem") .WithMany("Strikes") .HasForeignKey("DownloadItemId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_strikes_download_items_download_item_id"); b.HasOne("Cleanuparr.Persistence.Models.State.JobRun", "JobRun") .WithMany("Strikes") .HasForeignKey("JobRunId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_strikes_job_runs_job_run_id"); b.Navigation("DownloadItem"); b.Navigation("JobRun"); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.State.DownloadItem", b => { b.Navigation("Strikes"); }); modelBuilder.Entity("Cleanuparr.Persistence.Models.State.JobRun", b => { b.Navigation("Events"); b.Navigation("ManualEvents"); b.Navigation("Strikes"); }); #pragma warning restore 612, 618 } } }