diff --git a/Aaru.CommonTypes b/Aaru.CommonTypes index 843d3d5d5..8e3ef9dfe 160000 --- a/Aaru.CommonTypes +++ b/Aaru.CommonTypes @@ -1 +1 @@ -Subproject commit 843d3d5d56bd8ba35db7a74fd339e709ad798b21 +Subproject commit 8e3ef9dfe1920aa359f2d07db60b2f9824095ea9 diff --git a/Aaru.Core/Remote.cs b/Aaru.Core/Remote.cs index ee75851c3..85195d0a7 100644 --- a/Aaru.Core/Remote.cs +++ b/Aaru.Core/Remote.cs @@ -271,17 +271,52 @@ namespace Aaru.Core }); AaruConsole.WriteLine("Added {0} known devices", sync.Devices.Count); + + AnsiConsole.Progress().AutoClear(true).HideCompleted(true). + Columns(new TaskDescriptionColumn(), new ProgressBarColumn(), new PercentageColumn()). + Start(ctx => + { + ProgressTask task = ctx.AddTask("Adding known iNES/NES 2.0 headers"); + task.MaxValue = sync.NesHeaders.Count; + + foreach(NesHeaderDto header in sync.NesHeaders) + { + task.Increment(1); + + mctx.NesHeaders.Add(new NesHeaderInfo + { + Id = header.Id, + AddedWhen = DateTime.UtcNow, + BatteryPresent = header.BatteryPresent, + ConsoleType = header.ConsoleType, + DefaultExpansionDevice = header.DefaultExpansionDevice, + ExtendedConsoleType = header.ExtendedConsoleType, + FourScreenMode = header.FourScreenMode, + Mapper = header.Mapper, + ModifiedWhen = DateTime.UtcNow, + NametableMirroring = header.NametableMirroring, + Sha256 = header.Sha256, + Submapper = header.Submapper, + VsHardwareType = header.VsHardwareType, + VsPpuType = header.VsPpuType + }); + } + }); + + AaruConsole.WriteLine("Added {0} known iNES/NES 2.0 headers", sync.NesHeaders.Count); } else { - long addedVendors = 0; - long addedProducts = 0; - long addedOffsets = 0; - long addedDevices = 0; - long modifiedVendors = 0; - long modifiedProducts = 0; - long modifiedOffsets = 0; - long modifiedDevices = 0; + long addedVendors = 0; + long addedProducts = 0; + long addedOffsets = 0; + long addedDevices = 0; + long addedNesHeaders = 0; + long modifiedVendors = 0; + long modifiedProducts = 0; + long modifiedOffsets = 0; + long modifiedDevices = 0; + long modifiedNesHeaders = 0; AnsiConsole.Progress().AutoClear(true).HideCompleted(true). Columns(new TaskDescriptionColumn(), new ProgressBarColumn(), new PercentageColumn()). @@ -431,6 +466,73 @@ namespace Aaru.Core AaruConsole.WriteLine("Added {0} known devices", addedDevices); AaruConsole.WriteLine("Modified {0} known devices", modifiedDevices); + + AnsiConsole.Progress().AutoClear(true).HideCompleted(true). + Columns(new TaskDescriptionColumn(), new ProgressBarColumn(), new PercentageColumn()). + Start(ctx => + { + ProgressTask task = ctx.AddTask("Updating known iNES/NES 2.0 headers"); + task.MaxValue = sync.Offsets.Count; + + foreach(NesHeaderDto header in sync.NesHeaders) + { + task.Increment(1); + NesHeaderInfo existing = mctx.NesHeaders.FirstOrDefault(d => d.Id == header.Id); + + if(existing != null) + { + modifiedNesHeaders++; + DateTime addedDate = existing.AddedWhen; + + mctx.Remove(existing); + + existing = new NesHeaderInfo + { + Id = header.Id, + AddedWhen = addedDate, + BatteryPresent = header.BatteryPresent, + ConsoleType = header.ConsoleType, + DefaultExpansionDevice = header.DefaultExpansionDevice, + ExtendedConsoleType = header.ExtendedConsoleType, + FourScreenMode = header.FourScreenMode, + Mapper = header.Mapper, + ModifiedWhen = DateTime.UtcNow, + NametableMirroring = header.NametableMirroring, + Sha256 = header.Sha256, + Submapper = header.Submapper, + VsHardwareType = header.VsHardwareType, + VsPpuType = header.VsPpuType + }; + + mctx.NesHeaders.Add(existing); + } + else + { + addedNesHeaders++; + + mctx.NesHeaders.Add(new NesHeaderInfo + { + Id = header.Id, + AddedWhen = DateTime.UtcNow, + BatteryPresent = header.BatteryPresent, + ConsoleType = header.ConsoleType, + DefaultExpansionDevice = header.DefaultExpansionDevice, + ExtendedConsoleType = header.ExtendedConsoleType, + FourScreenMode = header.FourScreenMode, + Mapper = header.Mapper, + ModifiedWhen = DateTime.UtcNow, + NametableMirroring = header.NametableMirroring, + Sha256 = header.Sha256, + Submapper = header.Submapper, + VsHardwareType = header.VsHardwareType, + VsPpuType = header.VsPpuType + }); + } + } + }); + + AaruConsole.WriteLine("Added {0} known iNES/NES 2.0 headers", addedDevices); + AaruConsole.WriteLine("Modified {0} known iNES/NES 2.0 headers", modifiedDevices); } } catch(Exception ex) diff --git a/Aaru.Database/Aaru.Database.csproj b/Aaru.Database/Aaru.Database.csproj index 8181b7eec..1840f0502 100644 --- a/Aaru.Database/Aaru.Database.csproj +++ b/Aaru.Database/Aaru.Database.csproj @@ -137,6 +137,8 @@ + + @@ -149,6 +151,7 @@ + diff --git a/Aaru.Database/Context.cs b/Aaru.Database/Context.cs index c9643af7e..cb5ea84d8 100644 --- a/Aaru.Database/Context.cs +++ b/Aaru.Database/Context.cs @@ -33,212 +33,215 @@ using Aaru.Database.Models; using Microsoft.EntityFrameworkCore; -namespace Aaru.Database +namespace Aaru.Database; + +/// +/// Database context +public sealed class AaruContext : DbContext { /// - /// Database context - public sealed class AaruContext : DbContext + /// Creates a database context with the specified options + /// Options + public AaruContext(DbContextOptions options) : base(options) {} + + /// List of known devices + public DbSet Devices { get; set; } + /// List of local device reports + public DbSet Reports { get; set; } + /// Command usage statistics + public DbSet Commands { get; set; } + /// Statistics for found filesystems + public DbSet Filesystems { get; set; } + /// Statistics for used filters + public DbSet Filters { get; set; } + /// Statistics for media image formats + public DbSet MediaFormats { get; set; } + /// Statistics for partitioning schemes + public DbSet Partitions { get; set; } + /// Statistics for media types + public DbSet Medias { get; set; } + /// Statistics for devices seen using commands + public DbSet SeenDevices { get; set; } + /// Statistics for operating systems + public DbSet OperatingSystems { get; set; } + /// Statistics for used Aaru versions + public DbSet Versions { get; set; } + /// List of known USB vendors + public DbSet UsbVendors { get; set; } + /// List of known USB products + public DbSet UsbProducts { get; set; } + /// List of CD reading offsets + public DbSet CdOffsets { get; set; } + /// Statistics of remote applications + public DbSet RemoteApplications { get; set; } + /// Statistics of remote architectures + public DbSet RemoteArchitectures { get; set; } + /// Statistics of remote operating systems + public DbSet RemoteOperatingSystems { get; set; } + /// Known iNES/NES 2.0 headers + public DbSet NesHeaders { get; set; } + + // Note: If table does not appear check that last migration has been REALLY added to the project + + /// Creates a database context with the database in the specified path + /// Path to database file + /// Database context + public static AaruContext Create(string dbPath) { - /// - /// Creates a database context with the specified options - /// Options - public AaruContext(DbContextOptions options) : base(options) {} + var optionsBuilder = new DbContextOptionsBuilder(); + optionsBuilder.UseLazyLoadingProxies().UseSqlite($"Data Source={dbPath}"); - /// List of known devices - public DbSet Devices { get; set; } - /// List of local device reports - public DbSet Reports { get; set; } - /// Command usage statistics - public DbSet Commands { get; set; } - /// Statistics for found filesystems - public DbSet Filesystems { get; set; } - /// Statistics for used filters - public DbSet Filters { get; set; } - /// Statistics for media image formats - public DbSet MediaFormats { get; set; } - /// Statistics for partitioning schemes - public DbSet Partitions { get; set; } - /// Statistics for media types - public DbSet Medias { get; set; } - /// Statistics for devices seen using commands - public DbSet SeenDevices { get; set; } - /// Statistics for operating systems - public DbSet OperatingSystems { get; set; } - /// Statistics for used Aaru versions - public DbSet Versions { get; set; } - /// List of known USB vendors - public DbSet UsbVendors { get; set; } - /// List of known USB products - public DbSet UsbProducts { get; set; } - /// List of CD reading offsets - public DbSet CdOffsets { get; set; } - /// Statistics of remote applications - public DbSet RemoteApplications { get; set; } - /// Statistics of remote architectures - public DbSet RemoteArchitectures { get; set; } - /// Statistics of remote operating systems - public DbSet RemoteOperatingSystems { get; set; } + return new AaruContext(optionsBuilder.Options); + } - // Note: If table does not appear check that last migration has been REALLY added to the project + /// + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + base.OnModelCreating(modelBuilder); - /// Creates a database context with the database in the specified path - /// Path to database file - /// Database context - public static AaruContext Create(string dbPath) + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", + b => b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities").WithMany(). + HasForeignKey("ReadCapabilitiesId").OnDelete(DeleteBehavior.SetNull)); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.BlockDescriptor", + b => b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null).WithMany("BlockDescriptors"). + HasForeignKey("ScsiModeId").OnDelete(DeleteBehavior.Cascade)); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.DensityCode", + b => b.HasOne("Aaru.CommonTypes.Metadata.SscSupportedMedia", null).WithMany("DensityCodes"). + HasForeignKey("SscSupportedMediaId").OnDelete(DeleteBehavior.Cascade)); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", + b => b.HasOne("Aaru.CommonTypes.Metadata.MmcFeatures", "Features").WithMany(). + HasForeignKey("FeaturesId").OnDelete(DeleteBehavior.SetNull)); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Scsi", b => { - var optionsBuilder = new DbContextOptionsBuilder(); - optionsBuilder.UseLazyLoadingProxies().UseSqlite($"Data Source={dbPath}"); + b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", "ModeSense").WithMany().HasForeignKey("ModeSenseId"). + OnDelete(DeleteBehavior.SetNull); - return new AaruContext(optionsBuilder.Options); - } + b.HasOne("Aaru.CommonTypes.Metadata.Mmc", "MultiMediaDevice").WithMany(). + HasForeignKey("MultiMediaDeviceId").OnDelete(DeleteBehavior.SetNull); - /// - protected override void OnModelCreating(ModelBuilder modelBuilder) + b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities").WithMany(). + HasForeignKey("ReadCapabilitiesId").OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", "SequentialDevice").WithMany(). + HasForeignKey("SequentialDeviceId").OnDelete(DeleteBehavior.SetNull); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiPage", b => { - base.OnModelCreating(modelBuilder); + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null).WithMany("EVPDPages").HasForeignKey("ScsiId"). + OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", - b => b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities").WithMany(). - HasForeignKey("ReadCapabilitiesId").OnDelete(DeleteBehavior.SetNull)); + b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null).WithMany("ModePages").HasForeignKey("ScsiModeId"). + OnDelete(DeleteBehavior.SetNull); + }); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.BlockDescriptor", - b => b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null).WithMany("BlockDescriptors"). - HasForeignKey("ScsiModeId").OnDelete(DeleteBehavior.Cascade)); + modelBuilder.Entity("Aaru.CommonTypes.Metadata.SscSupportedMedia", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("SupportedMediaTypes").HasForeignKey("SscId"). + OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.DensityCode", - b => b.HasOne("Aaru.CommonTypes.Metadata.SscSupportedMedia", null). - WithMany("DensityCodes").HasForeignKey("SscSupportedMediaId"). - OnDelete(DeleteBehavior.Cascade)); + b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null).WithMany("SupportedMediaTypes"). + HasForeignKey("TestedSequentialMediaId").OnDelete(DeleteBehavior.SetNull); + }); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", - b => b.HasOne("Aaru.CommonTypes.Metadata.MmcFeatures", "Features").WithMany(). - HasForeignKey("FeaturesId").OnDelete(DeleteBehavior.SetNull)); + modelBuilder.Entity("Aaru.CommonTypes.Metadata.SupportedDensity", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("SupportedDensities").HasForeignKey("SscId"). + OnDelete(DeleteBehavior.Cascade); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.Scsi", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", "ModeSense").WithMany().HasForeignKey("ModeSenseId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null).WithMany("SupportedDensities"). + HasForeignKey("TestedSequentialMediaId").OnDelete(DeleteBehavior.Cascade); + }); - b.HasOne("Aaru.CommonTypes.Metadata.Mmc", "MultiMediaDevice").WithMany(). - HasForeignKey("MultiMediaDeviceId").OnDelete(DeleteBehavior.SetNull); + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedMedia", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", null).WithMany("RemovableMedias").HasForeignKey("AtaId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities").WithMany(). - HasForeignKey("ReadCapabilitiesId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CHS").WithMany().HasForeignKey("CHSId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Ssc", "SequentialDevice").WithMany(). - HasForeignKey("SequentialDeviceId").OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CurrentCHS").WithMany().HasForeignKey("CurrentCHSId"). + OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiPage", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null).WithMany("EVPDPages").HasForeignKey("ScsiId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Mmc", null).WithMany("TestedMedia").HasForeignKey("MmcId"). + OnDelete(DeleteBehavior.Cascade); - b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null).WithMany("ModePages").HasForeignKey("ScsiModeId"). - OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null).WithMany("RemovableMedias").HasForeignKey("ScsiId"). + OnDelete(DeleteBehavior.SetNull); + }); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.SscSupportedMedia", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("SupportedMediaTypes").HasForeignKey("SscId"). - OnDelete(DeleteBehavior.SetNull); + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", + b => b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("TestedMedia"). + HasForeignKey("SscId").OnDelete(DeleteBehavior.SetNull)); - b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null).WithMany("SupportedMediaTypes"). - HasForeignKey("TestedSequentialMediaId").OnDelete(DeleteBehavior.SetNull); - }); + modelBuilder.Entity("Aaru.Database.Models.Device", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA").WithMany().HasForeignKey("ATAId"). + OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.SupportedDensity", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("SupportedDensities").HasForeignKey("SscId"). - OnDelete(DeleteBehavior.Cascade); + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI").WithMany().HasForeignKey("ATAPIId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null).WithMany("SupportedDensities"). - HasForeignKey("TestedSequentialMediaId").OnDelete(DeleteBehavior.Cascade); - }); + b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire").WithMany().HasForeignKey("FireWireId"). + OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedMedia", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ata", null).WithMany("RemovableMedias").HasForeignKey("AtaId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard").WithMany().HasForeignKey("MultiMediaCardId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CHS").WithMany().HasForeignKey("CHSId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA").WithMany().HasForeignKey("PCMCIAId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CurrentCHS").WithMany().HasForeignKey("CurrentCHSId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI").WithMany().HasForeignKey("SCSIId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Mmc", null).WithMany("TestedMedia").HasForeignKey("MmcId"). - OnDelete(DeleteBehavior.Cascade); + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital").WithMany().HasForeignKey("SecureDigitalId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null).WithMany("RemovableMedias").HasForeignKey("ScsiId"). - OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB").WithMany().HasForeignKey("USBId"). + OnDelete(DeleteBehavior.SetNull); + }); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", - b => b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("TestedMedia"). - HasForeignKey("SscId").OnDelete(DeleteBehavior.SetNull)); + modelBuilder.Entity("Aaru.Database.Models.Report", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA").WithMany().HasForeignKey("ATAId"). + OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.Database.Models.Device", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA").WithMany().HasForeignKey("ATAId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI").WithMany().HasForeignKey("ATAPIId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI").WithMany().HasForeignKey("ATAPIId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire").WithMany().HasForeignKey("FireWireId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire").WithMany().HasForeignKey("FireWireId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard").WithMany().HasForeignKey("MultiMediaCardId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard").WithMany(). - HasForeignKey("MultiMediaCardId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA").WithMany().HasForeignKey("PCMCIAId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA").WithMany().HasForeignKey("PCMCIAId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI").WithMany().HasForeignKey("SCSIId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI").WithMany().HasForeignKey("SCSIId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital").WithMany().HasForeignKey("SecureDigitalId"). + OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital").WithMany(). - HasForeignKey("SecureDigitalId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB").WithMany().HasForeignKey("USBId"). + OnDelete(DeleteBehavior.SetNull); + }); - b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB").WithMany().HasForeignKey("USBId"). - OnDelete(DeleteBehavior.SetNull); - }); + modelBuilder.Entity().HasIndex(b => b.ModifiedWhen); - modelBuilder.Entity("Aaru.Database.Models.Report", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA").WithMany().HasForeignKey("ATAId"). - OnDelete(DeleteBehavior.SetNull); + modelBuilder.Entity().HasIndex(b => b.ModifiedWhen); + modelBuilder.Entity().HasIndex(b => b.ProductId); + modelBuilder.Entity().HasIndex(b => b.VendorId); - b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI").WithMany().HasForeignKey("ATAPIId"). - OnDelete(DeleteBehavior.SetNull); + modelBuilder.Entity().HasIndex(b => b.ModifiedWhen); - b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire").WithMany().HasForeignKey("FireWireId"). - OnDelete(DeleteBehavior.SetNull); - - b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard").WithMany(). - HasForeignKey("MultiMediaCardId").OnDelete(DeleteBehavior.SetNull); - - b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA").WithMany().HasForeignKey("PCMCIAId"). - OnDelete(DeleteBehavior.SetNull); - - b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI").WithMany().HasForeignKey("SCSIId"). - OnDelete(DeleteBehavior.SetNull); - - b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital").WithMany(). - HasForeignKey("SecureDigitalId").OnDelete(DeleteBehavior.SetNull); - - b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB").WithMany().HasForeignKey("USBId"). - OnDelete(DeleteBehavior.SetNull); - }); - - modelBuilder.Entity().HasIndex(b => b.ModifiedWhen); - - modelBuilder.Entity().HasIndex(b => b.ModifiedWhen); - modelBuilder.Entity().HasIndex(b => b.ProductId); - modelBuilder.Entity().HasIndex(b => b.VendorId); - - modelBuilder.Entity().HasIndex(b => b.ModifiedWhen); - } + modelBuilder.Entity().HasIndex(b => b.Sha256); + modelBuilder.Entity().HasIndex(b => b.ModifiedWhen); } } \ No newline at end of file diff --git a/Aaru.Database/Migrations/20211208202937_AddNesHeaders.Designer.cs b/Aaru.Database/Migrations/20211208202937_AddNesHeaders.Designer.cs new file mode 100644 index 000000000..5c742c066 --- /dev/null +++ b/Aaru.Database/Migrations/20211208202937_AddNesHeaders.Designer.cs @@ -0,0 +1,2905 @@ +// +using System; +using Aaru.Database; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace Aaru.Database.Migrations +{ + [DbContext(typeof(AaruContext))] + [Migration("20211208202937_AddNesHeaders")] + partial class AddNesHeaders + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder.HasAnnotation("ProductVersion", "6.0.0"); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Identify") + .HasColumnType("BLOB"); + + b.Property("ReadCapabilitiesId") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ReadCapabilitiesId"); + + b.ToTable("Ata"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.BlockDescriptor", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("BlockLength") + .HasColumnType("INTEGER"); + + b.Property("Blocks") + .HasColumnType("INTEGER"); + + b.Property("Density") + .HasColumnType("INTEGER"); + + b.Property("ScsiModeId") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ScsiModeId"); + + b.ToTable("BlockDescriptor"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Chs", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Cylinders") + .HasColumnType("INTEGER"); + + b.Property("Heads") + .HasColumnType("INTEGER"); + + b.Property("Sectors") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("Chs"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.DensityCode", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Code") + .HasColumnType("INTEGER"); + + b.Property("SscSupportedMediaId") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("SscSupportedMediaId"); + + b.ToTable("DensityCode"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.FireWire", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("Product") + .HasColumnType("TEXT"); + + b.Property("ProductID") + .HasColumnType("INTEGER"); + + b.Property("RemovableMedia") + .HasColumnType("INTEGER"); + + b.Property("VendorID") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("FireWire"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.GdRomSwapDiscCapabilities", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Lba0Data") + .HasColumnType("BLOB"); + + b.Property("Lba0DecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba0Readable") + .HasColumnType("INTEGER"); + + b.Property("Lba0ScrambledData") + .HasColumnType("BLOB"); + + b.Property("Lba0ScrambledDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba0ScrambledReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba0ScrambledSense") + .HasColumnType("BLOB"); + + b.Property("Lba0Sense") + .HasColumnType("BLOB"); + + b.Property("Lba100000AudioData") + .HasColumnType("BLOB"); + + b.Property("Lba100000AudioDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba100000AudioPqData") + .HasColumnType("BLOB"); + + b.Property("Lba100000AudioPqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba100000AudioPqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba100000AudioPqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba100000AudioPqSense") + .HasColumnType("BLOB"); + + b.Property("Lba100000AudioReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba100000AudioReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba100000AudioRwData") + .HasColumnType("BLOB"); + + b.Property("Lba100000AudioRwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba100000AudioRwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba100000AudioRwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba100000AudioRwSense") + .HasColumnType("BLOB"); + + b.Property("Lba100000AudioSense") + .HasColumnType("BLOB"); + + b.Property("Lba100000Data") + .HasColumnType("BLOB"); + + b.Property("Lba100000DecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba100000PqData") + .HasColumnType("BLOB"); + + b.Property("Lba100000PqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba100000PqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba100000PqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba100000PqSense") + .HasColumnType("BLOB"); + + b.Property("Lba100000Readable") + .HasColumnType("INTEGER"); + + b.Property("Lba100000ReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba100000RwData") + .HasColumnType("BLOB"); + + b.Property("Lba100000RwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba100000RwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba100000RwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba100000RwSense") + .HasColumnType("BLOB"); + + b.Property("Lba100000Sense") + .HasColumnType("BLOB"); + + b.Property("Lba400000AudioData") + .HasColumnType("BLOB"); + + b.Property("Lba400000AudioDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba400000AudioPqData") + .HasColumnType("BLOB"); + + b.Property("Lba400000AudioPqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba400000AudioPqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba400000AudioPqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba400000AudioPqSense") + .HasColumnType("BLOB"); + + b.Property("Lba400000AudioReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba400000AudioReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba400000AudioRwData") + .HasColumnType("BLOB"); + + b.Property("Lba400000AudioRwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba400000AudioRwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba400000AudioRwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba400000AudioRwSense") + .HasColumnType("BLOB"); + + b.Property("Lba400000AudioSense") + .HasColumnType("BLOB"); + + b.Property("Lba400000Data") + .HasColumnType("BLOB"); + + b.Property("Lba400000DecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba400000PqData") + .HasColumnType("BLOB"); + + b.Property("Lba400000PqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba400000PqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba400000PqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba400000PqSense") + .HasColumnType("BLOB"); + + b.Property("Lba400000Readable") + .HasColumnType("INTEGER"); + + b.Property("Lba400000ReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba400000RwData") + .HasColumnType("BLOB"); + + b.Property("Lba400000RwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba400000RwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba400000RwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba400000RwSense") + .HasColumnType("BLOB"); + + b.Property("Lba400000Sense") + .HasColumnType("BLOB"); + + b.Property("Lba44990AudioData") + .HasColumnType("BLOB"); + + b.Property("Lba44990AudioDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba44990AudioPqData") + .HasColumnType("BLOB"); + + b.Property("Lba44990AudioPqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba44990AudioPqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba44990AudioPqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba44990AudioPqSense") + .HasColumnType("BLOB"); + + b.Property("Lba44990AudioReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba44990AudioReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba44990AudioRwData") + .HasColumnType("BLOB"); + + b.Property("Lba44990AudioRwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba44990AudioRwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba44990AudioRwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba44990AudioRwSense") + .HasColumnType("BLOB"); + + b.Property("Lba44990AudioSense") + .HasColumnType("BLOB"); + + b.Property("Lba44990Data") + .HasColumnType("BLOB"); + + b.Property("Lba44990DecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba44990PqData") + .HasColumnType("BLOB"); + + b.Property("Lba44990PqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba44990PqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba44990PqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba44990PqSense") + .HasColumnType("BLOB"); + + b.Property("Lba44990Readable") + .HasColumnType("INTEGER"); + + b.Property("Lba44990ReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba44990RwData") + .HasColumnType("BLOB"); + + b.Property("Lba44990RwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba44990RwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba44990RwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba44990RwSense") + .HasColumnType("BLOB"); + + b.Property("Lba44990Sense") + .HasColumnType("BLOB"); + + b.Property("Lba450000AudioData") + .HasColumnType("BLOB"); + + b.Property("Lba450000AudioDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba450000AudioPqData") + .HasColumnType("BLOB"); + + b.Property("Lba450000AudioPqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba450000AudioPqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba450000AudioPqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba450000AudioPqSense") + .HasColumnType("BLOB"); + + b.Property("Lba450000AudioReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba450000AudioReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba450000AudioRwData") + .HasColumnType("BLOB"); + + b.Property("Lba450000AudioRwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba450000AudioRwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba450000AudioRwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba450000AudioRwSense") + .HasColumnType("BLOB"); + + b.Property("Lba450000AudioSense") + .HasColumnType("BLOB"); + + b.Property("Lba450000Data") + .HasColumnType("BLOB"); + + b.Property("Lba450000DecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba450000PqData") + .HasColumnType("BLOB"); + + b.Property("Lba450000PqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba450000PqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba450000PqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba450000PqSense") + .HasColumnType("BLOB"); + + b.Property("Lba450000Readable") + .HasColumnType("INTEGER"); + + b.Property("Lba450000ReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba450000RwData") + .HasColumnType("BLOB"); + + b.Property("Lba450000RwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba450000RwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba450000RwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba450000RwSense") + .HasColumnType("BLOB"); + + b.Property("Lba450000Sense") + .HasColumnType("BLOB"); + + b.Property("Lba45000AudioData") + .HasColumnType("BLOB"); + + b.Property("Lba45000AudioDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba45000AudioPqData") + .HasColumnType("BLOB"); + + b.Property("Lba45000AudioPqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba45000AudioPqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba45000AudioPqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba45000AudioPqSense") + .HasColumnType("BLOB"); + + b.Property("Lba45000AudioReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba45000AudioReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba45000AudioRwData") + .HasColumnType("BLOB"); + + b.Property("Lba45000AudioRwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba45000AudioRwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba45000AudioRwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba45000AudioRwSense") + .HasColumnType("BLOB"); + + b.Property("Lba45000AudioSense") + .HasColumnType("BLOB"); + + b.Property("Lba45000Data") + .HasColumnType("BLOB"); + + b.Property("Lba45000DecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba45000PqData") + .HasColumnType("BLOB"); + + b.Property("Lba45000PqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba45000PqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba45000PqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba45000PqSense") + .HasColumnType("BLOB"); + + b.Property("Lba45000Readable") + .HasColumnType("INTEGER"); + + b.Property("Lba45000ReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba45000RwData") + .HasColumnType("BLOB"); + + b.Property("Lba45000RwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba45000RwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba45000RwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba45000RwSense") + .HasColumnType("BLOB"); + + b.Property("Lba45000Sense") + .HasColumnType("BLOB"); + + b.Property("Lba50000AudioData") + .HasColumnType("BLOB"); + + b.Property("Lba50000AudioDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba50000AudioPqData") + .HasColumnType("BLOB"); + + b.Property("Lba50000AudioPqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba50000AudioPqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba50000AudioPqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba50000AudioPqSense") + .HasColumnType("BLOB"); + + b.Property("Lba50000AudioReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba50000AudioReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba50000AudioRwData") + .HasColumnType("BLOB"); + + b.Property("Lba50000AudioRwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba50000AudioRwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba50000AudioRwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba50000AudioRwSense") + .HasColumnType("BLOB"); + + b.Property("Lba50000AudioSense") + .HasColumnType("BLOB"); + + b.Property("Lba50000Data") + .HasColumnType("BLOB"); + + b.Property("Lba50000DecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba50000PqData") + .HasColumnType("BLOB"); + + b.Property("Lba50000PqDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba50000PqReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba50000PqReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba50000PqSense") + .HasColumnType("BLOB"); + + b.Property("Lba50000Readable") + .HasColumnType("INTEGER"); + + b.Property("Lba50000ReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba50000RwData") + .HasColumnType("BLOB"); + + b.Property("Lba50000RwDecodedSense") + .HasColumnType("TEXT"); + + b.Property("Lba50000RwReadable") + .HasColumnType("INTEGER"); + + b.Property("Lba50000RwReadableCluster") + .HasColumnType("INTEGER"); + + b.Property("Lba50000RwSense") + .HasColumnType("BLOB"); + + b.Property("Lba50000Sense") + .HasColumnType("BLOB"); + + b.Property("MaximumReadablePqInHdArea") + .HasColumnType("BLOB"); + + b.Property("MaximumReadableRwInHdArea") + .HasColumnType("BLOB"); + + b.Property("MaximumReadableSectorInHdArea") + .HasColumnType("INTEGER"); + + b.Property("MinimumReadableSectorInHdArea") + .HasColumnType("INTEGER"); + + b.Property("RecognizedSwapDisc") + .HasColumnType("INTEGER"); + + b.Property("SwapDiscLeadOutPFRAM") + .HasColumnType("INTEGER"); + + b.Property("SwapDiscLeadOutPMIN") + .HasColumnType("INTEGER"); + + b.Property("SwapDiscLeadOutPSEC") + .HasColumnType("INTEGER"); + + b.Property("SwapDiscLeadOutStart") + .HasColumnType("INTEGER"); + + b.Property("TestCrashed") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("GdRomSwapDiscCapabilities"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("FeaturesId") + .HasColumnType("INTEGER"); + + b.Property("ModeSense2AData") + .HasColumnType("BLOB"); + + b.HasKey("Id"); + + b.HasIndex("FeaturesId"); + + b.ToTable("Mmc"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.MmcFeatures", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("AACSVersion") + .HasColumnType("INTEGER"); + + b.Property("AGIDs") + .HasColumnType("INTEGER"); + + b.Property("BinaryData") + .HasColumnType("BLOB"); + + b.Property("BindingNonceBlocks") + .HasColumnType("INTEGER"); + + b.Property("BlocksPerReadableUnit") + .HasColumnType("INTEGER"); + + b.Property("BufferUnderrunFreeInDVD") + .HasColumnType("INTEGER"); + + b.Property("BufferUnderrunFreeInSAO") + .HasColumnType("INTEGER"); + + b.Property("BufferUnderrunFreeInTAO") + .HasColumnType("INTEGER"); + + b.Property("CPRMVersion") + .HasColumnType("INTEGER"); + + b.Property("CSSVersion") + .HasColumnType("INTEGER"); + + b.Property("CanAudioScan") + .HasColumnType("INTEGER"); + + b.Property("CanEject") + .HasColumnType("INTEGER"); + + b.Property("CanEraseSector") + .HasColumnType("INTEGER"); + + b.Property("CanExpandBDRESpareArea") + .HasColumnType("INTEGER"); + + b.Property("CanFormat") + .HasColumnType("INTEGER"); + + b.Property("CanFormatBDREWithoutSpare") + .HasColumnType("INTEGER"); + + b.Property("CanFormatCert") + .HasColumnType("INTEGER"); + + b.Property("CanFormatFRF") + .HasColumnType("INTEGER"); + + b.Property("CanFormatQCert") + .HasColumnType("INTEGER"); + + b.Property("CanFormatRRM") + .HasColumnType("INTEGER"); + + b.Property("CanGenerateBindingNonce") + .HasColumnType("INTEGER"); + + b.Property("CanLoad") + .HasColumnType("INTEGER"); + + b.Property("CanMuteSeparateChannels") + .HasColumnType("INTEGER"); + + b.Property("CanOverwriteSAOTrack") + .HasColumnType("INTEGER"); + + b.Property("CanOverwriteTAOTrack") + .HasColumnType("INTEGER"); + + b.Property("CanPlayCDAudio") + .HasColumnType("INTEGER"); + + b.Property("CanPseudoOverwriteBDR") + .HasColumnType("INTEGER"); + + b.Property("CanReadAllDualR") + .HasColumnType("INTEGER"); + + b.Property("CanReadAllDualRW") + .HasColumnType("INTEGER"); + + b.Property("CanReadBD") + .HasColumnType("INTEGER"); + + b.Property("CanReadBDR") + .HasColumnType("INTEGER"); + + b.Property("CanReadBDRE1") + .HasColumnType("INTEGER"); + + b.Property("CanReadBDRE2") + .HasColumnType("INTEGER"); + + b.Property("CanReadBDROM") + .HasColumnType("INTEGER"); + + b.Property("CanReadBluBCA") + .HasColumnType("INTEGER"); + + b.Property("CanReadCD") + .HasColumnType("INTEGER"); + + b.Property("CanReadCDMRW") + .HasColumnType("INTEGER"); + + b.Property("CanReadCPRM_MKB") + .HasColumnType("INTEGER"); + + b.Property("CanReadDDCD") + .HasColumnType("INTEGER"); + + b.Property("CanReadDVD") + .HasColumnType("INTEGER"); + + b.Property("CanReadDVDPlusMRW") + .HasColumnType("INTEGER"); + + b.Property("CanReadDVDPlusR") + .HasColumnType("INTEGER"); + + b.Property("CanReadDVDPlusRDL") + .HasColumnType("INTEGER"); + + b.Property("CanReadDVDPlusRW") + .HasColumnType("INTEGER"); + + b.Property("CanReadDVDPlusRWDL") + .HasColumnType("INTEGER"); + + b.Property("CanReadDriveAACSCertificate") + .HasColumnType("INTEGER"); + + b.Property("CanReadHDDVD") + .HasColumnType("INTEGER"); + + b.Property("CanReadHDDVDR") + .HasColumnType("INTEGER"); + + b.Property("CanReadHDDVDRAM") + .HasColumnType("INTEGER"); + + b.Property("CanReadLeadInCDText") + .HasColumnType("INTEGER"); + + b.Property("CanReadOldBDR") + .HasColumnType("INTEGER"); + + b.Property("CanReadOldBDRE") + .HasColumnType("INTEGER"); + + b.Property("CanReadOldBDROM") + .HasColumnType("INTEGER"); + + b.Property("CanReadSpareAreaInformation") + .HasColumnType("INTEGER"); + + b.Property("CanReportDriveSerial") + .HasColumnType("INTEGER"); + + b.Property("CanReportMediaSerial") + .HasColumnType("INTEGER"); + + b.Property("CanTestWriteDDCDR") + .HasColumnType("INTEGER"); + + b.Property("CanTestWriteDVD") + .HasColumnType("INTEGER"); + + b.Property("CanTestWriteInSAO") + .HasColumnType("INTEGER"); + + b.Property("CanTestWriteInTAO") + .HasColumnType("INTEGER"); + + b.Property("CanUpgradeFirmware") + .HasColumnType("INTEGER"); + + b.Property("CanWriteBD") + .HasColumnType("INTEGER"); + + b.Property("CanWriteBDR") + .HasColumnType("INTEGER"); + + b.Property("CanWriteBDRE1") + .HasColumnType("INTEGER"); + + b.Property("CanWriteBDRE2") + .HasColumnType("INTEGER"); + + b.Property("CanWriteBusEncryptedBlocks") + .HasColumnType("INTEGER"); + + b.Property("CanWriteCDMRW") + .HasColumnType("INTEGER"); + + b.Property("CanWriteCDRW") + .HasColumnType("INTEGER"); + + b.Property("CanWriteCDRWCAV") + .HasColumnType("INTEGER"); + + b.Property("CanWriteCDSAO") + .HasColumnType("INTEGER"); + + b.Property("CanWriteCDTAO") + .HasColumnType("INTEGER"); + + b.Property("CanWriteCSSManagedDVD") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDDCDR") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDDCDRW") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDVDPlusMRW") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDVDPlusR") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDVDPlusRDL") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDVDPlusRW") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDVDPlusRWDL") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDVDR") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDVDRDL") + .HasColumnType("INTEGER"); + + b.Property("CanWriteDVDRW") + .HasColumnType("INTEGER"); + + b.Property("CanWriteHDDVDR") + .HasColumnType("INTEGER"); + + b.Property("CanWriteHDDVDRAM") + .HasColumnType("INTEGER"); + + b.Property("CanWriteOldBDR") + .HasColumnType("INTEGER"); + + b.Property("CanWriteOldBDRE") + .HasColumnType("INTEGER"); + + b.Property("CanWritePackedSubchannelInTAO") + .HasColumnType("INTEGER"); + + b.Property("CanWriteRWSubchannelInSAO") + .HasColumnType("INTEGER"); + + b.Property("CanWriteRWSubchannelInTAO") + .HasColumnType("INTEGER"); + + b.Property("CanWriteRaw") + .HasColumnType("INTEGER"); + + b.Property("CanWriteRawMultiSession") + .HasColumnType("INTEGER"); + + b.Property("CanWriteRawSubchannelInTAO") + .HasColumnType("INTEGER"); + + b.Property("ChangerIsSideChangeCapable") + .HasColumnType("INTEGER"); + + b.Property("ChangerSlots") + .HasColumnType("INTEGER"); + + b.Property("ChangerSupportsDiscPresent") + .HasColumnType("INTEGER"); + + b.Property("DBML") + .HasColumnType("INTEGER"); + + b.Property("DVDMultiRead") + .HasColumnType("INTEGER"); + + b.Property("EmbeddedChanger") + .HasColumnType("INTEGER"); + + b.Property("ErrorRecoveryPage") + .HasColumnType("INTEGER"); + + b.Property("FirmwareDate") + .HasColumnType("TEXT"); + + b.Property("LoadingMechanismType") + .HasColumnType("INTEGER"); + + b.Property("Locked") + .HasColumnType("INTEGER"); + + b.Property("LogicalBlockSize") + .HasColumnType("INTEGER"); + + b.Property("MultiRead") + .HasColumnType("INTEGER"); + + b.Property("PhysicalInterfaceStandardNumber") + .HasColumnType("INTEGER"); + + b.Property("PreventJumper") + .HasColumnType("INTEGER"); + + b.Property("SupportsAACS") + .HasColumnType("INTEGER"); + + b.Property("SupportsBusEncryption") + .HasColumnType("INTEGER"); + + b.Property("SupportsC2") + .HasColumnType("INTEGER"); + + b.Property("SupportsCPRM") + .HasColumnType("INTEGER"); + + b.Property("SupportsCSS") + .HasColumnType("INTEGER"); + + b.Property("SupportsDAP") + .HasColumnType("INTEGER"); + + b.Property("SupportsDeviceBusyEvent") + .HasColumnType("INTEGER"); + + b.Property("SupportsHybridDiscs") + .HasColumnType("INTEGER"); + + b.Property("SupportsModePage1Ch") + .HasColumnType("INTEGER"); + + b.Property("SupportsOSSC") + .HasColumnType("INTEGER"); + + b.Property("SupportsPWP") + .HasColumnType("INTEGER"); + + b.Property("SupportsSWPP") + .HasColumnType("INTEGER"); + + b.Property("SupportsSecurDisc") + .HasColumnType("INTEGER"); + + b.Property("SupportsSeparateVolume") + .HasColumnType("INTEGER"); + + b.Property("SupportsVCPS") + .HasColumnType("INTEGER"); + + b.Property("SupportsWriteInhibitDCB") + .HasColumnType("INTEGER"); + + b.Property("SupportsWriteProtectPAC") + .HasColumnType("INTEGER"); + + b.Property("VolumeLevels") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("MmcFeatures"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.MmcSd", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("CID") + .HasColumnType("BLOB"); + + b.Property("CSD") + .HasColumnType("BLOB"); + + b.Property("ExtendedCSD") + .HasColumnType("BLOB"); + + b.Property("OCR") + .HasColumnType("BLOB"); + + b.Property("SCR") + .HasColumnType("BLOB"); + + b.HasKey("Id"); + + b.ToTable("MmcSd"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Pcmcia", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("CIS") + .HasColumnType("BLOB"); + + b.Property("CardCode") + .HasColumnType("INTEGER"); + + b.Property("Compliance") + .HasColumnType("TEXT"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("ManufacturerCode") + .HasColumnType("INTEGER"); + + b.Property("ProductName") + .HasColumnType("TEXT"); + + b.HasKey("Id"); + + b.ToTable("Pcmcia"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Scsi", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("InquiryData") + .HasColumnType("BLOB"); + + b.Property("ModeSense10ChangeableData") + .HasColumnType("BLOB"); + + b.Property("ModeSense10CurrentData") + .HasColumnType("BLOB"); + + b.Property("ModeSense10Data") + .HasColumnType("BLOB"); + + b.Property("ModeSense6ChangeableData") + .HasColumnType("BLOB"); + + b.Property("ModeSense6CurrentData") + .HasColumnType("BLOB"); + + b.Property("ModeSense6Data") + .HasColumnType("BLOB"); + + b.Property("ModeSenseId") + .HasColumnType("INTEGER"); + + b.Property("MultiMediaDeviceId") + .HasColumnType("INTEGER"); + + b.Property("ReadCapabilitiesId") + .HasColumnType("INTEGER"); + + b.Property("SequentialDeviceId") + .HasColumnType("INTEGER"); + + b.Property("SupportsModeSense10") + .HasColumnType("INTEGER"); + + b.Property("SupportsModeSense6") + .HasColumnType("INTEGER"); + + b.Property("SupportsModeSubpages") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ModeSenseId"); + + b.HasIndex("MultiMediaDeviceId"); + + b.HasIndex("ReadCapabilitiesId"); + + b.HasIndex("SequentialDeviceId"); + + b.ToTable("Scsi"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiMode", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("BlankCheckEnabled") + .HasColumnType("INTEGER"); + + b.Property("BufferedMode") + .HasColumnType("INTEGER"); + + b.Property("DPOandFUA") + .HasColumnType("INTEGER"); + + b.Property("MediumType") + .HasColumnType("INTEGER"); + + b.Property("Speed") + .HasColumnType("INTEGER"); + + b.Property("WriteProtected") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("ScsiMode"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiPage", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("ScsiId") + .HasColumnType("INTEGER"); + + b.Property("ScsiModeId") + .HasColumnType("INTEGER"); + + b.Property("page") + .HasColumnType("INTEGER"); + + b.Property("subpage") + .HasColumnType("INTEGER"); + + b.Property("value") + .HasColumnType("BLOB"); + + b.HasKey("Id"); + + b.HasIndex("ScsiId"); + + b.HasIndex("ScsiModeId"); + + b.ToTable("ScsiPage"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ssc", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("BlockSizeGranularity") + .HasColumnType("INTEGER"); + + b.Property("MaxBlockLength") + .HasColumnType("INTEGER"); + + b.Property("MinBlockLength") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("Ssc"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.SscSupportedMedia", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Description") + .HasColumnType("TEXT"); + + b.Property("Length") + .HasColumnType("INTEGER"); + + b.Property("MediumType") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Organization") + .HasColumnType("TEXT"); + + b.Property("SscId") + .HasColumnType("INTEGER"); + + b.Property("TestedSequentialMediaId") + .HasColumnType("INTEGER"); + + b.Property("Width") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("SscId"); + + b.HasIndex("TestedSequentialMediaId"); + + b.ToTable("SscSupportedMedia"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.SupportedDensity", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("BitsPerMm") + .HasColumnType("INTEGER"); + + b.Property("Capacity") + .HasColumnType("INTEGER"); + + b.Property("DefaultDensity") + .HasColumnType("INTEGER"); + + b.Property("Description") + .HasColumnType("TEXT"); + + b.Property("Duplicate") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Organization") + .HasColumnType("TEXT"); + + b.Property("PrimaryCode") + .HasColumnType("INTEGER"); + + b.Property("SecondaryCode") + .HasColumnType("INTEGER"); + + b.Property("SscId") + .HasColumnType("INTEGER"); + + b.Property("TestedSequentialMediaId") + .HasColumnType("INTEGER"); + + b.Property("Tracks") + .HasColumnType("INTEGER"); + + b.Property("Width") + .HasColumnType("INTEGER"); + + b.Property("Writable") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("SscId"); + + b.HasIndex("TestedSequentialMediaId"); + + b.ToTable("SupportedDensity"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedMedia", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("AdipData") + .HasColumnType("BLOB"); + + b.Property("AtaId") + .HasColumnType("INTEGER"); + + b.Property("AtipData") + .HasColumnType("BLOB"); + + b.Property("BlockSize") + .HasColumnType("INTEGER"); + + b.Property("Blocks") + .HasColumnType("INTEGER"); + + b.Property("BluBcaData") + .HasColumnType("BLOB"); + + b.Property("BluDdsData") + .HasColumnType("BLOB"); + + b.Property("BluDiData") + .HasColumnType("BLOB"); + + b.Property("BluPacData") + .HasColumnType("BLOB"); + + b.Property("BluSaiData") + .HasColumnType("BLOB"); + + b.Property("C2PointersData") + .HasColumnType("BLOB"); + + b.Property("CHSId") + .HasColumnType("INTEGER"); + + b.Property("CanReadAACS") + .HasColumnType("INTEGER"); + + b.Property("CanReadADIP") + .HasColumnType("INTEGER"); + + b.Property("CanReadATIP") + .HasColumnType("INTEGER"); + + b.Property("CanReadBCA") + .HasColumnType("INTEGER"); + + b.Property("CanReadC2Pointers") + .HasColumnType("INTEGER"); + + b.Property("CanReadCMI") + .HasColumnType("INTEGER"); + + b.Property("CanReadCdScrambled") + .HasColumnType("INTEGER"); + + b.Property("CanReadCorrectedSubchannel") + .HasColumnType("INTEGER"); + + b.Property("CanReadCorrectedSubchannelWithC2") + .HasColumnType("INTEGER"); + + b.Property("CanReadDCB") + .HasColumnType("INTEGER"); + + b.Property("CanReadDDS") + .HasColumnType("INTEGER"); + + b.Property("CanReadDMI") + .HasColumnType("INTEGER"); + + b.Property("CanReadDiscInformation") + .HasColumnType("INTEGER"); + + b.Property("CanReadF1_06") + .HasColumnType("INTEGER"); + + b.Property("CanReadF1_06LeadOut") + .HasColumnType("INTEGER"); + + b.Property("CanReadFirstTrackPreGap") + .HasColumnType("INTEGER"); + + b.Property("CanReadFullTOC") + .HasColumnType("INTEGER"); + + b.Property("CanReadHDCMI") + .HasColumnType("INTEGER"); + + b.Property("CanReadLayerCapacity") + .HasColumnType("INTEGER"); + + b.Property("CanReadLeadIn") + .HasColumnType("INTEGER"); + + b.Property("CanReadLeadOut") + .HasColumnType("INTEGER"); + + b.Property("CanReadMediaID") + .HasColumnType("INTEGER"); + + b.Property("CanReadMediaSerial") + .HasColumnType("INTEGER"); + + b.Property("CanReadPAC") + .HasColumnType("INTEGER"); + + b.Property("CanReadPFI") + .HasColumnType("INTEGER"); + + b.Property("CanReadPMA") + .HasColumnType("INTEGER"); + + b.Property("CanReadPQSubchannel") + .HasColumnType("INTEGER"); + + b.Property("CanReadPQSubchannelWithC2") + .HasColumnType("INTEGER"); + + b.Property("CanReadPRI") + .HasColumnType("INTEGER"); + + b.Property("CanReadRWSubchannel") + .HasColumnType("INTEGER"); + + b.Property("CanReadRWSubchannelWithC2") + .HasColumnType("INTEGER"); + + b.Property("CanReadRecordablePFI") + .HasColumnType("INTEGER"); + + b.Property("CanReadSpareAreaInformation") + .HasColumnType("INTEGER"); + + b.Property("CanReadTOC") + .HasColumnType("INTEGER"); + + b.Property("CanReadingIntersessionLeadIn") + .HasColumnType("INTEGER"); + + b.Property("CanReadingIntersessionLeadOut") + .HasColumnType("INTEGER"); + + b.Property("CmiData") + .HasColumnType("BLOB"); + + b.Property("CorrectedSubchannelData") + .HasColumnType("BLOB"); + + b.Property("CorrectedSubchannelWithC2Data") + .HasColumnType("BLOB"); + + b.Property("CurrentCHSId") + .HasColumnType("INTEGER"); + + b.Property("DcbData") + .HasColumnType("BLOB"); + + b.Property("Density") + .HasColumnType("INTEGER"); + + b.Property("DmiData") + .HasColumnType("BLOB"); + + b.Property("DvdAacsData") + .HasColumnType("BLOB"); + + b.Property("DvdBcaData") + .HasColumnType("BLOB"); + + b.Property("DvdDdsData") + .HasColumnType("BLOB"); + + b.Property("DvdLayerData") + .HasColumnType("BLOB"); + + b.Property("DvdSaiData") + .HasColumnType("BLOB"); + + b.Property("EmbossedPfiData") + .HasColumnType("BLOB"); + + b.Property("FullTocData") + .HasColumnType("BLOB"); + + b.Property("HLDTSTReadRawDVDData") + .HasColumnType("BLOB"); + + b.Property("HdCmiData") + .HasColumnType("BLOB"); + + b.Property("IdentifyData") + .HasColumnType("BLOB"); + + b.Property("IntersessionLeadInData") + .HasColumnType("BLOB"); + + b.Property("IntersessionLeadOutData") + .HasColumnType("BLOB"); + + b.Property("LBA48Sectors") + .HasColumnType("INTEGER"); + + b.Property("LBASectors") + .HasColumnType("INTEGER"); + + b.Property("LeadInData") + .HasColumnType("BLOB"); + + b.Property("LeadOutData") + .HasColumnType("BLOB"); + + b.Property("LogicalAlignment") + .HasColumnType("INTEGER"); + + b.Property("LongBlockSize") + .HasColumnType("INTEGER"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("MediaIsRecognized") + .HasColumnType("INTEGER"); + + b.Property("MediumType") + .HasColumnType("INTEGER"); + + b.Property("MediumTypeName") + .HasColumnType("TEXT"); + + b.Property("MmcId") + .HasColumnType("INTEGER"); + + b.Property("ModeSense10Data") + .HasColumnType("BLOB"); + + b.Property("ModeSense6Data") + .HasColumnType("BLOB"); + + b.Property("Model") + .HasColumnType("TEXT"); + + b.Property("NecReadCddaData") + .HasColumnType("BLOB"); + + b.Property("NominalRotationRate") + .HasColumnType("INTEGER"); + + b.Property("PQSubchannelData") + .HasColumnType("BLOB"); + + b.Property("PQSubchannelWithC2Data") + .HasColumnType("BLOB"); + + b.Property("PfiData") + .HasColumnType("BLOB"); + + b.Property("PhysicalBlockSize") + .HasColumnType("INTEGER"); + + b.Property("PioneerReadCddaData") + .HasColumnType("BLOB"); + + b.Property("PioneerReadCddaMsfData") + .HasColumnType("BLOB"); + + b.Property("PlextorReadCddaData") + .HasColumnType("BLOB"); + + b.Property("PlextorReadRawDVDData") + .HasColumnType("BLOB"); + + b.Property("PmaData") + .HasColumnType("BLOB"); + + b.Property("PriData") + .HasColumnType("BLOB"); + + b.Property("RWSubchannelData") + .HasColumnType("BLOB"); + + b.Property("RWSubchannelWithC2Data") + .HasColumnType("BLOB"); + + b.Property("Read10Data") + .HasColumnType("BLOB"); + + b.Property("Read12Data") + .HasColumnType("BLOB"); + + b.Property("Read16Data") + .HasColumnType("BLOB"); + + b.Property("Read6Data") + .HasColumnType("BLOB"); + + b.Property("ReadCdData") + .HasColumnType("BLOB"); + + b.Property("ReadCdFullData") + .HasColumnType("BLOB"); + + b.Property("ReadCdMsfData") + .HasColumnType("BLOB"); + + b.Property("ReadCdMsfFullData") + .HasColumnType("BLOB"); + + b.Property("ReadCdScrambledData") + .HasColumnType("BLOB"); + + b.Property("ReadDmaData") + .HasColumnType("BLOB"); + + b.Property("ReadDmaLba48Data") + .HasColumnType("BLOB"); + + b.Property("ReadDmaLbaData") + .HasColumnType("BLOB"); + + b.Property("ReadDmaRetryData") + .HasColumnType("BLOB"); + + b.Property("ReadDmaRetryLbaData") + .HasColumnType("BLOB"); + + b.Property("ReadF1_06Data") + .HasColumnType("BLOB"); + + b.Property("ReadF1_06LeadOutData") + .HasColumnType("BLOB"); + + b.Property("ReadLba48Data") + .HasColumnType("BLOB"); + + b.Property("ReadLbaData") + .HasColumnType("BLOB"); + + b.Property("ReadLong10Data") + .HasColumnType("BLOB"); + + b.Property("ReadLong16Data") + .HasColumnType("BLOB"); + + b.Property("ReadLongData") + .HasColumnType("BLOB"); + + b.Property("ReadLongLbaData") + .HasColumnType("BLOB"); + + b.Property("ReadLongRetryData") + .HasColumnType("BLOB"); + + b.Property("ReadLongRetryLbaData") + .HasColumnType("BLOB"); + + b.Property("ReadRetryLbaData") + .HasColumnType("BLOB"); + + b.Property("ReadSectorsData") + .HasColumnType("BLOB"); + + b.Property("ReadSectorsRetryData") + .HasColumnType("BLOB"); + + b.Property("ScsiId") + .HasColumnType("INTEGER"); + + b.Property("SolidStateDevice") + .HasColumnType("INTEGER"); + + b.Property("SupportsHLDTSTReadRawDVD") + .HasColumnType("INTEGER"); + + b.Property("SupportsNECReadCDDA") + .HasColumnType("INTEGER"); + + b.Property("SupportsPioneerReadCDDA") + .HasColumnType("INTEGER"); + + b.Property("SupportsPioneerReadCDDAMSF") + .HasColumnType("INTEGER"); + + b.Property("SupportsPlextorReadCDDA") + .HasColumnType("INTEGER"); + + b.Property("SupportsPlextorReadRawDVD") + .HasColumnType("INTEGER"); + + b.Property("SupportsRead10") + .HasColumnType("INTEGER"); + + b.Property("SupportsRead12") + .HasColumnType("INTEGER"); + + b.Property("SupportsRead16") + .HasColumnType("INTEGER"); + + b.Property("SupportsRead6") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadCapacity") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadCapacity16") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadCd") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadCdMsf") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadCdMsfRaw") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadCdRaw") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadDma") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadDmaLba") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadDmaLba48") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadDmaRetry") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadDmaRetryLba") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadLba") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadLba48") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadLong") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadLong16") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadLongLba") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadLongRetry") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadLongRetryLba") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadRetry") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadRetryLba") + .HasColumnType("INTEGER"); + + b.Property("SupportsReadSectors") + .HasColumnType("INTEGER"); + + b.Property("SupportsSeek") + .HasColumnType("INTEGER"); + + b.Property("SupportsSeekLba") + .HasColumnType("INTEGER"); + + b.Property("TocData") + .HasColumnType("BLOB"); + + b.Property("Track1PregapData") + .HasColumnType("BLOB"); + + b.Property("UnformattedBPS") + .HasColumnType("INTEGER"); + + b.Property("UnformattedBPT") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("AtaId"); + + b.HasIndex("CHSId"); + + b.HasIndex("CurrentCHSId"); + + b.HasIndex("MmcId"); + + b.HasIndex("ScsiId"); + + b.ToTable("TestedMedia"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("CanReadMediaSerial") + .HasColumnType("INTEGER"); + + b.Property("Density") + .HasColumnType("INTEGER"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("MediaIsRecognized") + .HasColumnType("INTEGER"); + + b.Property("MediumType") + .HasColumnType("INTEGER"); + + b.Property("MediumTypeName") + .HasColumnType("TEXT"); + + b.Property("ModeSense10Data") + .HasColumnType("BLOB"); + + b.Property("ModeSense6Data") + .HasColumnType("BLOB"); + + b.Property("Model") + .HasColumnType("TEXT"); + + b.Property("SscId") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("SscId"); + + b.ToTable("TestedSequentialMedia"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Usb", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Descriptors") + .HasColumnType("BLOB"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("Product") + .HasColumnType("TEXT"); + + b.Property("ProductID") + .HasColumnType("INTEGER"); + + b.Property("RemovableMedia") + .HasColumnType("INTEGER"); + + b.Property("VendorID") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("Usb"); + }); + + modelBuilder.Entity("Aaru.Database.Models.CdOffset", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("AddedWhen") + .HasColumnType("TEXT"); + + b.Property("Agreement") + .HasColumnType("REAL"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("Model") + .HasColumnType("TEXT"); + + b.Property("ModifiedWhen") + .HasColumnType("TEXT"); + + b.Property("Offset") + .HasColumnType("INTEGER"); + + b.Property("Submissions") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ModifiedWhen"); + + b.ToTable("CdOffsets"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Command", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("Commands"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("ATAId") + .HasColumnType("INTEGER"); + + b.Property("ATAPIId") + .HasColumnType("INTEGER"); + + b.Property("CanReadGdRomUsingSwapDisc") + .HasColumnType("INTEGER"); + + b.Property("CompactFlash") + .HasColumnType("INTEGER"); + + b.Property("FireWireId") + .HasColumnType("INTEGER"); + + b.Property("GdRomSwapDiscCapabilitiesId") + .HasColumnType("INTEGER"); + + b.Property("LastSynchronized") + .HasColumnType("TEXT"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("Model") + .HasColumnType("TEXT"); + + b.Property("MultiMediaCardId") + .HasColumnType("INTEGER"); + + b.Property("OptimalMultipleSectorsRead") + .HasColumnType("INTEGER"); + + b.Property("PCMCIAId") + .HasColumnType("INTEGER"); + + b.Property("Revision") + .HasColumnType("TEXT"); + + b.Property("SCSIId") + .HasColumnType("INTEGER"); + + b.Property("SecureDigitalId") + .HasColumnType("INTEGER"); + + b.Property("Type") + .HasColumnType("INTEGER"); + + b.Property("USBId") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ATAId"); + + b.HasIndex("ATAPIId"); + + b.HasIndex("FireWireId"); + + b.HasIndex("GdRomSwapDiscCapabilitiesId"); + + b.HasIndex("MultiMediaCardId"); + + b.HasIndex("PCMCIAId"); + + b.HasIndex("SCSIId"); + + b.HasIndex("SecureDigitalId"); + + b.HasIndex("USBId"); + + b.ToTable("Devices"); + }); + + modelBuilder.Entity("Aaru.Database.Models.DeviceStat", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Bus") + .HasColumnType("TEXT"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("Model") + .HasColumnType("TEXT"); + + b.Property("Revision") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("SeenDevices"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Filesystem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("Filesystems"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Filter", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("Filters"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Media", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Real") + .HasColumnType("INTEGER"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.Property("Type") + .HasColumnType("TEXT"); + + b.HasKey("Id"); + + b.ToTable("Medias"); + }); + + modelBuilder.Entity("Aaru.Database.Models.MediaFormat", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("MediaFormats"); + }); + + modelBuilder.Entity("Aaru.Database.Models.NesHeaderInfo", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("AddedWhen") + .HasColumnType("TEXT"); + + b.Property("BatteryPresent") + .HasColumnType("INTEGER"); + + b.Property("ConsoleType") + .HasColumnType("INTEGER"); + + b.Property("DefaultExpansionDevice") + .HasColumnType("INTEGER"); + + b.Property("ExtendedConsoleType") + .HasColumnType("INTEGER"); + + b.Property("FourScreenMode") + .HasColumnType("INTEGER"); + + b.Property("Mapper") + .HasColumnType("INTEGER"); + + b.Property("ModifiedWhen") + .HasColumnType("TEXT"); + + b.Property("NametableMirroring") + .HasColumnType("INTEGER"); + + b.Property("Sha256") + .HasMaxLength(32) + .HasColumnType("TEXT"); + + b.Property("Submapper") + .HasColumnType("INTEGER"); + + b.Property("TimingMode") + .HasColumnType("INTEGER"); + + b.Property("VsHardwareType") + .HasColumnType("INTEGER"); + + b.Property("VsPpuType") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ModifiedWhen"); + + b.HasIndex("Sha256"); + + b.ToTable("NesHeaders"); + }); + + modelBuilder.Entity("Aaru.Database.Models.OperatingSystem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.Property("Version") + .HasColumnType("TEXT"); + + b.HasKey("Id"); + + b.ToTable("OperatingSystems"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Partition", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("Partitions"); + }); + + modelBuilder.Entity("Aaru.Database.Models.RemoteApplication", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.Property("Version") + .HasColumnType("TEXT"); + + b.HasKey("Id"); + + b.ToTable("RemoteApplications"); + }); + + modelBuilder.Entity("Aaru.Database.Models.RemoteArchitecture", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("RemoteArchitectures"); + }); + + modelBuilder.Entity("Aaru.Database.Models.RemoteOperatingSystem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.Property("Version") + .HasColumnType("TEXT"); + + b.HasKey("Id"); + + b.ToTable("RemoteOperatingSystems"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Report", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("ATAId") + .HasColumnType("INTEGER"); + + b.Property("ATAPIId") + .HasColumnType("INTEGER"); + + b.Property("CompactFlash") + .HasColumnType("INTEGER"); + + b.Property("Created") + .HasColumnType("TEXT"); + + b.Property("FireWireId") + .HasColumnType("INTEGER"); + + b.Property("GdRomSwapDiscCapabilitiesId") + .HasColumnType("INTEGER"); + + b.Property("Manufacturer") + .HasColumnType("TEXT"); + + b.Property("Model") + .HasColumnType("TEXT"); + + b.Property("MultiMediaCardId") + .HasColumnType("INTEGER"); + + b.Property("PCMCIAId") + .HasColumnType("INTEGER"); + + b.Property("Revision") + .HasColumnType("TEXT"); + + b.Property("SCSIId") + .HasColumnType("INTEGER"); + + b.Property("SecureDigitalId") + .HasColumnType("INTEGER"); + + b.Property("Type") + .HasColumnType("INTEGER"); + + b.Property("USBId") + .HasColumnType("INTEGER"); + + b.Property("Uploaded") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ATAId"); + + b.HasIndex("ATAPIId"); + + b.HasIndex("FireWireId"); + + b.HasIndex("GdRomSwapDiscCapabilitiesId"); + + b.HasIndex("MultiMediaCardId"); + + b.HasIndex("PCMCIAId"); + + b.HasIndex("SCSIId"); + + b.HasIndex("SecureDigitalId"); + + b.HasIndex("USBId"); + + b.ToTable("Reports"); + }); + + modelBuilder.Entity("Aaru.Database.Models.UsbProduct", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("AddedWhen") + .HasColumnType("TEXT"); + + b.Property("ModifiedWhen") + .HasColumnType("TEXT"); + + b.Property("Product") + .HasColumnType("TEXT"); + + b.Property("ProductId") + .HasColumnType("INTEGER"); + + b.Property("VendorId") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ModifiedWhen"); + + b.HasIndex("ProductId"); + + b.HasIndex("VendorId"); + + b.ToTable("UsbProducts"); + }); + + modelBuilder.Entity("Aaru.Database.Models.UsbVendor", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("AddedWhen") + .HasColumnType("TEXT"); + + b.Property("ModifiedWhen") + .HasColumnType("TEXT"); + + b.Property("Vendor") + .HasColumnType("TEXT"); + + b.HasKey("Id"); + + b.HasIndex("ModifiedWhen"); + + b.ToTable("UsbVendors"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Version", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("Count") + .HasColumnType("INTEGER"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("Synchronized") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.ToTable("Versions"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities") + .WithMany() + .HasForeignKey("ReadCapabilitiesId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("ReadCapabilities"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.BlockDescriptor", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null) + .WithMany("BlockDescriptors") + .HasForeignKey("ScsiModeId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.DensityCode", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.SscSupportedMedia", null) + .WithMany("DensityCodes") + .HasForeignKey("SscSupportedMediaId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.MmcFeatures", "Features") + .WithMany() + .HasForeignKey("FeaturesId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("Features"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Scsi", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", "ModeSense") + .WithMany() + .HasForeignKey("ModeSenseId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Mmc", "MultiMediaDevice") + .WithMany() + .HasForeignKey("MultiMediaDeviceId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities") + .WithMany() + .HasForeignKey("ReadCapabilitiesId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", "SequentialDevice") + .WithMany() + .HasForeignKey("SequentialDeviceId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("ModeSense"); + + b.Navigation("MultiMediaDevice"); + + b.Navigation("ReadCapabilities"); + + b.Navigation("SequentialDevice"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiPage", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null) + .WithMany("EVPDPages") + .HasForeignKey("ScsiId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null) + .WithMany("ModePages") + .HasForeignKey("ScsiModeId") + .OnDelete(DeleteBehavior.SetNull); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.SscSupportedMedia", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null) + .WithMany("SupportedMediaTypes") + .HasForeignKey("SscId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null) + .WithMany("SupportedMediaTypes") + .HasForeignKey("TestedSequentialMediaId") + .OnDelete(DeleteBehavior.SetNull); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.SupportedDensity", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null) + .WithMany("SupportedDensities") + .HasForeignKey("SscId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null) + .WithMany("SupportedDensities") + .HasForeignKey("TestedSequentialMediaId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedMedia", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", null) + .WithMany("RemovableMedias") + .HasForeignKey("AtaId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CHS") + .WithMany() + .HasForeignKey("CHSId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CurrentCHS") + .WithMany() + .HasForeignKey("CurrentCHSId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Mmc", null) + .WithMany("TestedMedia") + .HasForeignKey("MmcId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null) + .WithMany("RemovableMedias") + .HasForeignKey("ScsiId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("CHS"); + + b.Navigation("CurrentCHS"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null) + .WithMany("TestedMedia") + .HasForeignKey("SscId") + .OnDelete(DeleteBehavior.SetNull); + }); + + modelBuilder.Entity("Aaru.Database.Models.Device", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA") + .WithMany() + .HasForeignKey("ATAId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI") + .WithMany() + .HasForeignKey("ATAPIId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire") + .WithMany() + .HasForeignKey("FireWireId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.GdRomSwapDiscCapabilities", "GdRomSwapDiscCapabilities") + .WithMany() + .HasForeignKey("GdRomSwapDiscCapabilitiesId"); + + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard") + .WithMany() + .HasForeignKey("MultiMediaCardId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA") + .WithMany() + .HasForeignKey("PCMCIAId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI") + .WithMany() + .HasForeignKey("SCSIId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital") + .WithMany() + .HasForeignKey("SecureDigitalId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB") + .WithMany() + .HasForeignKey("USBId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("ATA"); + + b.Navigation("ATAPI"); + + b.Navigation("FireWire"); + + b.Navigation("GdRomSwapDiscCapabilities"); + + b.Navigation("MultiMediaCard"); + + b.Navigation("PCMCIA"); + + b.Navigation("SCSI"); + + b.Navigation("SecureDigital"); + + b.Navigation("USB"); + }); + + modelBuilder.Entity("Aaru.Database.Models.Report", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA") + .WithMany() + .HasForeignKey("ATAId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI") + .WithMany() + .HasForeignKey("ATAPIId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire") + .WithMany() + .HasForeignKey("FireWireId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.GdRomSwapDiscCapabilities", "GdRomSwapDiscCapabilities") + .WithMany() + .HasForeignKey("GdRomSwapDiscCapabilitiesId"); + + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard") + .WithMany() + .HasForeignKey("MultiMediaCardId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA") + .WithMany() + .HasForeignKey("PCMCIAId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI") + .WithMany() + .HasForeignKey("SCSIId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital") + .WithMany() + .HasForeignKey("SecureDigitalId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB") + .WithMany() + .HasForeignKey("USBId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("ATA"); + + b.Navigation("ATAPI"); + + b.Navigation("FireWire"); + + b.Navigation("GdRomSwapDiscCapabilities"); + + b.Navigation("MultiMediaCard"); + + b.Navigation("PCMCIA"); + + b.Navigation("SCSI"); + + b.Navigation("SecureDigital"); + + b.Navigation("USB"); + }); + + modelBuilder.Entity("Aaru.Database.Models.UsbProduct", b => + { + b.HasOne("Aaru.Database.Models.UsbVendor", "Vendor") + .WithMany("Products") + .HasForeignKey("VendorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Vendor"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", b => + { + b.Navigation("RemovableMedias"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", b => + { + b.Navigation("TestedMedia"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Scsi", b => + { + b.Navigation("EVPDPages"); + + b.Navigation("RemovableMedias"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiMode", b => + { + b.Navigation("BlockDescriptors"); + + b.Navigation("ModePages"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ssc", b => + { + b.Navigation("SupportedDensities"); + + b.Navigation("SupportedMediaTypes"); + + b.Navigation("TestedMedia"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.SscSupportedMedia", b => + { + b.Navigation("DensityCodes"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", b => + { + b.Navigation("SupportedDensities"); + + b.Navigation("SupportedMediaTypes"); + }); + + modelBuilder.Entity("Aaru.Database.Models.UsbVendor", b => + { + b.Navigation("Products"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Aaru.Database/Migrations/20211208202937_AddNesHeaders.cs b/Aaru.Database/Migrations/20211208202937_AddNesHeaders.cs new file mode 100644 index 000000000..af0fa4157 --- /dev/null +++ b/Aaru.Database/Migrations/20211208202937_AddNesHeaders.cs @@ -0,0 +1,55 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace Aaru.Database.Migrations +{ + public partial class AddNesHeaders : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "NesHeaders", + columns: table => new + { + Id = table.Column(type: "INTEGER", nullable: false) + .Annotation("Sqlite:Autoincrement", true), + Sha256 = table.Column(type: "TEXT", maxLength: 32, nullable: true), + NametableMirroring = table.Column(type: "INTEGER", nullable: false), + BatteryPresent = table.Column(type: "INTEGER", nullable: false), + FourScreenMode = table.Column(type: "INTEGER", nullable: false), + Mapper = table.Column(type: "INTEGER", nullable: false), + ConsoleType = table.Column(type: "INTEGER", nullable: false), + Submapper = table.Column(type: "INTEGER", nullable: false), + TimingMode = table.Column(type: "INTEGER", nullable: false), + VsPpuType = table.Column(type: "INTEGER", nullable: false), + VsHardwareType = table.Column(type: "INTEGER", nullable: false), + ExtendedConsoleType = table.Column(type: "INTEGER", nullable: false), + DefaultExpansionDevice = table.Column(type: "INTEGER", nullable: false), + AddedWhen = table.Column(type: "TEXT", nullable: false), + ModifiedWhen = table.Column(type: "TEXT", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_NesHeaders", x => x.Id); + }); + + migrationBuilder.CreateIndex( + name: "IX_NesHeaders_ModifiedWhen", + table: "NesHeaders", + column: "ModifiedWhen"); + + migrationBuilder.CreateIndex( + name: "IX_NesHeaders_Sha256", + table: "NesHeaders", + column: "Sha256"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "NesHeaders"); + } + } +} diff --git a/Aaru.Database/Migrations/AaruContextModelSnapshot.cs b/Aaru.Database/Migrations/AaruContextModelSnapshot.cs index fda5e6401..6f07a1a9f 100644 --- a/Aaru.Database/Migrations/AaruContextModelSnapshot.cs +++ b/Aaru.Database/Migrations/AaruContextModelSnapshot.cs @@ -1,1910 +1,2903 @@ // - using System; +using Aaru.Database; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable namespace Aaru.Database.Migrations { [DbContext(typeof(AaruContext))] - internal class AaruContextModelSnapshot : ModelSnapshot + partial class AaruContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { - #pragma warning disable 612, 618 - modelBuilder.HasAnnotation("ProductVersion", "3.1.5"); +#pragma warning disable 612, 618 + modelBuilder.HasAnnotation("ProductVersion", "6.0.0"); modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Identify").HasColumnType("BLOB"); + b.Property("Identify") + .HasColumnType("BLOB"); - b.Property("ReadCapabilitiesId").HasColumnType("INTEGER"); + b.Property("ReadCapabilitiesId") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ReadCapabilitiesId"); + b.HasIndex("ReadCapabilitiesId"); - b.ToTable("Ata"); - }); + b.ToTable("Ata"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.BlockDescriptor", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("BlockLength").HasColumnType("INTEGER"); + b.Property("BlockLength") + .HasColumnType("INTEGER"); - b.Property("Blocks").HasColumnType("INTEGER"); + b.Property("Blocks") + .HasColumnType("INTEGER"); - b.Property("Density").HasColumnType("INTEGER"); + b.Property("Density") + .HasColumnType("INTEGER"); - b.Property("ScsiModeId").HasColumnType("INTEGER"); + b.Property("ScsiModeId") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ScsiModeId"); + b.HasIndex("ScsiModeId"); - b.ToTable("BlockDescriptor"); - }); + b.ToTable("BlockDescriptor"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.Chs", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Cylinders").HasColumnType("INTEGER"); + b.Property("Cylinders") + .HasColumnType("INTEGER"); - b.Property("Heads").HasColumnType("INTEGER"); + b.Property("Heads") + .HasColumnType("INTEGER"); - b.Property("Sectors").HasColumnType("INTEGER"); + b.Property("Sectors") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Chs"); - }); + b.ToTable("Chs"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.DensityCode", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Code").HasColumnType("INTEGER"); + b.Property("Code") + .HasColumnType("INTEGER"); - b.Property("SscSupportedMediaId").HasColumnType("INTEGER"); + b.Property("SscSupportedMediaId") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("SscSupportedMediaId"); + b.HasIndex("SscSupportedMediaId"); - b.ToTable("DensityCode"); - }); + b.ToTable("DensityCode"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.FireWire", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("Product").HasColumnType("TEXT"); + b.Property("Product") + .HasColumnType("TEXT"); - b.Property("ProductID").HasColumnType("INTEGER"); + b.Property("ProductID") + .HasColumnType("INTEGER"); - b.Property("RemovableMedia").HasColumnType("INTEGER"); + b.Property("RemovableMedia") + .HasColumnType("INTEGER"); - b.Property("VendorID").HasColumnType("INTEGER"); + b.Property("VendorID") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("FireWire"); - }); + b.ToTable("FireWire"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.GdRomSwapDiscCapabilities", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Lba0Data").HasColumnType("BLOB"); + b.Property("Lba0Data") + .HasColumnType("BLOB"); - b.Property("Lba0DecodedSense").HasColumnType("TEXT"); + b.Property("Lba0DecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba0Readable").HasColumnType("INTEGER"); + b.Property("Lba0Readable") + .HasColumnType("INTEGER"); - b.Property("Lba0ScrambledData").HasColumnType("BLOB"); + b.Property("Lba0ScrambledData") + .HasColumnType("BLOB"); - b.Property("Lba0ScrambledDecodedSense").HasColumnType("TEXT"); + b.Property("Lba0ScrambledDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba0ScrambledReadable").HasColumnType("INTEGER"); + b.Property("Lba0ScrambledReadable") + .HasColumnType("INTEGER"); - b.Property("Lba0ScrambledSense").HasColumnType("BLOB"); + b.Property("Lba0ScrambledSense") + .HasColumnType("BLOB"); - b.Property("Lba0Sense").HasColumnType("BLOB"); + b.Property("Lba0Sense") + .HasColumnType("BLOB"); - b.Property("Lba100000AudioData").HasColumnType("BLOB"); + b.Property("Lba100000AudioData") + .HasColumnType("BLOB"); - b.Property("Lba100000AudioDecodedSense").HasColumnType("TEXT"); + b.Property("Lba100000AudioDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba100000AudioPqData").HasColumnType("BLOB"); + b.Property("Lba100000AudioPqData") + .HasColumnType("BLOB"); - b.Property("Lba100000AudioPqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba100000AudioPqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba100000AudioPqReadable").HasColumnType("INTEGER"); + b.Property("Lba100000AudioPqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba100000AudioPqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba100000AudioPqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba100000AudioPqSense").HasColumnType("BLOB"); + b.Property("Lba100000AudioPqSense") + .HasColumnType("BLOB"); - b.Property("Lba100000AudioReadable").HasColumnType("INTEGER"); + b.Property("Lba100000AudioReadable") + .HasColumnType("INTEGER"); - b.Property("Lba100000AudioReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba100000AudioReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba100000AudioRwData").HasColumnType("BLOB"); + b.Property("Lba100000AudioRwData") + .HasColumnType("BLOB"); - b.Property("Lba100000AudioRwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba100000AudioRwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba100000AudioRwReadable").HasColumnType("INTEGER"); + b.Property("Lba100000AudioRwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba100000AudioRwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba100000AudioRwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba100000AudioRwSense").HasColumnType("BLOB"); + b.Property("Lba100000AudioRwSense") + .HasColumnType("BLOB"); - b.Property("Lba100000AudioSense").HasColumnType("BLOB"); + b.Property("Lba100000AudioSense") + .HasColumnType("BLOB"); - b.Property("Lba100000Data").HasColumnType("BLOB"); + b.Property("Lba100000Data") + .HasColumnType("BLOB"); - b.Property("Lba100000DecodedSense").HasColumnType("TEXT"); + b.Property("Lba100000DecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba100000PqData").HasColumnType("BLOB"); + b.Property("Lba100000PqData") + .HasColumnType("BLOB"); - b.Property("Lba100000PqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba100000PqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba100000PqReadable").HasColumnType("INTEGER"); + b.Property("Lba100000PqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba100000PqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba100000PqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba100000PqSense").HasColumnType("BLOB"); + b.Property("Lba100000PqSense") + .HasColumnType("BLOB"); - b.Property("Lba100000Readable").HasColumnType("INTEGER"); + b.Property("Lba100000Readable") + .HasColumnType("INTEGER"); - b.Property("Lba100000ReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba100000ReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba100000RwData").HasColumnType("BLOB"); + b.Property("Lba100000RwData") + .HasColumnType("BLOB"); - b.Property("Lba100000RwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba100000RwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba100000RwReadable").HasColumnType("INTEGER"); + b.Property("Lba100000RwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba100000RwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba100000RwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba100000RwSense").HasColumnType("BLOB"); + b.Property("Lba100000RwSense") + .HasColumnType("BLOB"); - b.Property("Lba100000Sense").HasColumnType("BLOB"); + b.Property("Lba100000Sense") + .HasColumnType("BLOB"); - b.Property("Lba400000AudioData").HasColumnType("BLOB"); + b.Property("Lba400000AudioData") + .HasColumnType("BLOB"); - b.Property("Lba400000AudioDecodedSense").HasColumnType("TEXT"); + b.Property("Lba400000AudioDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba400000AudioPqData").HasColumnType("BLOB"); + b.Property("Lba400000AudioPqData") + .HasColumnType("BLOB"); - b.Property("Lba400000AudioPqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba400000AudioPqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba400000AudioPqReadable").HasColumnType("INTEGER"); + b.Property("Lba400000AudioPqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba400000AudioPqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba400000AudioPqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba400000AudioPqSense").HasColumnType("BLOB"); + b.Property("Lba400000AudioPqSense") + .HasColumnType("BLOB"); - b.Property("Lba400000AudioReadable").HasColumnType("INTEGER"); + b.Property("Lba400000AudioReadable") + .HasColumnType("INTEGER"); - b.Property("Lba400000AudioReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba400000AudioReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba400000AudioRwData").HasColumnType("BLOB"); + b.Property("Lba400000AudioRwData") + .HasColumnType("BLOB"); - b.Property("Lba400000AudioRwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba400000AudioRwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba400000AudioRwReadable").HasColumnType("INTEGER"); + b.Property("Lba400000AudioRwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba400000AudioRwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba400000AudioRwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba400000AudioRwSense").HasColumnType("BLOB"); + b.Property("Lba400000AudioRwSense") + .HasColumnType("BLOB"); - b.Property("Lba400000AudioSense").HasColumnType("BLOB"); + b.Property("Lba400000AudioSense") + .HasColumnType("BLOB"); - b.Property("Lba400000Data").HasColumnType("BLOB"); + b.Property("Lba400000Data") + .HasColumnType("BLOB"); - b.Property("Lba400000DecodedSense").HasColumnType("TEXT"); + b.Property("Lba400000DecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba400000PqData").HasColumnType("BLOB"); + b.Property("Lba400000PqData") + .HasColumnType("BLOB"); - b.Property("Lba400000PqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba400000PqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba400000PqReadable").HasColumnType("INTEGER"); + b.Property("Lba400000PqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba400000PqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba400000PqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba400000PqSense").HasColumnType("BLOB"); + b.Property("Lba400000PqSense") + .HasColumnType("BLOB"); - b.Property("Lba400000Readable").HasColumnType("INTEGER"); + b.Property("Lba400000Readable") + .HasColumnType("INTEGER"); - b.Property("Lba400000ReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba400000ReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba400000RwData").HasColumnType("BLOB"); + b.Property("Lba400000RwData") + .HasColumnType("BLOB"); - b.Property("Lba400000RwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba400000RwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba400000RwReadable").HasColumnType("INTEGER"); + b.Property("Lba400000RwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba400000RwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba400000RwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba400000RwSense").HasColumnType("BLOB"); + b.Property("Lba400000RwSense") + .HasColumnType("BLOB"); - b.Property("Lba400000Sense").HasColumnType("BLOB"); + b.Property("Lba400000Sense") + .HasColumnType("BLOB"); - b.Property("Lba44990AudioData").HasColumnType("BLOB"); + b.Property("Lba44990AudioData") + .HasColumnType("BLOB"); - b.Property("Lba44990AudioDecodedSense").HasColumnType("TEXT"); + b.Property("Lba44990AudioDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba44990AudioPqData").HasColumnType("BLOB"); + b.Property("Lba44990AudioPqData") + .HasColumnType("BLOB"); - b.Property("Lba44990AudioPqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba44990AudioPqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba44990AudioPqReadable").HasColumnType("INTEGER"); + b.Property("Lba44990AudioPqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba44990AudioPqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba44990AudioPqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba44990AudioPqSense").HasColumnType("BLOB"); + b.Property("Lba44990AudioPqSense") + .HasColumnType("BLOB"); - b.Property("Lba44990AudioReadable").HasColumnType("INTEGER"); + b.Property("Lba44990AudioReadable") + .HasColumnType("INTEGER"); - b.Property("Lba44990AudioReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba44990AudioReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba44990AudioRwData").HasColumnType("BLOB"); + b.Property("Lba44990AudioRwData") + .HasColumnType("BLOB"); - b.Property("Lba44990AudioRwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba44990AudioRwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba44990AudioRwReadable").HasColumnType("INTEGER"); + b.Property("Lba44990AudioRwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba44990AudioRwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba44990AudioRwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba44990AudioRwSense").HasColumnType("BLOB"); + b.Property("Lba44990AudioRwSense") + .HasColumnType("BLOB"); - b.Property("Lba44990AudioSense").HasColumnType("BLOB"); + b.Property("Lba44990AudioSense") + .HasColumnType("BLOB"); - b.Property("Lba44990Data").HasColumnType("BLOB"); + b.Property("Lba44990Data") + .HasColumnType("BLOB"); - b.Property("Lba44990DecodedSense").HasColumnType("TEXT"); + b.Property("Lba44990DecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba44990PqData").HasColumnType("BLOB"); + b.Property("Lba44990PqData") + .HasColumnType("BLOB"); - b.Property("Lba44990PqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba44990PqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba44990PqReadable").HasColumnType("INTEGER"); + b.Property("Lba44990PqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba44990PqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba44990PqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba44990PqSense").HasColumnType("BLOB"); + b.Property("Lba44990PqSense") + .HasColumnType("BLOB"); - b.Property("Lba44990Readable").HasColumnType("INTEGER"); + b.Property("Lba44990Readable") + .HasColumnType("INTEGER"); - b.Property("Lba44990ReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba44990ReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba44990RwData").HasColumnType("BLOB"); + b.Property("Lba44990RwData") + .HasColumnType("BLOB"); - b.Property("Lba44990RwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba44990RwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba44990RwReadable").HasColumnType("INTEGER"); + b.Property("Lba44990RwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba44990RwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba44990RwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba44990RwSense").HasColumnType("BLOB"); + b.Property("Lba44990RwSense") + .HasColumnType("BLOB"); - b.Property("Lba44990Sense").HasColumnType("BLOB"); + b.Property("Lba44990Sense") + .HasColumnType("BLOB"); - b.Property("Lba450000AudioData").HasColumnType("BLOB"); + b.Property("Lba450000AudioData") + .HasColumnType("BLOB"); - b.Property("Lba450000AudioDecodedSense").HasColumnType("TEXT"); + b.Property("Lba450000AudioDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba450000AudioPqData").HasColumnType("BLOB"); + b.Property("Lba450000AudioPqData") + .HasColumnType("BLOB"); - b.Property("Lba450000AudioPqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba450000AudioPqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba450000AudioPqReadable").HasColumnType("INTEGER"); + b.Property("Lba450000AudioPqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba450000AudioPqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba450000AudioPqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba450000AudioPqSense").HasColumnType("BLOB"); + b.Property("Lba450000AudioPqSense") + .HasColumnType("BLOB"); - b.Property("Lba450000AudioReadable").HasColumnType("INTEGER"); + b.Property("Lba450000AudioReadable") + .HasColumnType("INTEGER"); - b.Property("Lba450000AudioReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba450000AudioReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba450000AudioRwData").HasColumnType("BLOB"); + b.Property("Lba450000AudioRwData") + .HasColumnType("BLOB"); - b.Property("Lba450000AudioRwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba450000AudioRwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba450000AudioRwReadable").HasColumnType("INTEGER"); + b.Property("Lba450000AudioRwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba450000AudioRwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba450000AudioRwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba450000AudioRwSense").HasColumnType("BLOB"); + b.Property("Lba450000AudioRwSense") + .HasColumnType("BLOB"); - b.Property("Lba450000AudioSense").HasColumnType("BLOB"); + b.Property("Lba450000AudioSense") + .HasColumnType("BLOB"); - b.Property("Lba450000Data").HasColumnType("BLOB"); + b.Property("Lba450000Data") + .HasColumnType("BLOB"); - b.Property("Lba450000DecodedSense").HasColumnType("TEXT"); + b.Property("Lba450000DecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba450000PqData").HasColumnType("BLOB"); + b.Property("Lba450000PqData") + .HasColumnType("BLOB"); - b.Property("Lba450000PqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba450000PqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba450000PqReadable").HasColumnType("INTEGER"); + b.Property("Lba450000PqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba450000PqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba450000PqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba450000PqSense").HasColumnType("BLOB"); + b.Property("Lba450000PqSense") + .HasColumnType("BLOB"); - b.Property("Lba450000Readable").HasColumnType("INTEGER"); + b.Property("Lba450000Readable") + .HasColumnType("INTEGER"); - b.Property("Lba450000ReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba450000ReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba450000RwData").HasColumnType("BLOB"); + b.Property("Lba450000RwData") + .HasColumnType("BLOB"); - b.Property("Lba450000RwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba450000RwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba450000RwReadable").HasColumnType("INTEGER"); + b.Property("Lba450000RwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba450000RwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba450000RwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba450000RwSense").HasColumnType("BLOB"); + b.Property("Lba450000RwSense") + .HasColumnType("BLOB"); - b.Property("Lba450000Sense").HasColumnType("BLOB"); + b.Property("Lba450000Sense") + .HasColumnType("BLOB"); - b.Property("Lba45000AudioData").HasColumnType("BLOB"); + b.Property("Lba45000AudioData") + .HasColumnType("BLOB"); - b.Property("Lba45000AudioDecodedSense").HasColumnType("TEXT"); + b.Property("Lba45000AudioDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba45000AudioPqData").HasColumnType("BLOB"); + b.Property("Lba45000AudioPqData") + .HasColumnType("BLOB"); - b.Property("Lba45000AudioPqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba45000AudioPqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba45000AudioPqReadable").HasColumnType("INTEGER"); + b.Property("Lba45000AudioPqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba45000AudioPqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba45000AudioPqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba45000AudioPqSense").HasColumnType("BLOB"); + b.Property("Lba45000AudioPqSense") + .HasColumnType("BLOB"); - b.Property("Lba45000AudioReadable").HasColumnType("INTEGER"); + b.Property("Lba45000AudioReadable") + .HasColumnType("INTEGER"); - b.Property("Lba45000AudioReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba45000AudioReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba45000AudioRwData").HasColumnType("BLOB"); + b.Property("Lba45000AudioRwData") + .HasColumnType("BLOB"); - b.Property("Lba45000AudioRwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba45000AudioRwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba45000AudioRwReadable").HasColumnType("INTEGER"); + b.Property("Lba45000AudioRwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba45000AudioRwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba45000AudioRwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba45000AudioRwSense").HasColumnType("BLOB"); + b.Property("Lba45000AudioRwSense") + .HasColumnType("BLOB"); - b.Property("Lba45000AudioSense").HasColumnType("BLOB"); + b.Property("Lba45000AudioSense") + .HasColumnType("BLOB"); - b.Property("Lba45000Data").HasColumnType("BLOB"); + b.Property("Lba45000Data") + .HasColumnType("BLOB"); - b.Property("Lba45000DecodedSense").HasColumnType("TEXT"); + b.Property("Lba45000DecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba45000PqData").HasColumnType("BLOB"); + b.Property("Lba45000PqData") + .HasColumnType("BLOB"); - b.Property("Lba45000PqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba45000PqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba45000PqReadable").HasColumnType("INTEGER"); + b.Property("Lba45000PqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba45000PqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba45000PqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba45000PqSense").HasColumnType("BLOB"); + b.Property("Lba45000PqSense") + .HasColumnType("BLOB"); - b.Property("Lba45000Readable").HasColumnType("INTEGER"); + b.Property("Lba45000Readable") + .HasColumnType("INTEGER"); - b.Property("Lba45000ReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba45000ReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba45000RwData").HasColumnType("BLOB"); + b.Property("Lba45000RwData") + .HasColumnType("BLOB"); - b.Property("Lba45000RwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba45000RwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba45000RwReadable").HasColumnType("INTEGER"); + b.Property("Lba45000RwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba45000RwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba45000RwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba45000RwSense").HasColumnType("BLOB"); + b.Property("Lba45000RwSense") + .HasColumnType("BLOB"); - b.Property("Lba45000Sense").HasColumnType("BLOB"); + b.Property("Lba45000Sense") + .HasColumnType("BLOB"); - b.Property("Lba50000AudioData").HasColumnType("BLOB"); + b.Property("Lba50000AudioData") + .HasColumnType("BLOB"); - b.Property("Lba50000AudioDecodedSense").HasColumnType("TEXT"); + b.Property("Lba50000AudioDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba50000AudioPqData").HasColumnType("BLOB"); + b.Property("Lba50000AudioPqData") + .HasColumnType("BLOB"); - b.Property("Lba50000AudioPqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba50000AudioPqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba50000AudioPqReadable").HasColumnType("INTEGER"); + b.Property("Lba50000AudioPqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba50000AudioPqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba50000AudioPqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba50000AudioPqSense").HasColumnType("BLOB"); + b.Property("Lba50000AudioPqSense") + .HasColumnType("BLOB"); - b.Property("Lba50000AudioReadable").HasColumnType("INTEGER"); + b.Property("Lba50000AudioReadable") + .HasColumnType("INTEGER"); - b.Property("Lba50000AudioReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba50000AudioReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba50000AudioRwData").HasColumnType("BLOB"); + b.Property("Lba50000AudioRwData") + .HasColumnType("BLOB"); - b.Property("Lba50000AudioRwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba50000AudioRwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba50000AudioRwReadable").HasColumnType("INTEGER"); + b.Property("Lba50000AudioRwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba50000AudioRwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba50000AudioRwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba50000AudioRwSense").HasColumnType("BLOB"); + b.Property("Lba50000AudioRwSense") + .HasColumnType("BLOB"); - b.Property("Lba50000AudioSense").HasColumnType("BLOB"); + b.Property("Lba50000AudioSense") + .HasColumnType("BLOB"); - b.Property("Lba50000Data").HasColumnType("BLOB"); + b.Property("Lba50000Data") + .HasColumnType("BLOB"); - b.Property("Lba50000DecodedSense").HasColumnType("TEXT"); + b.Property("Lba50000DecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba50000PqData").HasColumnType("BLOB"); + b.Property("Lba50000PqData") + .HasColumnType("BLOB"); - b.Property("Lba50000PqDecodedSense").HasColumnType("TEXT"); + b.Property("Lba50000PqDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba50000PqReadable").HasColumnType("INTEGER"); + b.Property("Lba50000PqReadable") + .HasColumnType("INTEGER"); - b.Property("Lba50000PqReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba50000PqReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba50000PqSense").HasColumnType("BLOB"); + b.Property("Lba50000PqSense") + .HasColumnType("BLOB"); - b.Property("Lba50000Readable").HasColumnType("INTEGER"); + b.Property("Lba50000Readable") + .HasColumnType("INTEGER"); - b.Property("Lba50000ReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba50000ReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba50000RwData").HasColumnType("BLOB"); + b.Property("Lba50000RwData") + .HasColumnType("BLOB"); - b.Property("Lba50000RwDecodedSense").HasColumnType("TEXT"); + b.Property("Lba50000RwDecodedSense") + .HasColumnType("TEXT"); - b.Property("Lba50000RwReadable").HasColumnType("INTEGER"); + b.Property("Lba50000RwReadable") + .HasColumnType("INTEGER"); - b.Property("Lba50000RwReadableCluster").HasColumnType("INTEGER"); + b.Property("Lba50000RwReadableCluster") + .HasColumnType("INTEGER"); - b.Property("Lba50000RwSense").HasColumnType("BLOB"); + b.Property("Lba50000RwSense") + .HasColumnType("BLOB"); - b.Property("Lba50000Sense").HasColumnType("BLOB"); + b.Property("Lba50000Sense") + .HasColumnType("BLOB"); - b.Property("MaximumReadablePqInHdArea").HasColumnType("BLOB"); + b.Property("MaximumReadablePqInHdArea") + .HasColumnType("BLOB"); - b.Property("MaximumReadableRwInHdArea").HasColumnType("BLOB"); + b.Property("MaximumReadableRwInHdArea") + .HasColumnType("BLOB"); - b.Property("MaximumReadableSectorInHdArea").HasColumnType("INTEGER"); + b.Property("MaximumReadableSectorInHdArea") + .HasColumnType("INTEGER"); - b.Property("MinimumReadableSectorInHdArea").HasColumnType("INTEGER"); + b.Property("MinimumReadableSectorInHdArea") + .HasColumnType("INTEGER"); - b.Property("RecognizedSwapDisc").HasColumnType("INTEGER"); + b.Property("RecognizedSwapDisc") + .HasColumnType("INTEGER"); - b.Property("SwapDiscLeadOutPFRAM").HasColumnType("INTEGER"); + b.Property("SwapDiscLeadOutPFRAM") + .HasColumnType("INTEGER"); - b.Property("SwapDiscLeadOutPMIN").HasColumnType("INTEGER"); + b.Property("SwapDiscLeadOutPMIN") + .HasColumnType("INTEGER"); - b.Property("SwapDiscLeadOutPSEC").HasColumnType("INTEGER"); + b.Property("SwapDiscLeadOutPSEC") + .HasColumnType("INTEGER"); - b.Property("SwapDiscLeadOutStart").HasColumnType("INTEGER"); + b.Property("SwapDiscLeadOutStart") + .HasColumnType("INTEGER"); - b.Property("TestCrashed").HasColumnType("INTEGER"); + b.Property("TestCrashed") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GdRomSwapDiscCapabilities"); - }); + b.ToTable("GdRomSwapDiscCapabilities"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("FeaturesId").HasColumnType("INTEGER"); + b.Property("FeaturesId") + .HasColumnType("INTEGER"); - b.Property("ModeSense2AData").HasColumnType("BLOB"); + b.Property("ModeSense2AData") + .HasColumnType("BLOB"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("FeaturesId"); + b.HasIndex("FeaturesId"); - b.ToTable("Mmc"); - }); + b.ToTable("Mmc"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.MmcFeatures", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("AACSVersion").HasColumnType("INTEGER"); + b.Property("AACSVersion") + .HasColumnType("INTEGER"); - b.Property("AGIDs").HasColumnType("INTEGER"); + b.Property("AGIDs") + .HasColumnType("INTEGER"); - b.Property("BinaryData").HasColumnType("BLOB"); + b.Property("BinaryData") + .HasColumnType("BLOB"); - b.Property("BindingNonceBlocks").HasColumnType("INTEGER"); + b.Property("BindingNonceBlocks") + .HasColumnType("INTEGER"); - b.Property("BlocksPerReadableUnit").HasColumnType("INTEGER"); + b.Property("BlocksPerReadableUnit") + .HasColumnType("INTEGER"); - b.Property("BufferUnderrunFreeInDVD").HasColumnType("INTEGER"); + b.Property("BufferUnderrunFreeInDVD") + .HasColumnType("INTEGER"); - b.Property("BufferUnderrunFreeInSAO").HasColumnType("INTEGER"); + b.Property("BufferUnderrunFreeInSAO") + .HasColumnType("INTEGER"); - b.Property("BufferUnderrunFreeInTAO").HasColumnType("INTEGER"); + b.Property("BufferUnderrunFreeInTAO") + .HasColumnType("INTEGER"); - b.Property("CPRMVersion").HasColumnType("INTEGER"); + b.Property("CPRMVersion") + .HasColumnType("INTEGER"); - b.Property("CSSVersion").HasColumnType("INTEGER"); + b.Property("CSSVersion") + .HasColumnType("INTEGER"); - b.Property("CanAudioScan").HasColumnType("INTEGER"); + b.Property("CanAudioScan") + .HasColumnType("INTEGER"); - b.Property("CanEject").HasColumnType("INTEGER"); + b.Property("CanEject") + .HasColumnType("INTEGER"); - b.Property("CanEraseSector").HasColumnType("INTEGER"); + b.Property("CanEraseSector") + .HasColumnType("INTEGER"); - b.Property("CanExpandBDRESpareArea").HasColumnType("INTEGER"); + b.Property("CanExpandBDRESpareArea") + .HasColumnType("INTEGER"); - b.Property("CanFormat").HasColumnType("INTEGER"); + b.Property("CanFormat") + .HasColumnType("INTEGER"); - b.Property("CanFormatBDREWithoutSpare").HasColumnType("INTEGER"); + b.Property("CanFormatBDREWithoutSpare") + .HasColumnType("INTEGER"); - b.Property("CanFormatCert").HasColumnType("INTEGER"); + b.Property("CanFormatCert") + .HasColumnType("INTEGER"); - b.Property("CanFormatFRF").HasColumnType("INTEGER"); + b.Property("CanFormatFRF") + .HasColumnType("INTEGER"); - b.Property("CanFormatQCert").HasColumnType("INTEGER"); + b.Property("CanFormatQCert") + .HasColumnType("INTEGER"); - b.Property("CanFormatRRM").HasColumnType("INTEGER"); + b.Property("CanFormatRRM") + .HasColumnType("INTEGER"); - b.Property("CanGenerateBindingNonce").HasColumnType("INTEGER"); + b.Property("CanGenerateBindingNonce") + .HasColumnType("INTEGER"); - b.Property("CanLoad").HasColumnType("INTEGER"); + b.Property("CanLoad") + .HasColumnType("INTEGER"); - b.Property("CanMuteSeparateChannels").HasColumnType("INTEGER"); + b.Property("CanMuteSeparateChannels") + .HasColumnType("INTEGER"); - b.Property("CanOverwriteSAOTrack").HasColumnType("INTEGER"); + b.Property("CanOverwriteSAOTrack") + .HasColumnType("INTEGER"); - b.Property("CanOverwriteTAOTrack").HasColumnType("INTEGER"); + b.Property("CanOverwriteTAOTrack") + .HasColumnType("INTEGER"); - b.Property("CanPlayCDAudio").HasColumnType("INTEGER"); + b.Property("CanPlayCDAudio") + .HasColumnType("INTEGER"); - b.Property("CanPseudoOverwriteBDR").HasColumnType("INTEGER"); + b.Property("CanPseudoOverwriteBDR") + .HasColumnType("INTEGER"); - b.Property("CanReadAllDualR").HasColumnType("INTEGER"); + b.Property("CanReadAllDualR") + .HasColumnType("INTEGER"); - b.Property("CanReadAllDualRW").HasColumnType("INTEGER"); + b.Property("CanReadAllDualRW") + .HasColumnType("INTEGER"); - b.Property("CanReadBD").HasColumnType("INTEGER"); + b.Property("CanReadBD") + .HasColumnType("INTEGER"); - b.Property("CanReadBDR").HasColumnType("INTEGER"); + b.Property("CanReadBDR") + .HasColumnType("INTEGER"); - b.Property("CanReadBDRE1").HasColumnType("INTEGER"); + b.Property("CanReadBDRE1") + .HasColumnType("INTEGER"); - b.Property("CanReadBDRE2").HasColumnType("INTEGER"); + b.Property("CanReadBDRE2") + .HasColumnType("INTEGER"); - b.Property("CanReadBDROM").HasColumnType("INTEGER"); + b.Property("CanReadBDROM") + .HasColumnType("INTEGER"); - b.Property("CanReadBluBCA").HasColumnType("INTEGER"); + b.Property("CanReadBluBCA") + .HasColumnType("INTEGER"); - b.Property("CanReadCD").HasColumnType("INTEGER"); + b.Property("CanReadCD") + .HasColumnType("INTEGER"); - b.Property("CanReadCDMRW").HasColumnType("INTEGER"); + b.Property("CanReadCDMRW") + .HasColumnType("INTEGER"); - b.Property("CanReadCPRM_MKB").HasColumnType("INTEGER"); + b.Property("CanReadCPRM_MKB") + .HasColumnType("INTEGER"); - b.Property("CanReadDDCD").HasColumnType("INTEGER"); + b.Property("CanReadDDCD") + .HasColumnType("INTEGER"); - b.Property("CanReadDVD").HasColumnType("INTEGER"); + b.Property("CanReadDVD") + .HasColumnType("INTEGER"); - b.Property("CanReadDVDPlusMRW").HasColumnType("INTEGER"); + b.Property("CanReadDVDPlusMRW") + .HasColumnType("INTEGER"); - b.Property("CanReadDVDPlusR").HasColumnType("INTEGER"); + b.Property("CanReadDVDPlusR") + .HasColumnType("INTEGER"); - b.Property("CanReadDVDPlusRDL").HasColumnType("INTEGER"); + b.Property("CanReadDVDPlusRDL") + .HasColumnType("INTEGER"); - b.Property("CanReadDVDPlusRW").HasColumnType("INTEGER"); + b.Property("CanReadDVDPlusRW") + .HasColumnType("INTEGER"); - b.Property("CanReadDVDPlusRWDL").HasColumnType("INTEGER"); + b.Property("CanReadDVDPlusRWDL") + .HasColumnType("INTEGER"); - b.Property("CanReadDriveAACSCertificate").HasColumnType("INTEGER"); + b.Property("CanReadDriveAACSCertificate") + .HasColumnType("INTEGER"); - b.Property("CanReadHDDVD").HasColumnType("INTEGER"); + b.Property("CanReadHDDVD") + .HasColumnType("INTEGER"); - b.Property("CanReadHDDVDR").HasColumnType("INTEGER"); + b.Property("CanReadHDDVDR") + .HasColumnType("INTEGER"); - b.Property("CanReadHDDVDRAM").HasColumnType("INTEGER"); + b.Property("CanReadHDDVDRAM") + .HasColumnType("INTEGER"); - b.Property("CanReadLeadInCDText").HasColumnType("INTEGER"); + b.Property("CanReadLeadInCDText") + .HasColumnType("INTEGER"); - b.Property("CanReadOldBDR").HasColumnType("INTEGER"); + b.Property("CanReadOldBDR") + .HasColumnType("INTEGER"); - b.Property("CanReadOldBDRE").HasColumnType("INTEGER"); + b.Property("CanReadOldBDRE") + .HasColumnType("INTEGER"); - b.Property("CanReadOldBDROM").HasColumnType("INTEGER"); + b.Property("CanReadOldBDROM") + .HasColumnType("INTEGER"); - b.Property("CanReadSpareAreaInformation").HasColumnType("INTEGER"); + b.Property("CanReadSpareAreaInformation") + .HasColumnType("INTEGER"); - b.Property("CanReportDriveSerial").HasColumnType("INTEGER"); + b.Property("CanReportDriveSerial") + .HasColumnType("INTEGER"); - b.Property("CanReportMediaSerial").HasColumnType("INTEGER"); + b.Property("CanReportMediaSerial") + .HasColumnType("INTEGER"); - b.Property("CanTestWriteDDCDR").HasColumnType("INTEGER"); + b.Property("CanTestWriteDDCDR") + .HasColumnType("INTEGER"); - b.Property("CanTestWriteDVD").HasColumnType("INTEGER"); + b.Property("CanTestWriteDVD") + .HasColumnType("INTEGER"); - b.Property("CanTestWriteInSAO").HasColumnType("INTEGER"); + b.Property("CanTestWriteInSAO") + .HasColumnType("INTEGER"); - b.Property("CanTestWriteInTAO").HasColumnType("INTEGER"); + b.Property("CanTestWriteInTAO") + .HasColumnType("INTEGER"); - b.Property("CanUpgradeFirmware").HasColumnType("INTEGER"); + b.Property("CanUpgradeFirmware") + .HasColumnType("INTEGER"); - b.Property("CanWriteBD").HasColumnType("INTEGER"); + b.Property("CanWriteBD") + .HasColumnType("INTEGER"); - b.Property("CanWriteBDR").HasColumnType("INTEGER"); + b.Property("CanWriteBDR") + .HasColumnType("INTEGER"); - b.Property("CanWriteBDRE1").HasColumnType("INTEGER"); + b.Property("CanWriteBDRE1") + .HasColumnType("INTEGER"); - b.Property("CanWriteBDRE2").HasColumnType("INTEGER"); + b.Property("CanWriteBDRE2") + .HasColumnType("INTEGER"); - b.Property("CanWriteBusEncryptedBlocks").HasColumnType("INTEGER"); + b.Property("CanWriteBusEncryptedBlocks") + .HasColumnType("INTEGER"); - b.Property("CanWriteCDMRW").HasColumnType("INTEGER"); + b.Property("CanWriteCDMRW") + .HasColumnType("INTEGER"); - b.Property("CanWriteCDRW").HasColumnType("INTEGER"); + b.Property("CanWriteCDRW") + .HasColumnType("INTEGER"); - b.Property("CanWriteCDRWCAV").HasColumnType("INTEGER"); + b.Property("CanWriteCDRWCAV") + .HasColumnType("INTEGER"); - b.Property("CanWriteCDSAO").HasColumnType("INTEGER"); + b.Property("CanWriteCDSAO") + .HasColumnType("INTEGER"); - b.Property("CanWriteCDTAO").HasColumnType("INTEGER"); + b.Property("CanWriteCDTAO") + .HasColumnType("INTEGER"); - b.Property("CanWriteCSSManagedDVD").HasColumnType("INTEGER"); + b.Property("CanWriteCSSManagedDVD") + .HasColumnType("INTEGER"); - b.Property("CanWriteDDCDR").HasColumnType("INTEGER"); + b.Property("CanWriteDDCDR") + .HasColumnType("INTEGER"); - b.Property("CanWriteDDCDRW").HasColumnType("INTEGER"); + b.Property("CanWriteDDCDRW") + .HasColumnType("INTEGER"); - b.Property("CanWriteDVDPlusMRW").HasColumnType("INTEGER"); + b.Property("CanWriteDVDPlusMRW") + .HasColumnType("INTEGER"); - b.Property("CanWriteDVDPlusR").HasColumnType("INTEGER"); + b.Property("CanWriteDVDPlusR") + .HasColumnType("INTEGER"); - b.Property("CanWriteDVDPlusRDL").HasColumnType("INTEGER"); + b.Property("CanWriteDVDPlusRDL") + .HasColumnType("INTEGER"); - b.Property("CanWriteDVDPlusRW").HasColumnType("INTEGER"); + b.Property("CanWriteDVDPlusRW") + .HasColumnType("INTEGER"); - b.Property("CanWriteDVDPlusRWDL").HasColumnType("INTEGER"); + b.Property("CanWriteDVDPlusRWDL") + .HasColumnType("INTEGER"); - b.Property("CanWriteDVDR").HasColumnType("INTEGER"); + b.Property("CanWriteDVDR") + .HasColumnType("INTEGER"); - b.Property("CanWriteDVDRDL").HasColumnType("INTEGER"); + b.Property("CanWriteDVDRDL") + .HasColumnType("INTEGER"); - b.Property("CanWriteDVDRW").HasColumnType("INTEGER"); + b.Property("CanWriteDVDRW") + .HasColumnType("INTEGER"); - b.Property("CanWriteHDDVDR").HasColumnType("INTEGER"); + b.Property("CanWriteHDDVDR") + .HasColumnType("INTEGER"); - b.Property("CanWriteHDDVDRAM").HasColumnType("INTEGER"); + b.Property("CanWriteHDDVDRAM") + .HasColumnType("INTEGER"); - b.Property("CanWriteOldBDR").HasColumnType("INTEGER"); + b.Property("CanWriteOldBDR") + .HasColumnType("INTEGER"); - b.Property("CanWriteOldBDRE").HasColumnType("INTEGER"); + b.Property("CanWriteOldBDRE") + .HasColumnType("INTEGER"); - b.Property("CanWritePackedSubchannelInTAO").HasColumnType("INTEGER"); + b.Property("CanWritePackedSubchannelInTAO") + .HasColumnType("INTEGER"); - b.Property("CanWriteRWSubchannelInSAO").HasColumnType("INTEGER"); + b.Property("CanWriteRWSubchannelInSAO") + .HasColumnType("INTEGER"); - b.Property("CanWriteRWSubchannelInTAO").HasColumnType("INTEGER"); + b.Property("CanWriteRWSubchannelInTAO") + .HasColumnType("INTEGER"); - b.Property("CanWriteRaw").HasColumnType("INTEGER"); + b.Property("CanWriteRaw") + .HasColumnType("INTEGER"); - b.Property("CanWriteRawMultiSession").HasColumnType("INTEGER"); + b.Property("CanWriteRawMultiSession") + .HasColumnType("INTEGER"); - b.Property("CanWriteRawSubchannelInTAO").HasColumnType("INTEGER"); + b.Property("CanWriteRawSubchannelInTAO") + .HasColumnType("INTEGER"); - b.Property("ChangerIsSideChangeCapable").HasColumnType("INTEGER"); + b.Property("ChangerIsSideChangeCapable") + .HasColumnType("INTEGER"); - b.Property("ChangerSlots").HasColumnType("INTEGER"); + b.Property("ChangerSlots") + .HasColumnType("INTEGER"); - b.Property("ChangerSupportsDiscPresent").HasColumnType("INTEGER"); + b.Property("ChangerSupportsDiscPresent") + .HasColumnType("INTEGER"); - b.Property("DBML").HasColumnType("INTEGER"); + b.Property("DBML") + .HasColumnType("INTEGER"); - b.Property("DVDMultiRead").HasColumnType("INTEGER"); + b.Property("DVDMultiRead") + .HasColumnType("INTEGER"); - b.Property("EmbeddedChanger").HasColumnType("INTEGER"); + b.Property("EmbeddedChanger") + .HasColumnType("INTEGER"); - b.Property("ErrorRecoveryPage").HasColumnType("INTEGER"); + b.Property("ErrorRecoveryPage") + .HasColumnType("INTEGER"); - b.Property("FirmwareDate").HasColumnType("TEXT"); + b.Property("FirmwareDate") + .HasColumnType("TEXT"); - b.Property("LoadingMechanismType").HasColumnType("INTEGER"); + b.Property("LoadingMechanismType") + .HasColumnType("INTEGER"); - b.Property("Locked").HasColumnType("INTEGER"); + b.Property("Locked") + .HasColumnType("INTEGER"); - b.Property("LogicalBlockSize").HasColumnType("INTEGER"); + b.Property("LogicalBlockSize") + .HasColumnType("INTEGER"); - b.Property("MultiRead").HasColumnType("INTEGER"); + b.Property("MultiRead") + .HasColumnType("INTEGER"); - b.Property("PhysicalInterfaceStandardNumber").HasColumnType("INTEGER"); + b.Property("PhysicalInterfaceStandardNumber") + .HasColumnType("INTEGER"); - b.Property("PreventJumper").HasColumnType("INTEGER"); + b.Property("PreventJumper") + .HasColumnType("INTEGER"); - b.Property("SupportsAACS").HasColumnType("INTEGER"); + b.Property("SupportsAACS") + .HasColumnType("INTEGER"); - b.Property("SupportsBusEncryption").HasColumnType("INTEGER"); + b.Property("SupportsBusEncryption") + .HasColumnType("INTEGER"); - b.Property("SupportsC2").HasColumnType("INTEGER"); + b.Property("SupportsC2") + .HasColumnType("INTEGER"); - b.Property("SupportsCPRM").HasColumnType("INTEGER"); + b.Property("SupportsCPRM") + .HasColumnType("INTEGER"); - b.Property("SupportsCSS").HasColumnType("INTEGER"); + b.Property("SupportsCSS") + .HasColumnType("INTEGER"); - b.Property("SupportsDAP").HasColumnType("INTEGER"); + b.Property("SupportsDAP") + .HasColumnType("INTEGER"); - b.Property("SupportsDeviceBusyEvent").HasColumnType("INTEGER"); + b.Property("SupportsDeviceBusyEvent") + .HasColumnType("INTEGER"); - b.Property("SupportsHybridDiscs").HasColumnType("INTEGER"); + b.Property("SupportsHybridDiscs") + .HasColumnType("INTEGER"); - b.Property("SupportsModePage1Ch").HasColumnType("INTEGER"); + b.Property("SupportsModePage1Ch") + .HasColumnType("INTEGER"); - b.Property("SupportsOSSC").HasColumnType("INTEGER"); + b.Property("SupportsOSSC") + .HasColumnType("INTEGER"); - b.Property("SupportsPWP").HasColumnType("INTEGER"); + b.Property("SupportsPWP") + .HasColumnType("INTEGER"); - b.Property("SupportsSWPP").HasColumnType("INTEGER"); + b.Property("SupportsSWPP") + .HasColumnType("INTEGER"); - b.Property("SupportsSecurDisc").HasColumnType("INTEGER"); + b.Property("SupportsSecurDisc") + .HasColumnType("INTEGER"); - b.Property("SupportsSeparateVolume").HasColumnType("INTEGER"); + b.Property("SupportsSeparateVolume") + .HasColumnType("INTEGER"); - b.Property("SupportsVCPS").HasColumnType("INTEGER"); + b.Property("SupportsVCPS") + .HasColumnType("INTEGER"); - b.Property("SupportsWriteInhibitDCB").HasColumnType("INTEGER"); + b.Property("SupportsWriteInhibitDCB") + .HasColumnType("INTEGER"); - b.Property("SupportsWriteProtectPAC").HasColumnType("INTEGER"); + b.Property("SupportsWriteProtectPAC") + .HasColumnType("INTEGER"); - b.Property("VolumeLevels").HasColumnType("INTEGER"); + b.Property("VolumeLevels") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("MmcFeatures"); - }); + b.ToTable("MmcFeatures"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.MmcSd", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("CID").HasColumnType("BLOB"); + b.Property("CID") + .HasColumnType("BLOB"); - b.Property("CSD").HasColumnType("BLOB"); + b.Property("CSD") + .HasColumnType("BLOB"); - b.Property("ExtendedCSD").HasColumnType("BLOB"); + b.Property("ExtendedCSD") + .HasColumnType("BLOB"); - b.Property("OCR").HasColumnType("BLOB"); + b.Property("OCR") + .HasColumnType("BLOB"); - b.Property("SCR").HasColumnType("BLOB"); + b.Property("SCR") + .HasColumnType("BLOB"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("MmcSd"); - }); + b.ToTable("MmcSd"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.Pcmcia", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("CIS").HasColumnType("BLOB"); + b.Property("CIS") + .HasColumnType("BLOB"); - b.Property("CardCode").HasColumnType("INTEGER"); + b.Property("CardCode") + .HasColumnType("INTEGER"); - b.Property("Compliance").HasColumnType("TEXT"); + b.Property("Compliance") + .HasColumnType("TEXT"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("ManufacturerCode").HasColumnType("INTEGER"); + b.Property("ManufacturerCode") + .HasColumnType("INTEGER"); - b.Property("ProductName").HasColumnType("TEXT"); + b.Property("ProductName") + .HasColumnType("TEXT"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Pcmcia"); - }); + b.ToTable("Pcmcia"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.Scsi", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("InquiryData").HasColumnType("BLOB"); + b.Property("InquiryData") + .HasColumnType("BLOB"); - b.Property("ModeSense10ChangeableData").HasColumnType("BLOB"); + b.Property("ModeSense10ChangeableData") + .HasColumnType("BLOB"); - b.Property("ModeSense10CurrentData").HasColumnType("BLOB"); + b.Property("ModeSense10CurrentData") + .HasColumnType("BLOB"); - b.Property("ModeSense10Data").HasColumnType("BLOB"); + b.Property("ModeSense10Data") + .HasColumnType("BLOB"); - b.Property("ModeSense6ChangeableData").HasColumnType("BLOB"); + b.Property("ModeSense6ChangeableData") + .HasColumnType("BLOB"); - b.Property("ModeSense6CurrentData").HasColumnType("BLOB"); + b.Property("ModeSense6CurrentData") + .HasColumnType("BLOB"); - b.Property("ModeSense6Data").HasColumnType("BLOB"); + b.Property("ModeSense6Data") + .HasColumnType("BLOB"); - b.Property("ModeSenseId").HasColumnType("INTEGER"); + b.Property("ModeSenseId") + .HasColumnType("INTEGER"); - b.Property("MultiMediaDeviceId").HasColumnType("INTEGER"); + b.Property("MultiMediaDeviceId") + .HasColumnType("INTEGER"); - b.Property("ReadCapabilitiesId").HasColumnType("INTEGER"); + b.Property("ReadCapabilitiesId") + .HasColumnType("INTEGER"); - b.Property("SequentialDeviceId").HasColumnType("INTEGER"); + b.Property("SequentialDeviceId") + .HasColumnType("INTEGER"); - b.Property("SupportsModeSense10").HasColumnType("INTEGER"); + b.Property("SupportsModeSense10") + .HasColumnType("INTEGER"); - b.Property("SupportsModeSense6").HasColumnType("INTEGER"); + b.Property("SupportsModeSense6") + .HasColumnType("INTEGER"); - b.Property("SupportsModeSubpages").HasColumnType("INTEGER"); + b.Property("SupportsModeSubpages") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ModeSenseId"); + b.HasIndex("ModeSenseId"); - b.HasIndex("MultiMediaDeviceId"); + b.HasIndex("MultiMediaDeviceId"); - b.HasIndex("ReadCapabilitiesId"); + b.HasIndex("ReadCapabilitiesId"); - b.HasIndex("SequentialDeviceId"); + b.HasIndex("SequentialDeviceId"); - b.ToTable("Scsi"); - }); + b.ToTable("Scsi"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiMode", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("BlankCheckEnabled").HasColumnType("INTEGER"); + b.Property("BlankCheckEnabled") + .HasColumnType("INTEGER"); - b.Property("BufferedMode").HasColumnType("INTEGER"); + b.Property("BufferedMode") + .HasColumnType("INTEGER"); - b.Property("DPOandFUA").HasColumnType("INTEGER"); + b.Property("DPOandFUA") + .HasColumnType("INTEGER"); - b.Property("MediumType").HasColumnType("INTEGER"); + b.Property("MediumType") + .HasColumnType("INTEGER"); - b.Property("Speed").HasColumnType("INTEGER"); + b.Property("Speed") + .HasColumnType("INTEGER"); - b.Property("WriteProtected").HasColumnType("INTEGER"); + b.Property("WriteProtected") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("ScsiMode"); - }); + b.ToTable("ScsiMode"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiPage", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("ScsiId").HasColumnType("INTEGER"); + b.Property("ScsiId") + .HasColumnType("INTEGER"); - b.Property("ScsiModeId").HasColumnType("INTEGER"); + b.Property("ScsiModeId") + .HasColumnType("INTEGER"); - b.Property("page").HasColumnType("INTEGER"); + b.Property("page") + .HasColumnType("INTEGER"); - b.Property("subpage").HasColumnType("INTEGER"); + b.Property("subpage") + .HasColumnType("INTEGER"); - b.Property("value").HasColumnType("BLOB"); + b.Property("value") + .HasColumnType("BLOB"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ScsiId"); + b.HasIndex("ScsiId"); - b.HasIndex("ScsiModeId"); + b.HasIndex("ScsiModeId"); - b.ToTable("ScsiPage"); - }); + b.ToTable("ScsiPage"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ssc", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("BlockSizeGranularity").HasColumnType("INTEGER"); + b.Property("BlockSizeGranularity") + .HasColumnType("INTEGER"); - b.Property("MaxBlockLength").HasColumnType("INTEGER"); + b.Property("MaxBlockLength") + .HasColumnType("INTEGER"); - b.Property("MinBlockLength").HasColumnType("INTEGER"); + b.Property("MinBlockLength") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Ssc"); - }); + b.ToTable("Ssc"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.SscSupportedMedia", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Description").HasColumnType("TEXT"); + b.Property("Description") + .HasColumnType("TEXT"); - b.Property("Length").HasColumnType("INTEGER"); + b.Property("Length") + .HasColumnType("INTEGER"); - b.Property("MediumType").HasColumnType("INTEGER"); + b.Property("MediumType") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Organization").HasColumnType("TEXT"); + b.Property("Organization") + .HasColumnType("TEXT"); - b.Property("SscId").HasColumnType("INTEGER"); + b.Property("SscId") + .HasColumnType("INTEGER"); - b.Property("TestedSequentialMediaId").HasColumnType("INTEGER"); + b.Property("TestedSequentialMediaId") + .HasColumnType("INTEGER"); - b.Property("Width").HasColumnType("INTEGER"); + b.Property("Width") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("SscId"); + b.HasIndex("SscId"); - b.HasIndex("TestedSequentialMediaId"); + b.HasIndex("TestedSequentialMediaId"); - b.ToTable("SscSupportedMedia"); - }); + b.ToTable("SscSupportedMedia"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.SupportedDensity", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("BitsPerMm").HasColumnType("INTEGER"); + b.Property("BitsPerMm") + .HasColumnType("INTEGER"); - b.Property("Capacity").HasColumnType("INTEGER"); + b.Property("Capacity") + .HasColumnType("INTEGER"); - b.Property("DefaultDensity").HasColumnType("INTEGER"); + b.Property("DefaultDensity") + .HasColumnType("INTEGER"); - b.Property("Description").HasColumnType("TEXT"); + b.Property("Description") + .HasColumnType("TEXT"); - b.Property("Duplicate").HasColumnType("INTEGER"); + b.Property("Duplicate") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Organization").HasColumnType("TEXT"); + b.Property("Organization") + .HasColumnType("TEXT"); - b.Property("PrimaryCode").HasColumnType("INTEGER"); + b.Property("PrimaryCode") + .HasColumnType("INTEGER"); - b.Property("SecondaryCode").HasColumnType("INTEGER"); + b.Property("SecondaryCode") + .HasColumnType("INTEGER"); - b.Property("SscId").HasColumnType("INTEGER"); + b.Property("SscId") + .HasColumnType("INTEGER"); - b.Property("TestedSequentialMediaId").HasColumnType("INTEGER"); + b.Property("TestedSequentialMediaId") + .HasColumnType("INTEGER"); - b.Property("Tracks").HasColumnType("INTEGER"); + b.Property("Tracks") + .HasColumnType("INTEGER"); - b.Property("Width").HasColumnType("INTEGER"); + b.Property("Width") + .HasColumnType("INTEGER"); - b.Property("Writable").HasColumnType("INTEGER"); + b.Property("Writable") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("SscId"); + b.HasIndex("SscId"); - b.HasIndex("TestedSequentialMediaId"); + b.HasIndex("TestedSequentialMediaId"); - b.ToTable("SupportedDensity"); - }); + b.ToTable("SupportedDensity"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedMedia", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("AdipData").HasColumnType("BLOB"); + b.Property("AdipData") + .HasColumnType("BLOB"); - b.Property("AtaId").HasColumnType("INTEGER"); + b.Property("AtaId") + .HasColumnType("INTEGER"); - b.Property("AtipData").HasColumnType("BLOB"); + b.Property("AtipData") + .HasColumnType("BLOB"); - b.Property("BlockSize").HasColumnType("INTEGER"); + b.Property("BlockSize") + .HasColumnType("INTEGER"); - b.Property("Blocks").HasColumnType("INTEGER"); + b.Property("Blocks") + .HasColumnType("INTEGER"); - b.Property("BluBcaData").HasColumnType("BLOB"); + b.Property("BluBcaData") + .HasColumnType("BLOB"); - b.Property("BluDdsData").HasColumnType("BLOB"); + b.Property("BluDdsData") + .HasColumnType("BLOB"); - b.Property("BluDiData").HasColumnType("BLOB"); + b.Property("BluDiData") + .HasColumnType("BLOB"); - b.Property("BluPacData").HasColumnType("BLOB"); + b.Property("BluPacData") + .HasColumnType("BLOB"); - b.Property("BluSaiData").HasColumnType("BLOB"); + b.Property("BluSaiData") + .HasColumnType("BLOB"); - b.Property("C2PointersData").HasColumnType("BLOB"); + b.Property("C2PointersData") + .HasColumnType("BLOB"); - b.Property("CHSId").HasColumnType("INTEGER"); + b.Property("CHSId") + .HasColumnType("INTEGER"); - b.Property("CanReadAACS").HasColumnType("INTEGER"); + b.Property("CanReadAACS") + .HasColumnType("INTEGER"); - b.Property("CanReadADIP").HasColumnType("INTEGER"); + b.Property("CanReadADIP") + .HasColumnType("INTEGER"); - b.Property("CanReadATIP").HasColumnType("INTEGER"); + b.Property("CanReadATIP") + .HasColumnType("INTEGER"); - b.Property("CanReadBCA").HasColumnType("INTEGER"); + b.Property("CanReadBCA") + .HasColumnType("INTEGER"); - b.Property("CanReadC2Pointers").HasColumnType("INTEGER"); + b.Property("CanReadC2Pointers") + .HasColumnType("INTEGER"); - b.Property("CanReadCMI").HasColumnType("INTEGER"); + b.Property("CanReadCMI") + .HasColumnType("INTEGER"); - b.Property("CanReadCdScrambled").HasColumnType("INTEGER"); + b.Property("CanReadCdScrambled") + .HasColumnType("INTEGER"); - b.Property("CanReadCorrectedSubchannel").HasColumnType("INTEGER"); + b.Property("CanReadCorrectedSubchannel") + .HasColumnType("INTEGER"); - b.Property("CanReadCorrectedSubchannelWithC2").HasColumnType("INTEGER"); + b.Property("CanReadCorrectedSubchannelWithC2") + .HasColumnType("INTEGER"); - b.Property("CanReadDCB").HasColumnType("INTEGER"); + b.Property("CanReadDCB") + .HasColumnType("INTEGER"); - b.Property("CanReadDDS").HasColumnType("INTEGER"); + b.Property("CanReadDDS") + .HasColumnType("INTEGER"); - b.Property("CanReadDMI").HasColumnType("INTEGER"); + b.Property("CanReadDMI") + .HasColumnType("INTEGER"); - b.Property("CanReadDiscInformation").HasColumnType("INTEGER"); + b.Property("CanReadDiscInformation") + .HasColumnType("INTEGER"); - b.Property("CanReadF1_06").HasColumnType("INTEGER"); + b.Property("CanReadF1_06") + .HasColumnType("INTEGER"); - b.Property("CanReadF1_06LeadOut").HasColumnType("INTEGER"); + b.Property("CanReadF1_06LeadOut") + .HasColumnType("INTEGER"); - b.Property("CanReadFirstTrackPreGap").HasColumnType("INTEGER"); + b.Property("CanReadFirstTrackPreGap") + .HasColumnType("INTEGER"); - b.Property("CanReadFullTOC").HasColumnType("INTEGER"); + b.Property("CanReadFullTOC") + .HasColumnType("INTEGER"); - b.Property("CanReadHDCMI").HasColumnType("INTEGER"); + b.Property("CanReadHDCMI") + .HasColumnType("INTEGER"); - b.Property("CanReadLayerCapacity").HasColumnType("INTEGER"); + b.Property("CanReadLayerCapacity") + .HasColumnType("INTEGER"); - b.Property("CanReadLeadIn").HasColumnType("INTEGER"); + b.Property("CanReadLeadIn") + .HasColumnType("INTEGER"); - b.Property("CanReadLeadOut").HasColumnType("INTEGER"); + b.Property("CanReadLeadOut") + .HasColumnType("INTEGER"); - b.Property("CanReadMediaID").HasColumnType("INTEGER"); + b.Property("CanReadMediaID") + .HasColumnType("INTEGER"); - b.Property("CanReadMediaSerial").HasColumnType("INTEGER"); + b.Property("CanReadMediaSerial") + .HasColumnType("INTEGER"); - b.Property("CanReadPAC").HasColumnType("INTEGER"); + b.Property("CanReadPAC") + .HasColumnType("INTEGER"); - b.Property("CanReadPFI").HasColumnType("INTEGER"); + b.Property("CanReadPFI") + .HasColumnType("INTEGER"); - b.Property("CanReadPMA").HasColumnType("INTEGER"); + b.Property("CanReadPMA") + .HasColumnType("INTEGER"); - b.Property("CanReadPQSubchannel").HasColumnType("INTEGER"); + b.Property("CanReadPQSubchannel") + .HasColumnType("INTEGER"); - b.Property("CanReadPQSubchannelWithC2").HasColumnType("INTEGER"); + b.Property("CanReadPQSubchannelWithC2") + .HasColumnType("INTEGER"); - b.Property("CanReadPRI").HasColumnType("INTEGER"); + b.Property("CanReadPRI") + .HasColumnType("INTEGER"); - b.Property("CanReadRWSubchannel").HasColumnType("INTEGER"); + b.Property("CanReadRWSubchannel") + .HasColumnType("INTEGER"); - b.Property("CanReadRWSubchannelWithC2").HasColumnType("INTEGER"); + b.Property("CanReadRWSubchannelWithC2") + .HasColumnType("INTEGER"); - b.Property("CanReadRecordablePFI").HasColumnType("INTEGER"); + b.Property("CanReadRecordablePFI") + .HasColumnType("INTEGER"); - b.Property("CanReadSpareAreaInformation").HasColumnType("INTEGER"); + b.Property("CanReadSpareAreaInformation") + .HasColumnType("INTEGER"); - b.Property("CanReadTOC").HasColumnType("INTEGER"); + b.Property("CanReadTOC") + .HasColumnType("INTEGER"); - b.Property("CanReadingIntersessionLeadIn").HasColumnType("INTEGER"); + b.Property("CanReadingIntersessionLeadIn") + .HasColumnType("INTEGER"); - b.Property("CanReadingIntersessionLeadOut").HasColumnType("INTEGER"); + b.Property("CanReadingIntersessionLeadOut") + .HasColumnType("INTEGER"); - b.Property("CmiData").HasColumnType("BLOB"); + b.Property("CmiData") + .HasColumnType("BLOB"); - b.Property("CorrectedSubchannelData").HasColumnType("BLOB"); + b.Property("CorrectedSubchannelData") + .HasColumnType("BLOB"); - b.Property("CorrectedSubchannelWithC2Data").HasColumnType("BLOB"); + b.Property("CorrectedSubchannelWithC2Data") + .HasColumnType("BLOB"); - b.Property("CurrentCHSId").HasColumnType("INTEGER"); + b.Property("CurrentCHSId") + .HasColumnType("INTEGER"); - b.Property("DcbData").HasColumnType("BLOB"); + b.Property("DcbData") + .HasColumnType("BLOB"); - b.Property("Density").HasColumnType("INTEGER"); + b.Property("Density") + .HasColumnType("INTEGER"); - b.Property("DmiData").HasColumnType("BLOB"); + b.Property("DmiData") + .HasColumnType("BLOB"); - b.Property("DvdAacsData").HasColumnType("BLOB"); + b.Property("DvdAacsData") + .HasColumnType("BLOB"); - b.Property("DvdBcaData").HasColumnType("BLOB"); + b.Property("DvdBcaData") + .HasColumnType("BLOB"); - b.Property("DvdDdsData").HasColumnType("BLOB"); + b.Property("DvdDdsData") + .HasColumnType("BLOB"); - b.Property("DvdLayerData").HasColumnType("BLOB"); + b.Property("DvdLayerData") + .HasColumnType("BLOB"); - b.Property("DvdSaiData").HasColumnType("BLOB"); + b.Property("DvdSaiData") + .HasColumnType("BLOB"); - b.Property("EmbossedPfiData").HasColumnType("BLOB"); + b.Property("EmbossedPfiData") + .HasColumnType("BLOB"); - b.Property("FullTocData").HasColumnType("BLOB"); + b.Property("FullTocData") + .HasColumnType("BLOB"); - b.Property("HLDTSTReadRawDVDData").HasColumnType("BLOB"); + b.Property("HLDTSTReadRawDVDData") + .HasColumnType("BLOB"); - b.Property("HdCmiData").HasColumnType("BLOB"); + b.Property("HdCmiData") + .HasColumnType("BLOB"); - b.Property("IdentifyData").HasColumnType("BLOB"); + b.Property("IdentifyData") + .HasColumnType("BLOB"); - b.Property("IntersessionLeadInData").HasColumnType("BLOB"); + b.Property("IntersessionLeadInData") + .HasColumnType("BLOB"); - b.Property("IntersessionLeadOutData").HasColumnType("BLOB"); + b.Property("IntersessionLeadOutData") + .HasColumnType("BLOB"); - b.Property("LBA48Sectors").HasColumnType("INTEGER"); + b.Property("LBA48Sectors") + .HasColumnType("INTEGER"); - b.Property("LBASectors").HasColumnType("INTEGER"); + b.Property("LBASectors") + .HasColumnType("INTEGER"); - b.Property("LeadInData").HasColumnType("BLOB"); + b.Property("LeadInData") + .HasColumnType("BLOB"); - b.Property("LeadOutData").HasColumnType("BLOB"); + b.Property("LeadOutData") + .HasColumnType("BLOB"); - b.Property("LogicalAlignment").HasColumnType("INTEGER"); + b.Property("LogicalAlignment") + .HasColumnType("INTEGER"); - b.Property("LongBlockSize").HasColumnType("INTEGER"); + b.Property("LongBlockSize") + .HasColumnType("INTEGER"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("MediaIsRecognized").HasColumnType("INTEGER"); + b.Property("MediaIsRecognized") + .HasColumnType("INTEGER"); - b.Property("MediumType").HasColumnType("INTEGER"); + b.Property("MediumType") + .HasColumnType("INTEGER"); - b.Property("MediumTypeName").HasColumnType("TEXT"); + b.Property("MediumTypeName") + .HasColumnType("TEXT"); - b.Property("MmcId").HasColumnType("INTEGER"); + b.Property("MmcId") + .HasColumnType("INTEGER"); - b.Property("ModeSense10Data").HasColumnType("BLOB"); + b.Property("ModeSense10Data") + .HasColumnType("BLOB"); - b.Property("ModeSense6Data").HasColumnType("BLOB"); + b.Property("ModeSense6Data") + .HasColumnType("BLOB"); - b.Property("Model").HasColumnType("TEXT"); + b.Property("Model") + .HasColumnType("TEXT"); - b.Property("NecReadCddaData").HasColumnType("BLOB"); + b.Property("NecReadCddaData") + .HasColumnType("BLOB"); - b.Property("NominalRotationRate").HasColumnType("INTEGER"); + b.Property("NominalRotationRate") + .HasColumnType("INTEGER"); - b.Property("PQSubchannelData").HasColumnType("BLOB"); + b.Property("PQSubchannelData") + .HasColumnType("BLOB"); - b.Property("PQSubchannelWithC2Data").HasColumnType("BLOB"); + b.Property("PQSubchannelWithC2Data") + .HasColumnType("BLOB"); - b.Property("PfiData").HasColumnType("BLOB"); + b.Property("PfiData") + .HasColumnType("BLOB"); - b.Property("PhysicalBlockSize").HasColumnType("INTEGER"); + b.Property("PhysicalBlockSize") + .HasColumnType("INTEGER"); - b.Property("PioneerReadCddaData").HasColumnType("BLOB"); + b.Property("PioneerReadCddaData") + .HasColumnType("BLOB"); - b.Property("PioneerReadCddaMsfData").HasColumnType("BLOB"); + b.Property("PioneerReadCddaMsfData") + .HasColumnType("BLOB"); - b.Property("PlextorReadCddaData").HasColumnType("BLOB"); + b.Property("PlextorReadCddaData") + .HasColumnType("BLOB"); - b.Property("PlextorReadRawDVDData").HasColumnType("BLOB"); + b.Property("PlextorReadRawDVDData") + .HasColumnType("BLOB"); - b.Property("PmaData").HasColumnType("BLOB"); + b.Property("PmaData") + .HasColumnType("BLOB"); - b.Property("PriData").HasColumnType("BLOB"); + b.Property("PriData") + .HasColumnType("BLOB"); - b.Property("RWSubchannelData").HasColumnType("BLOB"); + b.Property("RWSubchannelData") + .HasColumnType("BLOB"); - b.Property("RWSubchannelWithC2Data").HasColumnType("BLOB"); + b.Property("RWSubchannelWithC2Data") + .HasColumnType("BLOB"); - b.Property("Read10Data").HasColumnType("BLOB"); + b.Property("Read10Data") + .HasColumnType("BLOB"); - b.Property("Read12Data").HasColumnType("BLOB"); + b.Property("Read12Data") + .HasColumnType("BLOB"); - b.Property("Read16Data").HasColumnType("BLOB"); + b.Property("Read16Data") + .HasColumnType("BLOB"); - b.Property("Read6Data").HasColumnType("BLOB"); + b.Property("Read6Data") + .HasColumnType("BLOB"); - b.Property("ReadCdData").HasColumnType("BLOB"); + b.Property("ReadCdData") + .HasColumnType("BLOB"); - b.Property("ReadCdFullData").HasColumnType("BLOB"); + b.Property("ReadCdFullData") + .HasColumnType("BLOB"); - b.Property("ReadCdMsfData").HasColumnType("BLOB"); + b.Property("ReadCdMsfData") + .HasColumnType("BLOB"); - b.Property("ReadCdMsfFullData").HasColumnType("BLOB"); + b.Property("ReadCdMsfFullData") + .HasColumnType("BLOB"); - b.Property("ReadCdScrambledData").HasColumnType("BLOB"); + b.Property("ReadCdScrambledData") + .HasColumnType("BLOB"); - b.Property("ReadDmaData").HasColumnType("BLOB"); + b.Property("ReadDmaData") + .HasColumnType("BLOB"); - b.Property("ReadDmaLba48Data").HasColumnType("BLOB"); + b.Property("ReadDmaLba48Data") + .HasColumnType("BLOB"); - b.Property("ReadDmaLbaData").HasColumnType("BLOB"); + b.Property("ReadDmaLbaData") + .HasColumnType("BLOB"); - b.Property("ReadDmaRetryData").HasColumnType("BLOB"); + b.Property("ReadDmaRetryData") + .HasColumnType("BLOB"); - b.Property("ReadDmaRetryLbaData").HasColumnType("BLOB"); + b.Property("ReadDmaRetryLbaData") + .HasColumnType("BLOB"); - b.Property("ReadF1_06Data").HasColumnType("BLOB"); + b.Property("ReadF1_06Data") + .HasColumnType("BLOB"); - b.Property("ReadF1_06LeadOutData").HasColumnType("BLOB"); + b.Property("ReadF1_06LeadOutData") + .HasColumnType("BLOB"); - b.Property("ReadLba48Data").HasColumnType("BLOB"); + b.Property("ReadLba48Data") + .HasColumnType("BLOB"); - b.Property("ReadLbaData").HasColumnType("BLOB"); + b.Property("ReadLbaData") + .HasColumnType("BLOB"); - b.Property("ReadLong10Data").HasColumnType("BLOB"); + b.Property("ReadLong10Data") + .HasColumnType("BLOB"); - b.Property("ReadLong16Data").HasColumnType("BLOB"); + b.Property("ReadLong16Data") + .HasColumnType("BLOB"); - b.Property("ReadLongData").HasColumnType("BLOB"); + b.Property("ReadLongData") + .HasColumnType("BLOB"); - b.Property("ReadLongLbaData").HasColumnType("BLOB"); + b.Property("ReadLongLbaData") + .HasColumnType("BLOB"); - b.Property("ReadLongRetryData").HasColumnType("BLOB"); + b.Property("ReadLongRetryData") + .HasColumnType("BLOB"); - b.Property("ReadLongRetryLbaData").HasColumnType("BLOB"); + b.Property("ReadLongRetryLbaData") + .HasColumnType("BLOB"); - b.Property("ReadRetryLbaData").HasColumnType("BLOB"); + b.Property("ReadRetryLbaData") + .HasColumnType("BLOB"); - b.Property("ReadSectorsData").HasColumnType("BLOB"); + b.Property("ReadSectorsData") + .HasColumnType("BLOB"); - b.Property("ReadSectorsRetryData").HasColumnType("BLOB"); + b.Property("ReadSectorsRetryData") + .HasColumnType("BLOB"); - b.Property("ScsiId").HasColumnType("INTEGER"); + b.Property("ScsiId") + .HasColumnType("INTEGER"); - b.Property("SolidStateDevice").HasColumnType("INTEGER"); + b.Property("SolidStateDevice") + .HasColumnType("INTEGER"); - b.Property("SupportsHLDTSTReadRawDVD").HasColumnType("INTEGER"); + b.Property("SupportsHLDTSTReadRawDVD") + .HasColumnType("INTEGER"); - b.Property("SupportsNECReadCDDA").HasColumnType("INTEGER"); + b.Property("SupportsNECReadCDDA") + .HasColumnType("INTEGER"); - b.Property("SupportsPioneerReadCDDA").HasColumnType("INTEGER"); + b.Property("SupportsPioneerReadCDDA") + .HasColumnType("INTEGER"); - b.Property("SupportsPioneerReadCDDAMSF").HasColumnType("INTEGER"); + b.Property("SupportsPioneerReadCDDAMSF") + .HasColumnType("INTEGER"); - b.Property("SupportsPlextorReadCDDA").HasColumnType("INTEGER"); + b.Property("SupportsPlextorReadCDDA") + .HasColumnType("INTEGER"); - b.Property("SupportsPlextorReadRawDVD").HasColumnType("INTEGER"); + b.Property("SupportsPlextorReadRawDVD") + .HasColumnType("INTEGER"); - b.Property("SupportsRead10").HasColumnType("INTEGER"); + b.Property("SupportsRead10") + .HasColumnType("INTEGER"); - b.Property("SupportsRead12").HasColumnType("INTEGER"); + b.Property("SupportsRead12") + .HasColumnType("INTEGER"); - b.Property("SupportsRead16").HasColumnType("INTEGER"); + b.Property("SupportsRead16") + .HasColumnType("INTEGER"); - b.Property("SupportsRead6").HasColumnType("INTEGER"); + b.Property("SupportsRead6") + .HasColumnType("INTEGER"); - b.Property("SupportsReadCapacity").HasColumnType("INTEGER"); + b.Property("SupportsReadCapacity") + .HasColumnType("INTEGER"); - b.Property("SupportsReadCapacity16").HasColumnType("INTEGER"); + b.Property("SupportsReadCapacity16") + .HasColumnType("INTEGER"); - b.Property("SupportsReadCd").HasColumnType("INTEGER"); + b.Property("SupportsReadCd") + .HasColumnType("INTEGER"); - b.Property("SupportsReadCdMsf").HasColumnType("INTEGER"); + b.Property("SupportsReadCdMsf") + .HasColumnType("INTEGER"); - b.Property("SupportsReadCdMsfRaw").HasColumnType("INTEGER"); + b.Property("SupportsReadCdMsfRaw") + .HasColumnType("INTEGER"); - b.Property("SupportsReadCdRaw").HasColumnType("INTEGER"); + b.Property("SupportsReadCdRaw") + .HasColumnType("INTEGER"); - b.Property("SupportsReadDma").HasColumnType("INTEGER"); + b.Property("SupportsReadDma") + .HasColumnType("INTEGER"); - b.Property("SupportsReadDmaLba").HasColumnType("INTEGER"); + b.Property("SupportsReadDmaLba") + .HasColumnType("INTEGER"); - b.Property("SupportsReadDmaLba48").HasColumnType("INTEGER"); + b.Property("SupportsReadDmaLba48") + .HasColumnType("INTEGER"); - b.Property("SupportsReadDmaRetry").HasColumnType("INTEGER"); + b.Property("SupportsReadDmaRetry") + .HasColumnType("INTEGER"); - b.Property("SupportsReadDmaRetryLba").HasColumnType("INTEGER"); + b.Property("SupportsReadDmaRetryLba") + .HasColumnType("INTEGER"); - b.Property("SupportsReadLba").HasColumnType("INTEGER"); + b.Property("SupportsReadLba") + .HasColumnType("INTEGER"); - b.Property("SupportsReadLba48").HasColumnType("INTEGER"); + b.Property("SupportsReadLba48") + .HasColumnType("INTEGER"); - b.Property("SupportsReadLong").HasColumnType("INTEGER"); + b.Property("SupportsReadLong") + .HasColumnType("INTEGER"); - b.Property("SupportsReadLong16").HasColumnType("INTEGER"); + b.Property("SupportsReadLong16") + .HasColumnType("INTEGER"); - b.Property("SupportsReadLongLba").HasColumnType("INTEGER"); + b.Property("SupportsReadLongLba") + .HasColumnType("INTEGER"); - b.Property("SupportsReadLongRetry").HasColumnType("INTEGER"); + b.Property("SupportsReadLongRetry") + .HasColumnType("INTEGER"); - b.Property("SupportsReadLongRetryLba").HasColumnType("INTEGER"); + b.Property("SupportsReadLongRetryLba") + .HasColumnType("INTEGER"); - b.Property("SupportsReadRetry").HasColumnType("INTEGER"); + b.Property("SupportsReadRetry") + .HasColumnType("INTEGER"); - b.Property("SupportsReadRetryLba").HasColumnType("INTEGER"); + b.Property("SupportsReadRetryLba") + .HasColumnType("INTEGER"); - b.Property("SupportsReadSectors").HasColumnType("INTEGER"); + b.Property("SupportsReadSectors") + .HasColumnType("INTEGER"); - b.Property("SupportsSeek").HasColumnType("INTEGER"); + b.Property("SupportsSeek") + .HasColumnType("INTEGER"); - b.Property("SupportsSeekLba").HasColumnType("INTEGER"); + b.Property("SupportsSeekLba") + .HasColumnType("INTEGER"); - b.Property("TocData").HasColumnType("BLOB"); + b.Property("TocData") + .HasColumnType("BLOB"); - b.Property("Track1PregapData").HasColumnType("BLOB"); + b.Property("Track1PregapData") + .HasColumnType("BLOB"); - b.Property("UnformattedBPS").HasColumnType("INTEGER"); + b.Property("UnformattedBPS") + .HasColumnType("INTEGER"); - b.Property("UnformattedBPT").HasColumnType("INTEGER"); + b.Property("UnformattedBPT") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("AtaId"); + b.HasIndex("AtaId"); - b.HasIndex("CHSId"); + b.HasIndex("CHSId"); - b.HasIndex("CurrentCHSId"); + b.HasIndex("CurrentCHSId"); - b.HasIndex("MmcId"); + b.HasIndex("MmcId"); - b.HasIndex("ScsiId"); + b.HasIndex("ScsiId"); - b.ToTable("TestedMedia"); - }); + b.ToTable("TestedMedia"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("CanReadMediaSerial").HasColumnType("INTEGER"); + b.Property("CanReadMediaSerial") + .HasColumnType("INTEGER"); - b.Property("Density").HasColumnType("INTEGER"); + b.Property("Density") + .HasColumnType("INTEGER"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("MediaIsRecognized").HasColumnType("INTEGER"); + b.Property("MediaIsRecognized") + .HasColumnType("INTEGER"); - b.Property("MediumType").HasColumnType("INTEGER"); + b.Property("MediumType") + .HasColumnType("INTEGER"); - b.Property("MediumTypeName").HasColumnType("TEXT"); + b.Property("MediumTypeName") + .HasColumnType("TEXT"); - b.Property("ModeSense10Data").HasColumnType("BLOB"); + b.Property("ModeSense10Data") + .HasColumnType("BLOB"); - b.Property("ModeSense6Data").HasColumnType("BLOB"); + b.Property("ModeSense6Data") + .HasColumnType("BLOB"); - b.Property("Model").HasColumnType("TEXT"); + b.Property("Model") + .HasColumnType("TEXT"); - b.Property("SscId").HasColumnType("INTEGER"); + b.Property("SscId") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("SscId"); + b.HasIndex("SscId"); - b.ToTable("TestedSequentialMedia"); - }); + b.ToTable("TestedSequentialMedia"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.Usb", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Descriptors").HasColumnType("BLOB"); + b.Property("Descriptors") + .HasColumnType("BLOB"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("Product").HasColumnType("TEXT"); + b.Property("Product") + .HasColumnType("TEXT"); - b.Property("ProductID").HasColumnType("INTEGER"); + b.Property("ProductID") + .HasColumnType("INTEGER"); - b.Property("RemovableMedia").HasColumnType("INTEGER"); + b.Property("RemovableMedia") + .HasColumnType("INTEGER"); - b.Property("VendorID").HasColumnType("INTEGER"); + b.Property("VendorID") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Usb"); - }); + b.ToTable("Usb"); + }); modelBuilder.Entity("Aaru.Database.Models.CdOffset", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("AddedWhen").HasColumnType("TEXT"); + b.Property("AddedWhen") + .HasColumnType("TEXT"); - b.Property("Agreement").HasColumnType("REAL"); + b.Property("Agreement") + .HasColumnType("REAL"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("Model").HasColumnType("TEXT"); + b.Property("Model") + .HasColumnType("TEXT"); - b.Property("ModifiedWhen").HasColumnType("TEXT"); + b.Property("ModifiedWhen") + .HasColumnType("TEXT"); - b.Property("Offset").HasColumnType("INTEGER"); + b.Property("Offset") + .HasColumnType("INTEGER"); - b.Property("Submissions").HasColumnType("INTEGER"); + b.Property("Submissions") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ModifiedWhen"); + b.HasIndex("ModifiedWhen"); - b.ToTable("CdOffsets"); - }); + b.ToTable("CdOffsets"); + }); modelBuilder.Entity("Aaru.Database.Models.Command", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Commands"); - }); + b.ToTable("Commands"); + }); modelBuilder.Entity("Aaru.Database.Models.Device", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("ATAId").HasColumnType("INTEGER"); + b.Property("ATAId") + .HasColumnType("INTEGER"); - b.Property("ATAPIId").HasColumnType("INTEGER"); + b.Property("ATAPIId") + .HasColumnType("INTEGER"); - b.Property("CanReadGdRomUsingSwapDisc").HasColumnType("INTEGER"); + b.Property("CanReadGdRomUsingSwapDisc") + .HasColumnType("INTEGER"); - b.Property("CompactFlash").HasColumnType("INTEGER"); + b.Property("CompactFlash") + .HasColumnType("INTEGER"); - b.Property("FireWireId").HasColumnType("INTEGER"); + b.Property("FireWireId") + .HasColumnType("INTEGER"); - b.Property("GdRomSwapDiscCapabilitiesId").HasColumnType("INTEGER"); + b.Property("GdRomSwapDiscCapabilitiesId") + .HasColumnType("INTEGER"); - b.Property("LastSynchronized").HasColumnType("TEXT"); + b.Property("LastSynchronized") + .HasColumnType("TEXT"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("Model").HasColumnType("TEXT"); + b.Property("Model") + .HasColumnType("TEXT"); - b.Property("MultiMediaCardId").HasColumnType("INTEGER"); + b.Property("MultiMediaCardId") + .HasColumnType("INTEGER"); - b.Property("OptimalMultipleSectorsRead").HasColumnType("INTEGER"); + b.Property("OptimalMultipleSectorsRead") + .HasColumnType("INTEGER"); - b.Property("PCMCIAId").HasColumnType("INTEGER"); + b.Property("PCMCIAId") + .HasColumnType("INTEGER"); - b.Property("Revision").HasColumnType("TEXT"); + b.Property("Revision") + .HasColumnType("TEXT"); - b.Property("SCSIId").HasColumnType("INTEGER"); + b.Property("SCSIId") + .HasColumnType("INTEGER"); - b.Property("SecureDigitalId").HasColumnType("INTEGER"); + b.Property("SecureDigitalId") + .HasColumnType("INTEGER"); - b.Property("Type").HasColumnType("INTEGER"); + b.Property("Type") + .HasColumnType("INTEGER"); - b.Property("USBId").HasColumnType("INTEGER"); + b.Property("USBId") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ATAId"); + b.HasIndex("ATAId"); - b.HasIndex("ATAPIId"); + b.HasIndex("ATAPIId"); - b.HasIndex("FireWireId"); + b.HasIndex("FireWireId"); - b.HasIndex("GdRomSwapDiscCapabilitiesId"); + b.HasIndex("GdRomSwapDiscCapabilitiesId"); - b.HasIndex("MultiMediaCardId"); + b.HasIndex("MultiMediaCardId"); - b.HasIndex("PCMCIAId"); + b.HasIndex("PCMCIAId"); - b.HasIndex("SCSIId"); + b.HasIndex("SCSIId"); - b.HasIndex("SecureDigitalId"); + b.HasIndex("SecureDigitalId"); - b.HasIndex("USBId"); + b.HasIndex("USBId"); - b.ToTable("Devices"); - }); + b.ToTable("Devices"); + }); modelBuilder.Entity("Aaru.Database.Models.DeviceStat", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Bus").HasColumnType("TEXT"); + b.Property("Bus") + .HasColumnType("TEXT"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("Model").HasColumnType("TEXT"); + b.Property("Model") + .HasColumnType("TEXT"); - b.Property("Revision").HasColumnType("TEXT"); + b.Property("Revision") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("SeenDevices"); - }); + b.ToTable("SeenDevices"); + }); modelBuilder.Entity("Aaru.Database.Models.Filesystem", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Filesystems"); - }); + b.ToTable("Filesystems"); + }); modelBuilder.Entity("Aaru.Database.Models.Filter", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Filters"); - }); + b.ToTable("Filters"); + }); modelBuilder.Entity("Aaru.Database.Models.Media", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Real").HasColumnType("INTEGER"); + b.Property("Real") + .HasColumnType("INTEGER"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.Property("Type").HasColumnType("TEXT"); + b.Property("Type") + .HasColumnType("TEXT"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Medias"); - }); + b.ToTable("Medias"); + }); modelBuilder.Entity("Aaru.Database.Models.MediaFormat", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("MediaFormats"); - }); + b.ToTable("MediaFormats"); + }); + + modelBuilder.Entity("Aaru.Database.Models.NesHeaderInfo", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); + + b.Property("AddedWhen") + .HasColumnType("TEXT"); + + b.Property("BatteryPresent") + .HasColumnType("INTEGER"); + + b.Property("ConsoleType") + .HasColumnType("INTEGER"); + + b.Property("DefaultExpansionDevice") + .HasColumnType("INTEGER"); + + b.Property("ExtendedConsoleType") + .HasColumnType("INTEGER"); + + b.Property("FourScreenMode") + .HasColumnType("INTEGER"); + + b.Property("Mapper") + .HasColumnType("INTEGER"); + + b.Property("ModifiedWhen") + .HasColumnType("TEXT"); + + b.Property("NametableMirroring") + .HasColumnType("INTEGER"); + + b.Property("Sha256") + .HasMaxLength(32) + .HasColumnType("TEXT"); + + b.Property("Submapper") + .HasColumnType("INTEGER"); + + b.Property("TimingMode") + .HasColumnType("INTEGER"); + + b.Property("VsHardwareType") + .HasColumnType("INTEGER"); + + b.Property("VsPpuType") + .HasColumnType("INTEGER"); + + b.HasKey("Id"); + + b.HasIndex("ModifiedWhen"); + + b.HasIndex("Sha256"); + + b.ToTable("NesHeaders"); + }); modelBuilder.Entity("Aaru.Database.Models.OperatingSystem", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.Property("Version").HasColumnType("TEXT"); + b.Property("Version") + .HasColumnType("TEXT"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("OperatingSystems"); - }); + b.ToTable("OperatingSystems"); + }); modelBuilder.Entity("Aaru.Database.Models.Partition", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Partitions"); - }); + b.ToTable("Partitions"); + }); modelBuilder.Entity("Aaru.Database.Models.RemoteApplication", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.Property("Version").HasColumnType("TEXT"); + b.Property("Version") + .HasColumnType("TEXT"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("RemoteApplications"); - }); + b.ToTable("RemoteApplications"); + }); modelBuilder.Entity("Aaru.Database.Models.RemoteArchitecture", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("RemoteArchitectures"); - }); + b.ToTable("RemoteArchitectures"); + }); modelBuilder.Entity("Aaru.Database.Models.RemoteOperatingSystem", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.Property("Version").HasColumnType("TEXT"); + b.Property("Version") + .HasColumnType("TEXT"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("RemoteOperatingSystems"); - }); + b.ToTable("RemoteOperatingSystems"); + }); modelBuilder.Entity("Aaru.Database.Models.Report", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("ATAId").HasColumnType("INTEGER"); + b.Property("ATAId") + .HasColumnType("INTEGER"); - b.Property("ATAPIId").HasColumnType("INTEGER"); + b.Property("ATAPIId") + .HasColumnType("INTEGER"); - b.Property("CompactFlash").HasColumnType("INTEGER"); + b.Property("CompactFlash") + .HasColumnType("INTEGER"); - b.Property("Created").HasColumnType("TEXT"); + b.Property("Created") + .HasColumnType("TEXT"); - b.Property("FireWireId").HasColumnType("INTEGER"); + b.Property("FireWireId") + .HasColumnType("INTEGER"); - b.Property("GdRomSwapDiscCapabilitiesId").HasColumnType("INTEGER"); + b.Property("GdRomSwapDiscCapabilitiesId") + .HasColumnType("INTEGER"); - b.Property("Manufacturer").HasColumnType("TEXT"); + b.Property("Manufacturer") + .HasColumnType("TEXT"); - b.Property("Model").HasColumnType("TEXT"); + b.Property("Model") + .HasColumnType("TEXT"); - b.Property("MultiMediaCardId").HasColumnType("INTEGER"); + b.Property("MultiMediaCardId") + .HasColumnType("INTEGER"); - b.Property("PCMCIAId").HasColumnType("INTEGER"); + b.Property("PCMCIAId") + .HasColumnType("INTEGER"); - b.Property("Revision").HasColumnType("TEXT"); + b.Property("Revision") + .HasColumnType("TEXT"); - b.Property("SCSIId").HasColumnType("INTEGER"); + b.Property("SCSIId") + .HasColumnType("INTEGER"); - b.Property("SecureDigitalId").HasColumnType("INTEGER"); + b.Property("SecureDigitalId") + .HasColumnType("INTEGER"); - b.Property("Type").HasColumnType("INTEGER"); + b.Property("Type") + .HasColumnType("INTEGER"); - b.Property("USBId").HasColumnType("INTEGER"); + b.Property("USBId") + .HasColumnType("INTEGER"); - b.Property("Uploaded").HasColumnType("INTEGER"); + b.Property("Uploaded") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ATAId"); + b.HasIndex("ATAId"); - b.HasIndex("ATAPIId"); + b.HasIndex("ATAPIId"); - b.HasIndex("FireWireId"); + b.HasIndex("FireWireId"); - b.HasIndex("GdRomSwapDiscCapabilitiesId"); + b.HasIndex("GdRomSwapDiscCapabilitiesId"); - b.HasIndex("MultiMediaCardId"); + b.HasIndex("MultiMediaCardId"); - b.HasIndex("PCMCIAId"); + b.HasIndex("PCMCIAId"); - b.HasIndex("SCSIId"); + b.HasIndex("SCSIId"); - b.HasIndex("SecureDigitalId"); + b.HasIndex("SecureDigitalId"); - b.HasIndex("USBId"); + b.HasIndex("USBId"); - b.ToTable("Reports"); - }); + b.ToTable("Reports"); + }); modelBuilder.Entity("Aaru.Database.Models.UsbProduct", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("AddedWhen").HasColumnType("TEXT"); + b.Property("AddedWhen") + .HasColumnType("TEXT"); - b.Property("ModifiedWhen").HasColumnType("TEXT"); + b.Property("ModifiedWhen") + .HasColumnType("TEXT"); - b.Property("Product").HasColumnType("TEXT"); + b.Property("Product") + .HasColumnType("TEXT"); - b.Property("ProductId").HasColumnType("INTEGER"); + b.Property("ProductId") + .HasColumnType("INTEGER"); - b.Property("VendorId").HasColumnType("INTEGER"); + b.Property("VendorId") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ModifiedWhen"); + b.HasIndex("ModifiedWhen"); - b.HasIndex("ProductId"); + b.HasIndex("ProductId"); - b.HasIndex("VendorId"); + b.HasIndex("VendorId"); - b.ToTable("UsbProducts"); - }); + b.ToTable("UsbProducts"); + }); modelBuilder.Entity("Aaru.Database.Models.UsbVendor", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("AddedWhen").HasColumnType("TEXT"); + b.Property("AddedWhen") + .HasColumnType("TEXT"); - b.Property("ModifiedWhen").HasColumnType("TEXT"); + b.Property("ModifiedWhen") + .HasColumnType("TEXT"); - b.Property("Vendor").HasColumnType("TEXT"); + b.Property("Vendor") + .HasColumnType("TEXT"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ModifiedWhen"); + b.HasIndex("ModifiedWhen"); - b.ToTable("UsbVendors"); - }); + b.ToTable("UsbVendors"); + }); modelBuilder.Entity("Aaru.Database.Models.Version", b => - { - b.Property("Id").ValueGeneratedOnAdd().HasColumnType("INTEGER"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("INTEGER"); - b.Property("Count").HasColumnType("INTEGER"); + b.Property("Count") + .HasColumnType("INTEGER"); - b.Property("Name").HasColumnType("TEXT"); + b.Property("Name") + .HasColumnType("TEXT"); - b.Property("Synchronized").HasColumnType("INTEGER"); + b.Property("Synchronized") + .HasColumnType("INTEGER"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("Versions"); - }); + b.ToTable("Versions"); + }); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", - b => b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities").WithMany(). - HasForeignKey("ReadCapabilitiesId").OnDelete(DeleteBehavior.SetNull)); + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities") + .WithMany() + .HasForeignKey("ReadCapabilitiesId") + .OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.BlockDescriptor", - b => b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null).WithMany("BlockDescriptors"). - HasForeignKey("ScsiModeId").OnDelete(DeleteBehavior.Cascade)); + b.Navigation("ReadCapabilities"); + }); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.DensityCode", - b => b.HasOne("Aaru.CommonTypes.Metadata.SscSupportedMedia", null). - WithMany("DensityCodes").HasForeignKey("SscSupportedMediaId"). - OnDelete(DeleteBehavior.Cascade)); + modelBuilder.Entity("Aaru.CommonTypes.Metadata.BlockDescriptor", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null) + .WithMany("BlockDescriptors") + .HasForeignKey("ScsiModeId") + .OnDelete(DeleteBehavior.Cascade); + }); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", - b => b.HasOne("Aaru.CommonTypes.Metadata.MmcFeatures", "Features").WithMany(). - HasForeignKey("FeaturesId").OnDelete(DeleteBehavior.SetNull)); + modelBuilder.Entity("Aaru.CommonTypes.Metadata.DensityCode", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.SscSupportedMedia", null) + .WithMany("DensityCodes") + .HasForeignKey("SscSupportedMediaId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.MmcFeatures", "Features") + .WithMany() + .HasForeignKey("FeaturesId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("Features"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.Scsi", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", "ModeSense").WithMany().HasForeignKey("ModeSenseId"). - OnDelete(DeleteBehavior.SetNull); + { + b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", "ModeSense") + .WithMany() + .HasForeignKey("ModeSenseId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Mmc", "MultiMediaDevice").WithMany(). - HasForeignKey("MultiMediaDeviceId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Mmc", "MultiMediaDevice") + .WithMany() + .HasForeignKey("MultiMediaDeviceId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities").WithMany(). - HasForeignKey("ReadCapabilitiesId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.TestedMedia", "ReadCapabilities") + .WithMany() + .HasForeignKey("ReadCapabilitiesId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Ssc", "SequentialDevice").WithMany(). - HasForeignKey("SequentialDeviceId").OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", "SequentialDevice") + .WithMany() + .HasForeignKey("SequentialDeviceId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("ModeSense"); + + b.Navigation("MultiMediaDevice"); + + b.Navigation("ReadCapabilities"); + + b.Navigation("SequentialDevice"); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiPage", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null).WithMany("EVPDPages").HasForeignKey("ScsiId"). - OnDelete(DeleteBehavior.SetNull); + { + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null) + .WithMany("EVPDPages") + .HasForeignKey("ScsiId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null).WithMany("ModePages").HasForeignKey("ScsiModeId"). - OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.ScsiMode", null) + .WithMany("ModePages") + .HasForeignKey("ScsiModeId") + .OnDelete(DeleteBehavior.SetNull); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.SscSupportedMedia", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("SupportedMediaTypes").HasForeignKey("SscId"). - OnDelete(DeleteBehavior.SetNull); + { + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null) + .WithMany("SupportedMediaTypes") + .HasForeignKey("SscId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null).WithMany("SupportedMediaTypes"). - HasForeignKey("TestedSequentialMediaId").OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null) + .WithMany("SupportedMediaTypes") + .HasForeignKey("TestedSequentialMediaId") + .OnDelete(DeleteBehavior.SetNull); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.SupportedDensity", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("SupportedDensities").HasForeignKey("SscId"). - OnDelete(DeleteBehavior.Cascade); + { + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null) + .WithMany("SupportedDensities") + .HasForeignKey("SscId") + .OnDelete(DeleteBehavior.Cascade); - b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null).WithMany("SupportedDensities"). - HasForeignKey("TestedSequentialMediaId").OnDelete(DeleteBehavior.Cascade); - }); + b.HasOne("Aaru.CommonTypes.Metadata.TestedSequentialMedia", null) + .WithMany("SupportedDensities") + .HasForeignKey("TestedSequentialMediaId") + .OnDelete(DeleteBehavior.Cascade); + }); modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedMedia", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ata", null).WithMany("RemovableMedias").HasForeignKey("AtaId"). - OnDelete(DeleteBehavior.SetNull); + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", null) + .WithMany("RemovableMedias") + .HasForeignKey("AtaId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CHS").WithMany().HasForeignKey("CHSId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CHS") + .WithMany() + .HasForeignKey("CHSId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CurrentCHS").WithMany().HasForeignKey("CurrentCHSId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Chs", "CurrentCHS") + .WithMany() + .HasForeignKey("CurrentCHSId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Mmc", null).WithMany("TestedMedia").HasForeignKey("MmcId"). - OnDelete(DeleteBehavior.Cascade); + b.HasOne("Aaru.CommonTypes.Metadata.Mmc", null) + .WithMany("TestedMedia") + .HasForeignKey("MmcId") + .OnDelete(DeleteBehavior.Cascade); - b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null).WithMany("RemovableMedias").HasForeignKey("ScsiId"). - OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", null) + .WithMany("RemovableMedias") + .HasForeignKey("ScsiId") + .OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", - b => b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null).WithMany("TestedMedia"). - HasForeignKey("SscId").OnDelete(DeleteBehavior.SetNull)); + b.Navigation("CHS"); + + b.Navigation("CurrentCHS"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", b => + { + b.HasOne("Aaru.CommonTypes.Metadata.Ssc", null) + .WithMany("TestedMedia") + .HasForeignKey("SscId") + .OnDelete(DeleteBehavior.SetNull); + }); modelBuilder.Entity("Aaru.Database.Models.Device", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA").WithMany().HasForeignKey("ATAId"). - OnDelete(DeleteBehavior.SetNull); + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA") + .WithMany() + .HasForeignKey("ATAId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI").WithMany().HasForeignKey("ATAPIId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI") + .WithMany() + .HasForeignKey("ATAPIId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire").WithMany().HasForeignKey("FireWireId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire") + .WithMany() + .HasForeignKey("FireWireId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.GdRomSwapDiscCapabilities", "GdRomSwapDiscCapabilities").WithMany(). - HasForeignKey("GdRomSwapDiscCapabilitiesId"); + b.HasOne("Aaru.CommonTypes.Metadata.GdRomSwapDiscCapabilities", "GdRomSwapDiscCapabilities") + .WithMany() + .HasForeignKey("GdRomSwapDiscCapabilitiesId"); - b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard").WithMany(). - HasForeignKey("MultiMediaCardId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard") + .WithMany() + .HasForeignKey("MultiMediaCardId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA").WithMany().HasForeignKey("PCMCIAId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA") + .WithMany() + .HasForeignKey("PCMCIAId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI").WithMany().HasForeignKey("SCSIId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI") + .WithMany() + .HasForeignKey("SCSIId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital").WithMany(). - HasForeignKey("SecureDigitalId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital") + .WithMany() + .HasForeignKey("SecureDigitalId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB").WithMany().HasForeignKey("USBId"). - OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB") + .WithMany() + .HasForeignKey("USBId") + .OnDelete(DeleteBehavior.SetNull); + + b.Navigation("ATA"); + + b.Navigation("ATAPI"); + + b.Navigation("FireWire"); + + b.Navigation("GdRomSwapDiscCapabilities"); + + b.Navigation("MultiMediaCard"); + + b.Navigation("PCMCIA"); + + b.Navigation("SCSI"); + + b.Navigation("SecureDigital"); + + b.Navigation("USB"); + }); modelBuilder.Entity("Aaru.Database.Models.Report", b => - { - b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA").WithMany().HasForeignKey("ATAId"). - OnDelete(DeleteBehavior.SetNull); + { + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATA") + .WithMany() + .HasForeignKey("ATAId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI").WithMany().HasForeignKey("ATAPIId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Ata", "ATAPI") + .WithMany() + .HasForeignKey("ATAPIId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire").WithMany().HasForeignKey("FireWireId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.FireWire", "FireWire") + .WithMany() + .HasForeignKey("FireWireId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.GdRomSwapDiscCapabilities", "GdRomSwapDiscCapabilities").WithMany(). - HasForeignKey("GdRomSwapDiscCapabilitiesId"); + b.HasOne("Aaru.CommonTypes.Metadata.GdRomSwapDiscCapabilities", "GdRomSwapDiscCapabilities") + .WithMany() + .HasForeignKey("GdRomSwapDiscCapabilitiesId"); - b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard").WithMany(). - HasForeignKey("MultiMediaCardId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "MultiMediaCard") + .WithMany() + .HasForeignKey("MultiMediaCardId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA").WithMany().HasForeignKey("PCMCIAId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Pcmcia", "PCMCIA") + .WithMany() + .HasForeignKey("PCMCIAId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI").WithMany().HasForeignKey("SCSIId"). - OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.Scsi", "SCSI") + .WithMany() + .HasForeignKey("SCSIId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital").WithMany(). - HasForeignKey("SecureDigitalId").OnDelete(DeleteBehavior.SetNull); + b.HasOne("Aaru.CommonTypes.Metadata.MmcSd", "SecureDigital") + .WithMany() + .HasForeignKey("SecureDigitalId") + .OnDelete(DeleteBehavior.SetNull); - b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB").WithMany().HasForeignKey("USBId"). - OnDelete(DeleteBehavior.SetNull); - }); + b.HasOne("Aaru.CommonTypes.Metadata.Usb", "USB") + .WithMany() + .HasForeignKey("USBId") + .OnDelete(DeleteBehavior.SetNull); - modelBuilder.Entity("Aaru.Database.Models.UsbProduct", - b => b.HasOne("Aaru.Database.Models.UsbVendor", "Vendor").WithMany("Products"). - HasForeignKey("VendorId").OnDelete(DeleteBehavior.Cascade).IsRequired()); - #pragma warning restore 612, 618 + b.Navigation("ATA"); + + b.Navigation("ATAPI"); + + b.Navigation("FireWire"); + + b.Navigation("GdRomSwapDiscCapabilities"); + + b.Navigation("MultiMediaCard"); + + b.Navigation("PCMCIA"); + + b.Navigation("SCSI"); + + b.Navigation("SecureDigital"); + + b.Navigation("USB"); + }); + + modelBuilder.Entity("Aaru.Database.Models.UsbProduct", b => + { + b.HasOne("Aaru.Database.Models.UsbVendor", "Vendor") + .WithMany("Products") + .HasForeignKey("VendorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Vendor"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ata", b => + { + b.Navigation("RemovableMedias"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Mmc", b => + { + b.Navigation("TestedMedia"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Scsi", b => + { + b.Navigation("EVPDPages"); + + b.Navigation("RemovableMedias"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.ScsiMode", b => + { + b.Navigation("BlockDescriptors"); + + b.Navigation("ModePages"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.Ssc", b => + { + b.Navigation("SupportedDensities"); + + b.Navigation("SupportedMediaTypes"); + + b.Navigation("TestedMedia"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.SscSupportedMedia", b => + { + b.Navigation("DensityCodes"); + }); + + modelBuilder.Entity("Aaru.CommonTypes.Metadata.TestedSequentialMedia", b => + { + b.Navigation("SupportedDensities"); + + b.Navigation("SupportedMediaTypes"); + }); + + modelBuilder.Entity("Aaru.Database.Models.UsbVendor", b => + { + b.Navigation("Products"); + }); +#pragma warning restore 612, 618 } } -} \ No newline at end of file +} diff --git a/Aaru.Database/Models/NesHeaderInfo.cs b/Aaru.Database/Models/NesHeaderInfo.cs new file mode 100644 index 000000000..9c90dcdb1 --- /dev/null +++ b/Aaru.Database/Models/NesHeaderInfo.cs @@ -0,0 +1,39 @@ +using System; +using System.ComponentModel.DataAnnotations; +using Aaru.CommonTypes.Enums; + +namespace Aaru.Database.Models; + +/// Information needed to rebuild an iNES/NES 2.0 header from a ROM hash +public class NesHeaderInfo : BaseModel +{ + /// ROM hash + [StringLength(32)] + public string Sha256 { get; set; } + /// If true vertical mirroring is hard-wired, horizontal or mapper defined otherwise + public bool NametableMirroring { get; set; } + /// If true a battery is present + public bool BatteryPresent { get; set; } + /// If true the four player screen mode is hardwired + public bool FourScreenMode { get; set; } + /// Mapper number (NES 2.0 when in conflict) + public ushort Mapper { get; set; } + /// Console type + public NesConsoleType ConsoleType { get; set; } + /// Submapper number + public byte Submapper { get; set; } + /// Timing mode + public NesTimingMode TimingMode { get; set; } + /// Vs. PPU type + public NesVsPpuType VsPpuType { get; set; } + /// Vs. hardware type + public NesVsHardwareType VsHardwareType { get; set; } + /// Extended console type + public NesExtendedConsoleType ExtendedConsoleType { get; set; } + /// Default expansion device + public NesDefaultExpansionDevice DefaultExpansionDevice { get; set; } + /// Date when model has been added to the database + public DateTime AddedWhen { get; set; } + /// Date when model was last modified + public DateTime ModifiedWhen { get; set; } +} \ No newline at end of file diff --git a/Aaru.Dto b/Aaru.Dto index 09a8b3bb5..2152a6dea 160000 --- a/Aaru.Dto +++ b/Aaru.Dto @@ -1 +1 @@ -Subproject commit 09a8b3bb5d7e79e9720f3b3701b97f978115e620 +Subproject commit 2152a6deab8f7ecab2b39ccb3c43afbdecf9380d diff --git a/Aaru.Images/Aaru.Images.csproj b/Aaru.Images/Aaru.Images.csproj index 3ef2de799..544fbc6cd 100644 --- a/Aaru.Images/Aaru.Images.csproj +++ b/Aaru.Images/Aaru.Images.csproj @@ -143,6 +143,7 @@ + diff --git a/Aaru.Images/ByteAddressable/NES.cs b/Aaru.Images/ByteAddressable/NES.cs new file mode 100644 index 000000000..ddef457f9 --- /dev/null +++ b/Aaru.Images/ByteAddressable/NES.cs @@ -0,0 +1,107 @@ +using System; +using System.Collections.Generic; +using Aaru.CommonTypes; +using Aaru.CommonTypes.Enums; +using Aaru.CommonTypes.Interfaces; +using Aaru.CommonTypes.Structs; +using Schemas; + +namespace Aaru.DiscImages.ByteAddressable; + +public class NES :IByteAddressableImage +{ + /// + public string Author { get; } + /// + public CICMMetadataType CicmMetadata { get; } + /// + public List DumpHardware { get; } + /// + public string Format { get; } + /// + public Guid Id { get; } + /// + public ImageInfo Info { get; } + /// + public string Name { get; } + + /// + public bool Identify(IFilter imageFilter) => throw new NotImplementedException(); + + /// + public ErrorNumber Open(IFilter imageFilter) => throw new NotImplementedException(); + + /// + public string ErrorMessage { get; } + /// + public bool IsWriting { get; } + /// + public IEnumerable KnownExtensions { get; } + /// + public IEnumerable SupportedMediaTags { get; } + /// + public IEnumerable SupportedMediaTypes { get; } + /// + public IEnumerable<(string name, Type type, string description, object @default)> SupportedOptions { get; } + /// + public IEnumerable SupportedSectorTags { get; } + + /// + public bool Create(string path, MediaType mediaType, Dictionary options, ulong sectors, uint sectorSize) => throw new NotImplementedException(); + + /// + public bool Close() => throw new NotImplementedException(); + + /// + public bool SetCicmMetadata(CICMMetadataType metadata) => throw new NotImplementedException(); + + /// + public bool SetDumpHardware(List dumpHardware) => throw new NotImplementedException(); + + /// + public bool SetMetadata(ImageInfo metadata) => throw new NotImplementedException(); + + /// + public long Position { get; set; } + + /// + public ErrorNumber Create(string path, MediaType mediaType, Dictionary options, long maximumSize) => throw new NotImplementedException(); + + /// + public ErrorNumber GetHeader(out byte[] header) => throw new NotImplementedException(); + + /// + public ErrorNumber GetMappings(out LinearMemoryMap mappings) => throw new NotImplementedException(); + + /// + public ErrorNumber ReadByte(out byte b, bool advance = true) => throw new NotImplementedException(); + + /// + public ErrorNumber ReadByteAt(long position, out byte b, bool advance = true) => throw new NotImplementedException(); + + /// + public ErrorNumber ReadBytes(byte[] buffer, int offset, int bytesToRead, out int bytesRead, bool advance = true) => throw new NotImplementedException(); + + /// + public ErrorNumber ReadBytesAt(long position, byte[] buffer, int offset, int bytesToRead, out int bytesRead, + bool advance = true) => throw new NotImplementedException(); + + /// + public ErrorNumber SetHeader(byte[] header) => throw new NotImplementedException(); + + /// + public ErrorNumber SetMappings(LinearMemoryMap mappings) => throw new NotImplementedException(); + + /// + public ErrorNumber WriteByte(byte b, bool advance = true) => throw new NotImplementedException(); + + /// + public ErrorNumber WriteByteAt(long position, byte b, bool advance = true) => throw new NotImplementedException(); + + /// + public ErrorNumber WriteBytes(byte[] buffer, int offset, int bytesToWrite, out int bytesWritten, bool advance = true) => throw new NotImplementedException(); + + /// + public ErrorNumber WriteBytesAt(long position, byte[] buffer, int offset, int bytesToWrite, out int bytesWritten, + bool advance = true) => throw new NotImplementedException(); +} \ No newline at end of file