using DeepDrftModels.Entities; using DeepDrftData.Data.Configurations; using Microsoft.EntityFrameworkCore; namespace DeepDrftData.Data; public class DeepDrftContext : DbContext { public DeepDrftContext(DbContextOptions options) : base(options) { } public DbSet Tracks { get; set; } public DbSet Releases { get; set; } public DbSet SessionMetadata { get; set; } public DbSet MixMetadata { get; set; } // Phase 16 anonymous telemetry: append-only event logs + incremental play rollup. All SQL — the // FileDatabase vault is not involved. public DbSet PlayEvents { get; set; } public DbSet ShareEvents { get; set; } public DbSet PlayCounters { get; set; } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.ApplyConfiguration(new TrackConfiguration()); modelBuilder.ApplyConfiguration(new ReleaseConfiguration()); modelBuilder.ApplyConfiguration(new SessionMetadataConfiguration()); modelBuilder.ApplyConfiguration(new MixMetadataConfiguration()); modelBuilder.ApplyConfiguration(new PlayEventConfiguration()); modelBuilder.ApplyConfiguration(new ShareEventConfiguration()); modelBuilder.ApplyConfiguration(new PlayCounterConfiguration()); } }