Refactor.

This commit is contained in:
2019-11-02 21:37:09 +00:00
parent f653af2059
commit d4020f1a3f
52 changed files with 4207 additions and 4095 deletions

View File

@@ -32,38 +32,39 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using DiscImageChef.CommonTypes.Metadata;
namespace DiscImageChef.Server.Models
{
public class CompactDiscOffset : CdOffset
{
public CompactDiscOffset() { }
public CompactDiscOffset()
{
}
public CompactDiscOffset(string manufacturer, string model, short offset, int submissions, float agreement)
{
Manufacturer = manufacturer;
Model = model;
Offset = offset;
Submissions = submissions;
Agreement = agreement;
AddedWhen = ModifiedWhen = DateTime.UtcNow;
Model = model;
Offset = offset;
Submissions = submissions;
Agreement = agreement;
AddedWhen = ModifiedWhen = DateTime.UtcNow;
}
public CompactDiscOffset(CdOffset offset)
{
Manufacturer = offset.Manufacturer;
Model = offset.Model;
Offset = offset.Offset;
Submissions = offset.Submissions;
Agreement = offset.Agreement;
AddedWhen = ModifiedWhen = DateTime.UtcNow;
Model = offset.Model;
Offset = offset.Offset;
Submissions = offset.Submissions;
Agreement = offset.Agreement;
AddedWhen = ModifiedWhen = DateTime.UtcNow;
}
public int Id { get; set; }
public int Id { get; set; }
public DateTime AddedWhen { get; set; }
public DateTime ModifiedWhen { get; set; }
public DateTime ModifiedWhen { get; set; }
public virtual ICollection<Device> Devices { get; set; }
}
}

View File

@@ -36,9 +36,9 @@ namespace DiscImageChef.Server.Models
{
public class Command
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
[Key] public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
}
}

View File

@@ -37,28 +37,32 @@ namespace DiscImageChef.Server.Models
{
public sealed class DicServerContext : DbContext
{
public DbSet<Device> Devices { get; set; }
public DbSet<UploadedReport> Reports { get; set; }
public DbSet<Command> Commands { get; set; }
public DbSet<DeviceStat> DeviceStats { get; set; }
public DbSet<Filesystem> Filesystems { get; set; }
public DbSet<Filter> Filters { get; set; }
public DbSet<Media> Medias { get; set; }
public DbSet<MediaFormat> MediaFormats { get; set; }
public DbSet<OperatingSystem> OperatingSystems { get; set; }
public DbSet<Partition> Partitions { get; set; }
public DbSet<Version> Versions { get; set; }
public DbSet<UsbVendor> UsbVendors { get; set; }
public DbSet<UsbProduct> UsbProducts { get; set; }
public DbSet<CompactDiscOffset> CdOffsets { get; set; }
public DicServerContext()
{
}
public DicServerContext() { }
public DicServerContext(DbContextOptions<DicServerContext> options) : base(options)
{
}
public DicServerContext(DbContextOptions<DicServerContext> options) : base(options) { }
public DbSet<Device> Devices { get; set; }
public DbSet<UploadedReport> Reports { get; set; }
public DbSet<Command> Commands { get; set; }
public DbSet<DeviceStat> DeviceStats { get; set; }
public DbSet<Filesystem> Filesystems { get; set; }
public DbSet<Filter> Filters { get; set; }
public DbSet<Media> Medias { get; set; }
public DbSet<MediaFormat> MediaFormats { get; set; }
public DbSet<OperatingSystem> OperatingSystems { get; set; }
public DbSet<Partition> Partitions { get; set; }
public DbSet<Version> Versions { get; set; }
public DbSet<UsbVendor> UsbVendors { get; set; }
public DbSet<UsbProduct> UsbProducts { get; set; }
public DbSet<CompactDiscOffset> CdOffsets { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
if(optionsBuilder.IsConfigured) return;
if (optionsBuilder.IsConfigured) return;
var builder = new ConfigurationBuilder().AddJsonFile("appsettings.json");
@@ -82,7 +86,7 @@ namespace DiscImageChef.Server.Models
internal static bool TableExists(string tableName)
{
using(var db = new DicServerContext())
using (var db = new DicServerContext())
{
var connection = db.Database.GetDbConnection();
connection.Open();
@@ -91,7 +95,7 @@ namespace DiscImageChef.Server.Models
command.CommandText =
$"SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME=\"{tableName}\"";
var result = (long)command.ExecuteScalar();
var result = (long) command.ExecuteScalar();
return result != 0;
}

View File

@@ -32,7 +32,6 @@
using System;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations.Schema;
using DiscImageChef.CommonTypes.Metadata;
namespace DiscImageChef.Server.Models
@@ -46,27 +45,27 @@ namespace DiscImageChef.Server.Models
public Device(DeviceReportV2 report)
{
ATA = report.ATA;
ATAPI = report.ATAPI;
CompactFlash = report.CompactFlash;
FireWire = report.FireWire;
AddedWhen = DateTime.UtcNow;
ModifiedWhen = DateTime.UtcNow;
ATA = report.ATA;
ATAPI = report.ATAPI;
CompactFlash = report.CompactFlash;
FireWire = report.FireWire;
AddedWhen = DateTime.UtcNow;
ModifiedWhen = DateTime.UtcNow;
MultiMediaCard = report.MultiMediaCard;
PCMCIA = report.PCMCIA;
SCSI = report.SCSI;
SecureDigital = report.SecureDigital;
USB = report.USB;
Manufacturer = report.Manufacturer;
Model = report.Model;
Revision = report.Revision;
Type = report.Type;
PCMCIA = report.PCMCIA;
SCSI = report.SCSI;
SecureDigital = report.SecureDigital;
USB = report.USB;
Manufacturer = report.Manufacturer;
Model = report.Model;
Revision = report.Revision;
Type = report.Type;
}
public DateTime AddedWhen { get; set; }
public DateTime? ModifiedWhen { get; set; }
public DateTime? ModifiedWhen { get; set; }
public virtual CompactDiscOffset CdOffset { get; set; }
[DefaultValue(0)]
public int OptimalMultipleSectorsRead { get; set; }
[DefaultValue(0)] public int OptimalMultipleSectorsRead { get; set; }
}
}

View File

@@ -35,9 +35,9 @@ namespace DiscImageChef.Server.Models
public class DeviceItem
{
public string Manufacturer { get; set; }
public string Model { get; set; }
public string Revision { get; set; }
public string Bus { get; set; }
public int ReportId { get; set; }
public string Model { get; set; }
public string Revision { get; set; }
public string Bus { get; set; }
public int ReportId { get; set; }
}
}

View File

@@ -36,12 +36,12 @@ namespace DiscImageChef.Server.Models
{
public class DeviceStat
{
[Key]
public int Id { get; set; }
public string Manufacturer { get; set; }
public string Model { get; set; }
public string Revision { get; set; }
public string Bus { get; set; }
public virtual Device Report { get; set; }
[Key] public int Id { get; set; }
public string Manufacturer { get; set; }
public string Model { get; set; }
public string Revision { get; set; }
public string Bus { get; set; }
public virtual Device Report { get; set; }
}
}

View File

@@ -1,5 +1,3 @@
using System;
namespace DiscImageChef.Server.Models
{
public class ErrorViewModel

View File

@@ -36,9 +36,9 @@ namespace DiscImageChef.Server.Models
{
public class Filesystem
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
[Key] public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
}
}

View File

@@ -36,9 +36,9 @@ namespace DiscImageChef.Server.Models
{
public class Filter
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
[Key] public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
}
}

View File

@@ -36,10 +36,10 @@ namespace DiscImageChef.Server.Models
{
public class Media
{
[Key]
public int Id { get; set; }
public string Type { get; set; }
public bool Real { get; set; }
public long Count { get; set; }
[Key] public int Id { get; set; }
public string Type { get; set; }
public bool Real { get; set; }
public long Count { get; set; }
}
}

View File

@@ -36,9 +36,9 @@ namespace DiscImageChef.Server.Models
{
public class MediaFormat
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
[Key] public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
}
}

View File

@@ -34,8 +34,8 @@ namespace DiscImageChef.Server.Models
{
public class MediaItem
{
public string Type { get; set; }
public string Type { get; set; }
public string SubType { get; set; }
public long Count { get; set; }
public long Count { get; set; }
}
}

View File

@@ -36,10 +36,10 @@ namespace DiscImageChef.Server.Models
{
public class OperatingSystem
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
[Key] public int Id { get; set; }
public string Name { get; set; }
public string Version { get; set; }
public long Count { get; set; }
public long Count { get; set; }
}
}

View File

@@ -36,9 +36,9 @@ namespace DiscImageChef.Server.Models
{
public class Partition
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
[Key] public int Id { get; set; }
public string Name { get; set; }
public long Count { get; set; }
}
}

View File

@@ -44,20 +44,20 @@ namespace DiscImageChef.Server.Models
public UploadedReport(DeviceReportV2 report)
{
ATA = report.ATA;
ATAPI = report.ATAPI;
CompactFlash = report.CompactFlash;
FireWire = report.FireWire;
UploadedWhen = DateTime.UtcNow;
ATA = report.ATA;
ATAPI = report.ATAPI;
CompactFlash = report.CompactFlash;
FireWire = report.FireWire;
UploadedWhen = DateTime.UtcNow;
MultiMediaCard = report.MultiMediaCard;
PCMCIA = report.PCMCIA;
SCSI = report.SCSI;
SecureDigital = report.SecureDigital;
USB = report.USB;
Manufacturer = report.Manufacturer;
Model = report.Model;
Revision = report.Revision;
Type = report.Type;
PCMCIA = report.PCMCIA;
SCSI = report.SCSI;
SecureDigital = report.SecureDigital;
USB = report.USB;
Manufacturer = report.Manufacturer;
Model = report.Model;
Revision = report.Revision;
Type = report.Type;
}
public DateTime UploadedWhen { get; set; }

View File

@@ -32,31 +32,32 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Newtonsoft.Json;
namespace DiscImageChef.Server.Models
{
public class UsbProduct
{
public UsbProduct() { }
public UsbProduct()
{
}
public UsbProduct(UsbVendor vendor, ushort id, string product)
{
ProductId = id;
Product = product;
Product = product;
AddedWhen = ModifiedWhen = DateTime.UtcNow;
Vendor = vendor;
Vendor = vendor;
}
[Key]
public int Id { get; set; }
public int ProductId { get; set; }
public string Product { get; set; }
[Key] public int Id { get; set; }
public int ProductId { get; set; }
public string Product { get; set; }
public DateTime AddedWhen { get; set; }
public DateTime ModifiedWhen { get; set; }
public int VendorId { get; set; }
[JsonIgnore]
public virtual UsbVendor Vendor { get; set; }
[JsonIgnore] public virtual UsbVendor Vendor { get; set; }
}
}

View File

@@ -33,30 +33,30 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Newtonsoft.Json;
namespace DiscImageChef.Server.Models
{
public class UsbVendor
{
public UsbVendor() { }
public UsbVendor()
{
}
public UsbVendor(ushort id, string vendor)
{
VendorId = id;
Vendor = vendor;
VendorId = id;
Vendor = vendor;
AddedWhen = ModifiedWhen = DateTime.UtcNow;
}
[Key]
public int Id { get; set; }
public int VendorId { get; set; }
public string Vendor { get; set; }
[Key] public int Id { get; set; }
public int VendorId { get; set; }
public string Vendor { get; set; }
public DateTime AddedWhen { get; set; }
public DateTime ModifiedWhen { get; set; }
[JsonIgnore]
public virtual ICollection<UsbProduct> Products { get; set; }
[JsonIgnore] public virtual ICollection<UsbProduct> Products { get; set; }
}
}

View File

@@ -36,9 +36,9 @@ namespace DiscImageChef.Server.Models
{
public class Version
{
[Key]
public int Id { get; set; }
[Key] public int Id { get; set; }
public string Value { get; set; }
public long Count { get; set; }
public long Count { get; set; }
}
}