// using System; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using SharedLibraryCore.Database; namespace SharedLibraryCore.Migrations { [DbContext(typeof(DatabaseContext))] partial class DatabaseContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "2.2.6-servicing-10079"); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFACSnapshot", b => { b.Property("SnapshotId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("ClientId"); b.Property("CurrentSessionLength"); b.Property("CurrentStrain"); b.Property("CurrentViewAngleId"); b.Property("Deaths"); b.Property("Distance"); b.Property("EloRating"); b.Property("HitDestinationId"); b.Property("HitLocation"); b.Property("HitOriginId"); b.Property("HitType"); b.Property("Hits"); b.Property("Kills"); b.Property("LastStrainAngleId"); b.Property("RecoilOffset"); b.Property("SessionAngleOffset"); b.Property("SessionSPM"); b.Property("SessionScore"); b.Property("StrainAngleBetween"); b.Property("TimeSinceLastEvent"); b.Property("WeaponId"); b.Property("When"); b.HasKey("SnapshotId"); b.HasIndex("ClientId"); b.HasIndex("CurrentViewAngleId"); b.HasIndex("HitDestinationId"); b.HasIndex("HitOriginId"); b.HasIndex("LastStrainAngleId"); b.ToTable("EFACSnapshot"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFClientKill", b => { b.Property("KillId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("AttackerId"); b.Property("Damage"); b.Property("DeathOriginVector3Id"); b.Property("DeathType"); b.Property("Fraction"); b.Property("HitLoc"); b.Property("IsKill"); b.Property("KillOriginVector3Id"); b.Property("Map"); b.Property("ServerId"); b.Property("VictimId"); b.Property("ViewAnglesVector3Id"); b.Property("VisibilityPercentage"); b.Property("Weapon"); b.Property("When"); b.HasKey("KillId"); b.HasIndex("AttackerId"); b.HasIndex("DeathOriginVector3Id"); b.HasIndex("KillOriginVector3Id"); b.HasIndex("ServerId"); b.HasIndex("VictimId"); b.HasIndex("ViewAnglesVector3Id"); b.ToTable("EFClientKills"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFClientMessage", b => { b.Property("MessageId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("ClientId"); b.Property("Message"); b.Property("ServerId"); b.Property("TimeSent"); b.HasKey("MessageId"); b.HasIndex("ClientId"); b.HasIndex("ServerId"); b.HasIndex("TimeSent"); b.ToTable("EFClientMessages"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFClientRatingHistory", b => { b.Property("RatingHistoryId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("ClientId"); b.HasKey("RatingHistoryId"); b.HasIndex("ClientId"); b.ToTable("EFClientRatingHistory"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFClientStatistics", b => { b.Property("ClientId"); b.Property("ServerId"); b.Property("Active"); b.Property("AverageRecoilOffset"); b.Property("Deaths"); b.Property("EloRating"); b.Property("Kills"); b.Property("MaxStrain"); b.Property("RollingWeightedKDR"); b.Property("SPM"); b.Property("Skill"); b.Property("TimePlayed"); b.Property("VisionAverage"); b.HasKey("ClientId", "ServerId"); b.HasIndex("ServerId"); b.ToTable("EFClientStatistics"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFHitLocationCount", b => { b.Property("HitLocationCountId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("ClientId") .HasColumnName("EFClientStatistics_ClientId"); b.Property("HitCount"); b.Property("HitOffsetAverage"); b.Property("Location"); b.Property("MaxAngleDistance"); b.Property("ServerId") .HasColumnName("EFClientStatistics_ServerId"); b.HasKey("HitLocationCountId"); b.HasIndex("ServerId"); b.HasIndex("ClientId", "ServerId"); b.ToTable("EFHitLocationCounts"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFRating", b => { b.Property("RatingId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("ActivityAmount"); b.Property("Newest"); b.Property("Performance"); b.Property("Ranking"); b.Property("RatingHistoryId"); b.Property("ServerId"); b.Property("When"); b.HasKey("RatingId"); b.HasIndex("RatingHistoryId"); b.HasIndex("ServerId"); b.HasIndex("Performance", "Ranking", "When"); b.ToTable("EFRating"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFServer", b => { b.Property("ServerId"); b.Property("Active"); b.Property("EndPoint"); b.Property("GameName"); b.Property("Port"); b.HasKey("ServerId"); b.ToTable("EFServers"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFServerStatistics", b => { b.Property("StatisticId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("ServerId"); b.Property("TotalKills"); b.Property("TotalPlayTime"); b.HasKey("StatisticId"); b.HasIndex("ServerId"); b.ToTable("EFServerStatistics"); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFAlias", b => { b.Property("AliasId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("DateAdded"); b.Property("IPAddress"); b.Property("LinkId"); b.Property("Name") .IsRequired() .HasMaxLength(24); b.Property("SearchableName") .HasMaxLength(24); b.HasKey("AliasId"); b.HasIndex("IPAddress"); b.HasIndex("LinkId"); b.HasIndex("Name"); b.HasIndex("SearchableName"); b.ToTable("EFAlias"); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFAliasLink", b => { b.Property("AliasLinkId") .ValueGeneratedOnAdd(); b.Property("Active"); b.HasKey("AliasLinkId"); b.ToTable("EFAliasLinks"); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFChangeHistory", b => { b.Property("ChangeHistoryId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("Comment") .HasMaxLength(128); b.Property("CurrentValue"); b.Property("OriginEntityId"); b.Property("PreviousValue"); b.Property("TargetEntityId"); b.Property("TimeChanged"); b.Property("TypeOfChange"); b.HasKey("ChangeHistoryId"); b.ToTable("EFChangeHistory"); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFClient", b => { b.Property("ClientId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("AliasLinkId"); b.Property("Connections"); b.Property("CurrentAliasId"); b.Property("FirstConnection"); b.Property("LastConnection"); b.Property("Level"); b.Property("Masked"); b.Property("NetworkId"); b.Property("Password"); b.Property("PasswordSalt"); b.Property("TotalConnectionTime"); b.HasKey("ClientId"); b.HasIndex("AliasLinkId"); b.HasIndex("CurrentAliasId"); b.HasIndex("NetworkId") .IsUnique(); b.ToTable("EFClients"); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFMeta", b => { b.Property("MetaId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("ClientId"); b.Property("Created"); b.Property("Extra"); b.Property("Key") .IsRequired() .HasMaxLength(32); b.Property("Updated"); b.Property("Value") .IsRequired(); b.HasKey("MetaId"); b.HasIndex("ClientId"); b.HasIndex("Key"); b.ToTable("EFMeta"); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFPenalty", b => { b.Property("PenaltyId") .ValueGeneratedOnAdd(); b.Property("Active"); b.Property("AutomatedOffense"); b.Property("Expires"); b.Property("IsEvadedOffense"); b.Property("LinkId"); b.Property("OffenderId"); b.Property("Offense") .IsRequired(); b.Property("PunisherId"); b.Property("Type"); b.Property("When"); b.HasKey("PenaltyId"); b.HasIndex("LinkId"); b.HasIndex("OffenderId"); b.HasIndex("PunisherId"); b.ToTable("EFPenalties"); }); modelBuilder.Entity("SharedLibraryCore.Helpers.Vector3", b => { b.Property("Vector3Id") .ValueGeneratedOnAdd(); b.Property("EFACSnapshotSnapshotId"); b.Property("X"); b.Property("Y"); b.Property("Z"); b.HasKey("Vector3Id"); b.HasIndex("EFACSnapshotSnapshotId"); b.ToTable("Vector3"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFACSnapshot", b => { b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Client") .WithMany() .HasForeignKey("ClientId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Helpers.Vector3", "CurrentViewAngle") .WithMany() .HasForeignKey("CurrentViewAngleId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Helpers.Vector3", "HitDestination") .WithMany() .HasForeignKey("HitDestinationId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Helpers.Vector3", "HitOrigin") .WithMany() .HasForeignKey("HitOriginId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Helpers.Vector3", "LastStrainAngle") .WithMany() .HasForeignKey("LastStrainAngleId") .OnDelete(DeleteBehavior.Cascade); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFClientKill", b => { b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Attacker") .WithMany() .HasForeignKey("AttackerId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Helpers.Vector3", "DeathOrigin") .WithMany() .HasForeignKey("DeathOriginVector3Id"); b.HasOne("SharedLibraryCore.Helpers.Vector3", "KillOrigin") .WithMany() .HasForeignKey("KillOriginVector3Id"); b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFServer", "Server") .WithMany() .HasForeignKey("ServerId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Victim") .WithMany() .HasForeignKey("VictimId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Helpers.Vector3", "ViewAngles") .WithMany() .HasForeignKey("ViewAnglesVector3Id"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFClientMessage", b => { b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Client") .WithMany() .HasForeignKey("ClientId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFServer", "Server") .WithMany() .HasForeignKey("ServerId") .OnDelete(DeleteBehavior.Cascade); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFClientRatingHistory", b => { b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Client") .WithMany() .HasForeignKey("ClientId") .OnDelete(DeleteBehavior.Cascade); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFClientStatistics", b => { b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Client") .WithMany() .HasForeignKey("ClientId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFServer", "Server") .WithMany() .HasForeignKey("ServerId") .OnDelete(DeleteBehavior.Cascade); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFHitLocationCount", b => { b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Client") .WithMany() .HasForeignKey("ClientId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFServer", "Server") .WithMany() .HasForeignKey("ServerId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFClientStatistics") .WithMany("HitLocations") .HasForeignKey("ClientId", "ServerId") .OnDelete(DeleteBehavior.Cascade); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFRating", b => { b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFClientRatingHistory", "RatingHistory") .WithMany("Ratings") .HasForeignKey("RatingHistoryId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFServer", "Server") .WithMany() .HasForeignKey("ServerId"); }); modelBuilder.Entity("IW4MAdmin.Plugins.Stats.Models.EFServerStatistics", b => { b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFServer", "Server") .WithMany() .HasForeignKey("ServerId") .OnDelete(DeleteBehavior.Cascade); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFAlias", b => { b.HasOne("SharedLibraryCore.Database.Models.EFAliasLink", "Link") .WithMany("Children") .HasForeignKey("LinkId") .OnDelete(DeleteBehavior.Restrict); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFClient", b => { b.HasOne("SharedLibraryCore.Database.Models.EFAliasLink", "AliasLink") .WithMany() .HasForeignKey("AliasLinkId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Database.Models.EFAlias", "CurrentAlias") .WithMany() .HasForeignKey("CurrentAliasId") .OnDelete(DeleteBehavior.Cascade); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFMeta", b => { b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Client") .WithMany("Meta") .HasForeignKey("ClientId") .OnDelete(DeleteBehavior.Cascade); }); modelBuilder.Entity("SharedLibraryCore.Database.Models.EFPenalty", b => { b.HasOne("SharedLibraryCore.Database.Models.EFAliasLink", "Link") .WithMany("ReceivedPenalties") .HasForeignKey("LinkId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Offender") .WithMany("ReceivedPenalties") .HasForeignKey("OffenderId") .OnDelete(DeleteBehavior.Restrict); b.HasOne("SharedLibraryCore.Database.Models.EFClient", "Punisher") .WithMany("AdministeredPenalties") .HasForeignKey("PunisherId") .OnDelete(DeleteBehavior.Restrict); }); modelBuilder.Entity("SharedLibraryCore.Helpers.Vector3", b => { b.HasOne("IW4MAdmin.Plugins.Stats.Models.EFACSnapshot") .WithMany("PredictedViewAngles") .HasForeignKey("EFACSnapshotSnapshotId"); }); #pragma warning restore 612, 618 } } }