mirror of
https://github.com/collinbarrett/FilterLists.git
synced 2026-03-11 09:04:27 +00:00
major db re-design
This commit is contained in:
parent
ca41064591
commit
a5523615f9
41 changed files with 872 additions and 2110 deletions
|
|
@ -1,473 +0,0 @@
|
|||
// <auto-generated />
|
||||
using FilterLists.Data;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage;
|
||||
using Microsoft.EntityFrameworkCore.Storage.Internal;
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Api.Migrations
|
||||
{
|
||||
[DbContext(typeof(FilterListsDbContext))]
|
||||
[Migration("20180118184938_InitialCreate")]
|
||||
partial class InitialCreate
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn)
|
||||
.HasAnnotation("ProductVersion", "2.0.1-rtm-125");
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("DescriptionSourceUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime?>("DiscontinuedDate");
|
||||
|
||||
b.Property<string>("DonateUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("ForumUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("IssuesUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int?>("LicenseId");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("SubmissionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int?>("SyntaxId");
|
||||
|
||||
b.Property<string>("ViewUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("LicenseId");
|
||||
|
||||
b.HasIndex("SyntaxId");
|
||||
|
||||
b.ToTable("filterlists");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterListLanguage", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("LanguageId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "LanguageId");
|
||||
|
||||
b.HasIndex("LanguageId");
|
||||
|
||||
b.ToTable("filterlists_languages");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterListMaintainer", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("MaintainerId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "MaintainerId");
|
||||
|
||||
b.HasIndex("MaintainerId");
|
||||
|
||||
b.ToTable("filterlists_maintainers");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterListRule", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("RuleId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "RuleId");
|
||||
|
||||
b.HasIndex("RuleId");
|
||||
|
||||
b.ToTable("filterlists_rules");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Fork", b =>
|
||||
{
|
||||
b.Property<int>("ForkFilterListId");
|
||||
|
||||
b.Property<int>("UpstreamFilterListId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("ForkFilterListId", "UpstreamFilterListId");
|
||||
|
||||
b.HasIndex("UpstreamFilterListId");
|
||||
|
||||
b.ToTable("forks");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Language", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Iso6391")
|
||||
.HasColumnType("NVARCHAR(2)");
|
||||
|
||||
b.Property<string>("Iso6392")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6392B")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6392T")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6393")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("LocalName")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("languages");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.License", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("DescriptionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<bool>("PermissiveAdaptation");
|
||||
|
||||
b.Property<bool>("PermissiveCommercial");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("licenses");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Maintainer", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("TwitterHandle")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("maintainers");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Merge", b =>
|
||||
{
|
||||
b.Property<int>("MergeFilterListId");
|
||||
|
||||
b.Property<int>("UpstreamFilterListId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("MergeFilterListId", "UpstreamFilterListId");
|
||||
|
||||
b.HasIndex("UpstreamFilterListId");
|
||||
|
||||
b.ToTable("merges");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Rule", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Raw")
|
||||
.HasColumnType("NVARCHAR(2083)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("rules");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Software", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("DownloadUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("software");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.SoftwareSyntax", b =>
|
||||
{
|
||||
b.Property<int>("SoftwareId");
|
||||
|
||||
b.Property<int>("SyntaxId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("SoftwareId", "SyntaxId");
|
||||
|
||||
b.HasIndex("SyntaxId");
|
||||
|
||||
b.ToTable("software_syntaxes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Syntax", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("DefinitionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("syntaxes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.License")
|
||||
.WithMany("FilterLists")
|
||||
.HasForeignKey("LicenseId");
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Syntax")
|
||||
.WithMany("FilterLists")
|
||||
.HasForeignKey("SyntaxId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterListLanguage", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListLanguages")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Language", "Language")
|
||||
.WithMany("FilterListLanguages")
|
||||
.HasForeignKey("LanguageId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterListMaintainer", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListMaintainers")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Maintainer", "Maintainer")
|
||||
.WithMany("FilterListMaintainers")
|
||||
.HasForeignKey("MaintainerId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterListRule", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListRules")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Rule", "Rule")
|
||||
.WithMany("FilterListRules")
|
||||
.HasForeignKey("RuleId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Fork", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "ForkFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("ForkFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("UpstreamFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Merge", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "MergeFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("MergeFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("UpstreamFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.SoftwareSyntax", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.Software", "Software")
|
||||
.WithMany("SoftwareSyntaxes")
|
||||
.HasForeignKey("SoftwareId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Syntax", "Syntax")
|
||||
.WithMany("SoftwareSyntaxes")
|
||||
.HasForeignKey("SyntaxId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,389 +0,0 @@
|
|||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace FilterLists.Api.Migrations
|
||||
{
|
||||
public partial class InitialCreate : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
"languages",
|
||||
table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
Iso6391 = table.Column<string>("NVARCHAR(2)", nullable: true),
|
||||
Iso6392 = table.Column<string>("NVARCHAR(3)", nullable: true),
|
||||
Iso6392B = table.Column<string>("NVARCHAR(3)", nullable: true),
|
||||
Iso6392T = table.Column<string>("NVARCHAR(3)", nullable: true),
|
||||
Iso6393 = table.Column<string>("NVARCHAR(3)", nullable: true),
|
||||
LocalName = table.Column<string>("NVARCHAR(126)", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>("NVARCHAR(126)", nullable: true)
|
||||
},
|
||||
constraints: table => { table.PrimaryKey("PK_languages", x => x.Id); });
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"licenses",
|
||||
table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
DescriptionUrl = table.Column<string>("TEXT", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>("NVARCHAR(126)", nullable: false),
|
||||
PermissiveAdaptation = table.Column<bool>(nullable: false),
|
||||
PermissiveCommercial = table.Column<bool>(nullable: false)
|
||||
},
|
||||
constraints: table => { table.PrimaryKey("PK_licenses", x => x.Id); });
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"maintainers",
|
||||
table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
EmailAddress = table.Column<string>("NVARCHAR(126)", nullable: true),
|
||||
HomeUrl = table.Column<string>("TEXT", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>("NVARCHAR(126)", nullable: false),
|
||||
TwitterHandle = table.Column<string>("NVARCHAR(126)", nullable: true)
|
||||
},
|
||||
constraints: table => { table.PrimaryKey("PK_maintainers", x => x.Id); });
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"rules",
|
||||
table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false),
|
||||
Raw = table.Column<string>("NVARCHAR(2083)", nullable: true)
|
||||
},
|
||||
constraints: table => { table.PrimaryKey("PK_rules", x => x.Id); });
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"software",
|
||||
table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
DownloadUrl = table.Column<string>("TEXT", nullable: true),
|
||||
HomeUrl = table.Column<string>("TEXT", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>("NVARCHAR(126)", nullable: false)
|
||||
},
|
||||
constraints: table => { table.PrimaryKey("PK_software", x => x.Id); });
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"syntaxes",
|
||||
table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
DefinitionUrl = table.Column<string>("TEXT", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>("NVARCHAR(126)", nullable: false)
|
||||
},
|
||||
constraints: table => { table.PrimaryKey("PK_syntaxes", x => x.Id); });
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"filterlists",
|
||||
table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
Description = table.Column<string>("TEXT", nullable: true),
|
||||
DescriptionSourceUrl = table.Column<string>("TEXT", nullable: true),
|
||||
DiscontinuedDate = table.Column<DateTime>(nullable: true),
|
||||
DonateUrl = table.Column<string>("TEXT", nullable: true),
|
||||
EmailAddress = table.Column<string>("NVARCHAR(126)", nullable: true),
|
||||
ForumUrl = table.Column<string>("TEXT", nullable: true),
|
||||
HomeUrl = table.Column<string>("TEXT", nullable: true),
|
||||
IssuesUrl = table.Column<string>("TEXT", nullable: true),
|
||||
LicenseId = table.Column<int>(nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>("NVARCHAR(126)", nullable: false),
|
||||
SubmissionUrl = table.Column<string>("TEXT", nullable: true),
|
||||
SyntaxId = table.Column<int>(nullable: true),
|
||||
ViewUrl = table.Column<string>("TEXT", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_filterlists", x => x.Id);
|
||||
table.ForeignKey(
|
||||
"FK_filterlists_licenses_LicenseId",
|
||||
x => x.LicenseId,
|
||||
"licenses",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
table.ForeignKey(
|
||||
"FK_filterlists_syntaxes_SyntaxId",
|
||||
x => x.SyntaxId,
|
||||
"syntaxes",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"software_syntaxes",
|
||||
table => new
|
||||
{
|
||||
SoftwareId = table.Column<int>(nullable: false),
|
||||
SyntaxId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_software_syntaxes", x => new {x.SoftwareId, x.SyntaxId});
|
||||
table.ForeignKey(
|
||||
"FK_software_syntaxes_software_SoftwareId",
|
||||
x => x.SoftwareId,
|
||||
"software",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
"FK_software_syntaxes_syntaxes_SyntaxId",
|
||||
x => x.SyntaxId,
|
||||
"syntaxes",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"filterlists_languages",
|
||||
table => new
|
||||
{
|
||||
FilterListId = table.Column<int>(nullable: false),
|
||||
LanguageId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_filterlists_languages", x => new {x.FilterListId, x.LanguageId});
|
||||
table.ForeignKey(
|
||||
"FK_filterlists_languages_filterlists_FilterListId",
|
||||
x => x.FilterListId,
|
||||
"filterlists",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
"FK_filterlists_languages_languages_LanguageId",
|
||||
x => x.LanguageId,
|
||||
"languages",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"filterlists_maintainers",
|
||||
table => new
|
||||
{
|
||||
FilterListId = table.Column<int>(nullable: false),
|
||||
MaintainerId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_filterlists_maintainers", x => new {x.FilterListId, x.MaintainerId});
|
||||
table.ForeignKey(
|
||||
"FK_filterlists_maintainers_filterlists_FilterListId",
|
||||
x => x.FilterListId,
|
||||
"filterlists",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
"FK_filterlists_maintainers_maintainers_MaintainerId",
|
||||
x => x.MaintainerId,
|
||||
"maintainers",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"filterlists_rules",
|
||||
table => new
|
||||
{
|
||||
FilterListId = table.Column<int>(nullable: false),
|
||||
RuleId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_filterlists_rules", x => new {x.FilterListId, x.RuleId});
|
||||
table.ForeignKey(
|
||||
"FK_filterlists_rules_filterlists_FilterListId",
|
||||
x => x.FilterListId,
|
||||
"filterlists",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
"FK_filterlists_rules_rules_RuleId",
|
||||
x => x.RuleId,
|
||||
"rules",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"forks",
|
||||
table => new
|
||||
{
|
||||
ForkFilterListId = table.Column<int>(nullable: false),
|
||||
UpstreamFilterListId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_forks", x => new {x.ForkFilterListId, x.UpstreamFilterListId});
|
||||
table.ForeignKey(
|
||||
"FK_forks_filterlists_ForkFilterListId",
|
||||
x => x.ForkFilterListId,
|
||||
"filterlists",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
"FK_forks_filterlists_UpstreamFilterListId",
|
||||
x => x.UpstreamFilterListId,
|
||||
"filterlists",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
"merges",
|
||||
table => new
|
||||
{
|
||||
MergeFilterListId = table.Column<int>(nullable: false),
|
||||
UpstreamFilterListId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_merges", x => new {x.MergeFilterListId, x.UpstreamFilterListId});
|
||||
table.ForeignKey(
|
||||
"FK_merges_filterlists_MergeFilterListId",
|
||||
x => x.MergeFilterListId,
|
||||
"filterlists",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
"FK_merges_filterlists_UpstreamFilterListId",
|
||||
x => x.UpstreamFilterListId,
|
||||
"filterlists",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_filterlists_LicenseId",
|
||||
"filterlists",
|
||||
"LicenseId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_filterlists_SyntaxId",
|
||||
"filterlists",
|
||||
"SyntaxId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_filterlists_languages_LanguageId",
|
||||
"filterlists_languages",
|
||||
"LanguageId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_filterlists_maintainers_MaintainerId",
|
||||
"filterlists_maintainers",
|
||||
"MaintainerId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_filterlists_rules_RuleId",
|
||||
"filterlists_rules",
|
||||
"RuleId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_forks_UpstreamFilterListId",
|
||||
"forks",
|
||||
"UpstreamFilterListId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_merges_UpstreamFilterListId",
|
||||
"merges",
|
||||
"UpstreamFilterListId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_software_syntaxes_SyntaxId",
|
||||
"software_syntaxes",
|
||||
"SyntaxId");
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
"filterlists_languages");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"filterlists_maintainers");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"filterlists_rules");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"forks");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"merges");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"software_syntaxes");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"languages");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"maintainers");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"rules");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"filterlists");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"software");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"licenses");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
"syntaxes");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,507 +0,0 @@
|
|||
// <auto-generated />
|
||||
using FilterLists.Data;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage;
|
||||
using Microsoft.EntityFrameworkCore.Storage.Internal;
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Api.Migrations
|
||||
{
|
||||
[DbContext(typeof(FilterListsDbContext))]
|
||||
[Migration("20180126190529_addSnapshot")]
|
||||
partial class addSnapshot
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn)
|
||||
.HasAnnotation("ProductVersion", "2.0.1-rtm-125");
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("DescriptionSourceUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime?>("DiscontinuedDate");
|
||||
|
||||
b.Property<string>("DonateUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("ForumUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("IssuesUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int?>("LicenseId");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("SubmissionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int?>("SyntaxId");
|
||||
|
||||
b.Property<string>("ViewUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("LicenseId");
|
||||
|
||||
b.HasIndex("SyntaxId");
|
||||
|
||||
b.ToTable("filterlists");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListLanguage", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("LanguageId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "LanguageId");
|
||||
|
||||
b.HasIndex("LanguageId");
|
||||
|
||||
b.ToTable("filterlists_languages");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListMaintainer", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("MaintainerId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "MaintainerId");
|
||||
|
||||
b.HasIndex("MaintainerId");
|
||||
|
||||
b.ToTable("filterlists_maintainers");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListRule", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("RuleId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "RuleId");
|
||||
|
||||
b.HasIndex("RuleId");
|
||||
|
||||
b.ToTable("filterlists_rules");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Fork", b =>
|
||||
{
|
||||
b.Property<int>("ForkFilterListId");
|
||||
|
||||
b.Property<int>("UpstreamFilterListId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("ForkFilterListId", "UpstreamFilterListId");
|
||||
|
||||
b.HasIndex("UpstreamFilterListId");
|
||||
|
||||
b.ToTable("forks");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Merge", b =>
|
||||
{
|
||||
b.Property<int>("MergeFilterListId");
|
||||
|
||||
b.Property<int>("UpstreamFilterListId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("MergeFilterListId", "UpstreamFilterListId");
|
||||
|
||||
b.HasIndex("UpstreamFilterListId");
|
||||
|
||||
b.ToTable("merges");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.SoftwareSyntax", b =>
|
||||
{
|
||||
b.Property<int>("SoftwareId");
|
||||
|
||||
b.Property<int>("SyntaxId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("SoftwareId", "SyntaxId");
|
||||
|
||||
b.HasIndex("SyntaxId");
|
||||
|
||||
b.ToTable("software_syntaxes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Language", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Iso6391")
|
||||
.HasColumnType("NVARCHAR(2)");
|
||||
|
||||
b.Property<string>("Iso6392")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6392B")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6392T")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6393")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("LocalName")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("languages");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.License", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("DescriptionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<bool>("PermissiveAdaptation");
|
||||
|
||||
b.Property<bool>("PermissiveCommercial");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("licenses");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Maintainer", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("TwitterHandle")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("maintainers");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Rule", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Raw")
|
||||
.HasColumnType("NVARCHAR(2083)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("rules");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Snapshot", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("Content")
|
||||
.IsRequired()
|
||||
.HasColumnType("MEDIUMTEXT");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("FilterListId");
|
||||
|
||||
b.ToTable("snapshots");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Software", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("DownloadUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("software");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Syntax", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("DefinitionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("syntaxes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.License")
|
||||
.WithMany("FilterLists")
|
||||
.HasForeignKey("LicenseId");
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Syntax")
|
||||
.WithMany("FilterLists")
|
||||
.HasForeignKey("SyntaxId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListLanguage", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListLanguages")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Language", "Language")
|
||||
.WithMany("FilterListLanguages")
|
||||
.HasForeignKey("LanguageId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListMaintainer", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListMaintainers")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Maintainer", "Maintainer")
|
||||
.WithMany("FilterListMaintainers")
|
||||
.HasForeignKey("MaintainerId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListRule", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListRules")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Rule", "Rule")
|
||||
.WithMany("FilterListRules")
|
||||
.HasForeignKey("RuleId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Fork", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "ForkFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("ForkFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("UpstreamFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Merge", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "MergeFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("MergeFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("UpstreamFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.SoftwareSyntax", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.Software", "Software")
|
||||
.WithMany("SoftwareSyntaxes")
|
||||
.HasForeignKey("SoftwareId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Syntax", "Syntax")
|
||||
.WithMany("SoftwareSyntaxes")
|
||||
.HasForeignKey("SyntaxId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Snapshot", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList")
|
||||
.WithMany("Snapshots")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace FilterLists.Api.Migrations
|
||||
{
|
||||
public partial class addSnapshot : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
"snapshots",
|
||||
table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
Content = table.Column<string>("MEDIUMTEXT", nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
FilterListId = table.Column<int>(nullable: false),
|
||||
ModifiedDateUtc = table.Column<DateTime>("TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_snapshots", x => x.Id);
|
||||
table.ForeignKey(
|
||||
"FK_snapshots_filterlists_FilterListId",
|
||||
x => x.FilterListId,
|
||||
"filterlists",
|
||||
"Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
"IX_snapshots_FilterListId",
|
||||
"snapshots",
|
||||
"FilterListId");
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
"snapshots");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,119 +0,0 @@
|
|||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace FilterLists.Api.Migrations
|
||||
{
|
||||
public partial class partialRemoveModDateAndMore : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
"ModifiedDateUtc",
|
||||
"software_syntaxes");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
"ModifiedDateUtc",
|
||||
"snapshots");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
"ModifiedDateUtc",
|
||||
"rules");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
"ModifiedDateUtc",
|
||||
"merges");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
"ModifiedDateUtc",
|
||||
"forks");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
"ModifiedDateUtc",
|
||||
"filterlists_rules");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
"ModifiedDateUtc",
|
||||
"filterlists_maintainers");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
"ModifiedDateUtc",
|
||||
"filterlists_languages");
|
||||
|
||||
migrationBuilder.AlterColumn<string>(
|
||||
"Raw",
|
||||
"rules",
|
||||
"NVARCHAR(2083)",
|
||||
nullable: false,
|
||||
oldClrType: typeof(string),
|
||||
oldType: "NVARCHAR(2083)",
|
||||
oldNullable: true);
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<DateTime>(
|
||||
"ModifiedDateUtc",
|
||||
"software_syntaxes",
|
||||
"TIMESTAMP",
|
||||
nullable: false,
|
||||
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||
|
||||
migrationBuilder.AddColumn<DateTime>(
|
||||
"ModifiedDateUtc",
|
||||
"snapshots",
|
||||
"TIMESTAMP",
|
||||
nullable: false,
|
||||
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||
|
||||
migrationBuilder.AlterColumn<string>(
|
||||
"Raw",
|
||||
"rules",
|
||||
"NVARCHAR(2083)",
|
||||
nullable: true,
|
||||
oldClrType: typeof(string),
|
||||
oldType: "NVARCHAR(2083)");
|
||||
|
||||
migrationBuilder.AddColumn<DateTime>(
|
||||
"ModifiedDateUtc",
|
||||
"rules",
|
||||
"TIMESTAMP",
|
||||
nullable: false,
|
||||
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||
|
||||
migrationBuilder.AddColumn<DateTime>(
|
||||
"ModifiedDateUtc",
|
||||
"merges",
|
||||
"TIMESTAMP",
|
||||
nullable: false,
|
||||
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||
|
||||
migrationBuilder.AddColumn<DateTime>(
|
||||
"ModifiedDateUtc",
|
||||
"forks",
|
||||
"TIMESTAMP",
|
||||
nullable: false,
|
||||
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||
|
||||
migrationBuilder.AddColumn<DateTime>(
|
||||
"ModifiedDateUtc",
|
||||
"filterlists_rules",
|
||||
"TIMESTAMP",
|
||||
nullable: false,
|
||||
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||
|
||||
migrationBuilder.AddColumn<DateTime>(
|
||||
"ModifiedDateUtc",
|
||||
"filterlists_maintainers",
|
||||
"TIMESTAMP",
|
||||
nullable: false,
|
||||
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||
|
||||
migrationBuilder.AddColumn<DateTime>(
|
||||
"ModifiedDateUtc",
|
||||
"filterlists_languages",
|
||||
"TIMESTAMP",
|
||||
nullable: false,
|
||||
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -11,8 +11,8 @@
|
|||
namespace FilterLists.Api.Migrations
|
||||
{
|
||||
[DbContext(typeof(FilterListsDbContext))]
|
||||
[Migration("20180127125025_partialRemoveModDateAndMore")]
|
||||
partial class partialRemoveModDateAndMore
|
||||
[Migration("20180127171317_InitialCreate")]
|
||||
partial class InitialCreate
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
|
|
@ -24,11 +24,11 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("TEXT");
|
||||
|
|
@ -56,12 +56,10 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
b.Property<int?>("LicenseId");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.Property<string>("SubmissionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
|
@ -69,7 +67,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
b.Property<int?>("SyntaxId");
|
||||
|
||||
b.Property<string>("ViewUrl")
|
||||
.HasColumnType("TEXT");
|
||||
.HasColumnType("TEXT NOT NULL");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
|
|
@ -87,8 +85,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
b.Property<int>("LanguageId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "LanguageId");
|
||||
|
||||
|
|
@ -104,8 +101,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
b.Property<int>("MaintainerId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "MaintainerId");
|
||||
|
||||
|
|
@ -121,8 +117,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
b.Property<int>("RuleId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "RuleId");
|
||||
|
||||
|
|
@ -138,8 +133,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
b.Property<int>("UpstreamFilterListId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("ForkFilterListId", "UpstreamFilterListId");
|
||||
|
||||
|
|
@ -155,8 +149,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
b.Property<int>("UpstreamFilterListId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("MergeFilterListId", "UpstreamFilterListId");
|
||||
|
||||
|
|
@ -172,8 +165,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
b.Property<int>("SyntaxId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("SoftwareId", "SyntaxId");
|
||||
|
||||
|
|
@ -185,11 +177,11 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
modelBuilder.Entity("FilterLists.Data.Entities.Language", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Iso6391")
|
||||
.HasColumnType("NVARCHAR(2)");
|
||||
|
|
@ -210,8 +202,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
|
@ -224,22 +215,20 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
modelBuilder.Entity("FilterLists.Data.Entities.License", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("DescriptionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.Property<bool>("PermissiveAdaptation");
|
||||
|
||||
|
|
@ -253,11 +242,11 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
modelBuilder.Entity("FilterLists.Data.Entities.Maintainer", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
|
@ -266,12 +255,10 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.Property<string>("TwitterHandle")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
|
@ -284,51 +271,28 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
modelBuilder.Entity("FilterLists.Data.Entities.Rule", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("BIGINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Raw")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(2083)");
|
||||
.HasColumnType("NVARCHAR(2083) NOT NULL");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("rules");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Snapshot", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("Content")
|
||||
.IsRequired()
|
||||
.HasColumnType("MEDIUMTEXT");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("FilterListId");
|
||||
|
||||
b.ToTable("snapshots");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Software", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("DownloadUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
|
@ -337,12 +301,10 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
|
|
@ -352,22 +314,20 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
modelBuilder.Entity("FilterLists.Data.Entities.Syntax", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("DefinitionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
|
|
@ -462,14 +422,6 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|||
.HasForeignKey("SyntaxId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Snapshot", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList")
|
||||
.WithMany("Snapshots")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
388
src/FilterLists.Api/Migrations/20180127171317_InitialCreate.cs
Normal file
388
src/FilterLists.Api/Migrations/20180127171317_InitialCreate.cs
Normal file
|
|
@ -0,0 +1,388 @@
|
|||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace FilterLists.Api.Migrations
|
||||
{
|
||||
public partial class InitialCreate : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "languages",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "SMALLINT UNSIGNED", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false),
|
||||
Iso6391 = table.Column<string>(type: "NVARCHAR(2)", nullable: true),
|
||||
Iso6392 = table.Column<string>(type: "NVARCHAR(3)", nullable: true),
|
||||
Iso6392B = table.Column<string>(type: "NVARCHAR(3)", nullable: true),
|
||||
Iso6392T = table.Column<string>(type: "NVARCHAR(3)", nullable: true),
|
||||
Iso6393 = table.Column<string>(type: "NVARCHAR(3)", nullable: true),
|
||||
LocalName = table.Column<string>(type: "NVARCHAR(126)", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>(type: "NVARCHAR(126)", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_languages", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "licenses",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "SMALLINT UNSIGNED", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false),
|
||||
DescriptionUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>(type: "NVARCHAR(126) NOT NULL", nullable: true),
|
||||
PermissiveAdaptation = table.Column<bool>(nullable: false),
|
||||
PermissiveCommercial = table.Column<bool>(nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_licenses", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "maintainers",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "SMALLINT UNSIGNED", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false),
|
||||
EmailAddress = table.Column<string>(type: "NVARCHAR(126)", nullable: true),
|
||||
HomeUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>(type: "NVARCHAR(126) NOT NULL", nullable: true),
|
||||
TwitterHandle = table.Column<string>(type: "NVARCHAR(126)", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_maintainers", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "rules",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "BIGINT UNSIGNED", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false),
|
||||
Raw = table.Column<string>(type: "NVARCHAR(2083) NOT NULL", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_rules", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "software",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "SMALLINT UNSIGNED", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false),
|
||||
DownloadUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
HomeUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>(type: "NVARCHAR(126) NOT NULL", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_software", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "syntaxes",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "SMALLINT UNSIGNED", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false),
|
||||
DefinitionUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>(type: "NVARCHAR(126) NOT NULL", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_syntaxes", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "filterlists",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "SMALLINT UNSIGNED", nullable: false)
|
||||
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false),
|
||||
Description = table.Column<string>(type: "TEXT", nullable: true),
|
||||
DescriptionSourceUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
DiscontinuedDate = table.Column<DateTime>(nullable: true),
|
||||
DonateUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
EmailAddress = table.Column<string>(type: "NVARCHAR(126)", nullable: true),
|
||||
ForumUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
HomeUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
IssuesUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
LicenseId = table.Column<int>(nullable: true),
|
||||
ModifiedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP", nullable: false),
|
||||
Name = table.Column<string>(type: "NVARCHAR(126) NOT NULL", nullable: true),
|
||||
SubmissionUrl = table.Column<string>(type: "TEXT", nullable: true),
|
||||
SyntaxId = table.Column<int>(nullable: true),
|
||||
ViewUrl = table.Column<string>(type: "TEXT NOT NULL", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_filterlists", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_filterlists_licenses_LicenseId",
|
||||
column: x => x.LicenseId,
|
||||
principalTable: "licenses",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
table.ForeignKey(
|
||||
name: "FK_filterlists_syntaxes_SyntaxId",
|
||||
column: x => x.SyntaxId,
|
||||
principalTable: "syntaxes",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "software_syntaxes",
|
||||
columns: table => new
|
||||
{
|
||||
SoftwareId = table.Column<int>(nullable: false),
|
||||
SyntaxId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_software_syntaxes", x => new { x.SoftwareId, x.SyntaxId });
|
||||
table.ForeignKey(
|
||||
name: "FK_software_syntaxes_software_SoftwareId",
|
||||
column: x => x.SoftwareId,
|
||||
principalTable: "software",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_software_syntaxes_syntaxes_SyntaxId",
|
||||
column: x => x.SyntaxId,
|
||||
principalTable: "syntaxes",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "filterlists_languages",
|
||||
columns: table => new
|
||||
{
|
||||
FilterListId = table.Column<int>(nullable: false),
|
||||
LanguageId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_filterlists_languages", x => new { x.FilterListId, x.LanguageId });
|
||||
table.ForeignKey(
|
||||
name: "FK_filterlists_languages_filterlists_FilterListId",
|
||||
column: x => x.FilterListId,
|
||||
principalTable: "filterlists",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_filterlists_languages_languages_LanguageId",
|
||||
column: x => x.LanguageId,
|
||||
principalTable: "languages",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "filterlists_maintainers",
|
||||
columns: table => new
|
||||
{
|
||||
FilterListId = table.Column<int>(nullable: false),
|
||||
MaintainerId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_filterlists_maintainers", x => new { x.FilterListId, x.MaintainerId });
|
||||
table.ForeignKey(
|
||||
name: "FK_filterlists_maintainers_filterlists_FilterListId",
|
||||
column: x => x.FilterListId,
|
||||
principalTable: "filterlists",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_filterlists_maintainers_maintainers_MaintainerId",
|
||||
column: x => x.MaintainerId,
|
||||
principalTable: "maintainers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "filterlists_rules",
|
||||
columns: table => new
|
||||
{
|
||||
FilterListId = table.Column<int>(nullable: false),
|
||||
RuleId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_filterlists_rules", x => new { x.FilterListId, x.RuleId });
|
||||
table.ForeignKey(
|
||||
name: "FK_filterlists_rules_filterlists_FilterListId",
|
||||
column: x => x.FilterListId,
|
||||
principalTable: "filterlists",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_filterlists_rules_rules_RuleId",
|
||||
column: x => x.RuleId,
|
||||
principalTable: "rules",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "forks",
|
||||
columns: table => new
|
||||
{
|
||||
ForkFilterListId = table.Column<int>(nullable: false),
|
||||
UpstreamFilterListId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_forks", x => new { x.ForkFilterListId, x.UpstreamFilterListId });
|
||||
table.ForeignKey(
|
||||
name: "FK_forks_filterlists_ForkFilterListId",
|
||||
column: x => x.ForkFilterListId,
|
||||
principalTable: "filterlists",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_forks_filterlists_UpstreamFilterListId",
|
||||
column: x => x.UpstreamFilterListId,
|
||||
principalTable: "filterlists",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "merges",
|
||||
columns: table => new
|
||||
{
|
||||
MergeFilterListId = table.Column<int>(nullable: false),
|
||||
UpstreamFilterListId = table.Column<int>(nullable: false),
|
||||
CreatedDateUtc = table.Column<DateTime>(type: "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_merges", x => new { x.MergeFilterListId, x.UpstreamFilterListId });
|
||||
table.ForeignKey(
|
||||
name: "FK_merges_filterlists_MergeFilterListId",
|
||||
column: x => x.MergeFilterListId,
|
||||
principalTable: "filterlists",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_merges_filterlists_UpstreamFilterListId",
|
||||
column: x => x.UpstreamFilterListId,
|
||||
principalTable: "filterlists",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_filterlists_LicenseId",
|
||||
table: "filterlists",
|
||||
column: "LicenseId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_filterlists_SyntaxId",
|
||||
table: "filterlists",
|
||||
column: "SyntaxId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_filterlists_languages_LanguageId",
|
||||
table: "filterlists_languages",
|
||||
column: "LanguageId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_filterlists_maintainers_MaintainerId",
|
||||
table: "filterlists_maintainers",
|
||||
column: "MaintainerId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_filterlists_rules_RuleId",
|
||||
table: "filterlists_rules",
|
||||
column: "RuleId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_forks_UpstreamFilterListId",
|
||||
table: "forks",
|
||||
column: "UpstreamFilterListId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_merges_UpstreamFilterListId",
|
||||
table: "merges",
|
||||
column: "UpstreamFilterListId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_software_syntaxes_SyntaxId",
|
||||
table: "software_syntaxes",
|
||||
column: "SyntaxId");
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "filterlists_languages");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "filterlists_maintainers");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "filterlists_rules");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "forks");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "merges");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "software_syntaxes");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "languages");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "maintainers");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "rules");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "filterlists");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "software");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "licenses");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "syntaxes");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,15 +1,17 @@
|
|||
// <auto-generated />
|
||||
|
||||
using System;
|
||||
using FilterLists.Data;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage;
|
||||
using Microsoft.EntityFrameworkCore.Storage.Internal;
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Api.Migrations
|
||||
{
|
||||
[DbContext(typeof(FilterListsDbContext))]
|
||||
internal class FilterListsDbContextModelSnapshot : ModelSnapshot
|
||||
partial class FilterListsDbContextModelSnapshot : ModelSnapshot
|
||||
{
|
||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
|
|
@ -19,455 +21,407 @@ protected override void BuildModel(ModelBuilder modelBuilder)
|
|||
.HasAnnotation("ProductVersion", "2.0.1-rtm-125");
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("DescriptionSourceUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("DescriptionSourceUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime?>("DiscontinuedDate");
|
||||
b.Property<DateTime?>("DiscontinuedDate");
|
||||
|
||||
b.Property<string>("DonateUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("DonateUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("ForumUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("ForumUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("IssuesUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("IssuesUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int?>("LicenseId");
|
||||
b.Property<int?>("LicenseId");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.Property<string>("SubmissionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("SubmissionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<int?>("SyntaxId");
|
||||
b.Property<int?>("SyntaxId");
|
||||
|
||||
b.Property<string>("ViewUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("ViewUrl")
|
||||
.HasColumnType("TEXT NOT NULL");
|
||||
|
||||
b.HasKey("Id");
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("LicenseId");
|
||||
b.HasIndex("LicenseId");
|
||||
|
||||
b.HasIndex("SyntaxId");
|
||||
b.HasIndex("SyntaxId");
|
||||
|
||||
b.ToTable("filterlists");
|
||||
});
|
||||
b.ToTable("filterlists");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListLanguage", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("LanguageId");
|
||||
b.Property<int>("LanguageId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "LanguageId");
|
||||
b.HasKey("FilterListId", "LanguageId");
|
||||
|
||||
b.HasIndex("LanguageId");
|
||||
b.HasIndex("LanguageId");
|
||||
|
||||
b.ToTable("filterlists_languages");
|
||||
});
|
||||
b.ToTable("filterlists_languages");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListMaintainer", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("MaintainerId");
|
||||
b.Property<int>("MaintainerId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "MaintainerId");
|
||||
b.HasKey("FilterListId", "MaintainerId");
|
||||
|
||||
b.HasIndex("MaintainerId");
|
||||
b.HasIndex("MaintainerId");
|
||||
|
||||
b.ToTable("filterlists_maintainers");
|
||||
});
|
||||
b.ToTable("filterlists_maintainers");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListRule", b =>
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
{
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.Property<int>("RuleId");
|
||||
b.Property<int>("RuleId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("FilterListId", "RuleId");
|
||||
b.HasKey("FilterListId", "RuleId");
|
||||
|
||||
b.HasIndex("RuleId");
|
||||
b.HasIndex("RuleId");
|
||||
|
||||
b.ToTable("filterlists_rules");
|
||||
});
|
||||
b.ToTable("filterlists_rules");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Fork", b =>
|
||||
{
|
||||
b.Property<int>("ForkFilterListId");
|
||||
{
|
||||
b.Property<int>("ForkFilterListId");
|
||||
|
||||
b.Property<int>("UpstreamFilterListId");
|
||||
b.Property<int>("UpstreamFilterListId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("ForkFilterListId", "UpstreamFilterListId");
|
||||
b.HasKey("ForkFilterListId", "UpstreamFilterListId");
|
||||
|
||||
b.HasIndex("UpstreamFilterListId");
|
||||
b.HasIndex("UpstreamFilterListId");
|
||||
|
||||
b.ToTable("forks");
|
||||
});
|
||||
b.ToTable("forks");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Merge", b =>
|
||||
{
|
||||
b.Property<int>("MergeFilterListId");
|
||||
{
|
||||
b.Property<int>("MergeFilterListId");
|
||||
|
||||
b.Property<int>("UpstreamFilterListId");
|
||||
b.Property<int>("UpstreamFilterListId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("MergeFilterListId", "UpstreamFilterListId");
|
||||
b.HasKey("MergeFilterListId", "UpstreamFilterListId");
|
||||
|
||||
b.HasIndex("UpstreamFilterListId");
|
||||
b.HasIndex("UpstreamFilterListId");
|
||||
|
||||
b.ToTable("merges");
|
||||
});
|
||||
b.ToTable("merges");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.SoftwareSyntax", b =>
|
||||
{
|
||||
b.Property<int>("SoftwareId");
|
||||
{
|
||||
b.Property<int>("SoftwareId");
|
||||
|
||||
b.Property<int>("SyntaxId");
|
||||
b.Property<int>("SyntaxId");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.HasKey("SoftwareId", "SyntaxId");
|
||||
b.HasKey("SoftwareId", "SyntaxId");
|
||||
|
||||
b.HasIndex("SyntaxId");
|
||||
b.HasIndex("SyntaxId");
|
||||
|
||||
b.ToTable("software_syntaxes");
|
||||
});
|
||||
b.ToTable("software_syntaxes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Language", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Iso6391")
|
||||
.HasColumnType("NVARCHAR(2)");
|
||||
b.Property<string>("Iso6391")
|
||||
.HasColumnType("NVARCHAR(2)");
|
||||
|
||||
b.Property<string>("Iso6392")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
b.Property<string>("Iso6392")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6392B")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
b.Property<string>("Iso6392B")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6392T")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
b.Property<string>("Iso6392T")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("Iso6393")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
b.Property<string>("Iso6393")
|
||||
.HasColumnType("NVARCHAR(3)");
|
||||
|
||||
b.Property<string>("LocalName")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("LocalName")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("languages");
|
||||
});
|
||||
b.ToTable("languages");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.License", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("DescriptionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("DescriptionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.Property<bool>("PermissiveAdaptation");
|
||||
b.Property<bool>("PermissiveAdaptation");
|
||||
|
||||
b.Property<bool>("PermissiveCommercial");
|
||||
b.Property<bool>("PermissiveCommercial");
|
||||
|
||||
b.HasKey("Id");
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("licenses");
|
||||
});
|
||||
b.ToTable("licenses");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Maintainer", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("EmailAddress")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.Property<string>("TwitterHandle")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("TwitterHandle")
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
|
||||
b.HasKey("Id");
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("maintainers");
|
||||
});
|
||||
b.ToTable("maintainers");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Rule", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("BIGINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Raw")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(2083)");
|
||||
b.Property<string>("Raw")
|
||||
.HasColumnType("NVARCHAR(2083) NOT NULL");
|
||||
|
||||
b.HasKey("Id");
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("rules");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Snapshot", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("Content")
|
||||
.IsRequired()
|
||||
.HasColumnType("MEDIUMTEXT");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
|
||||
b.Property<int>("FilterListId");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("FilterListId");
|
||||
|
||||
b.ToTable("snapshots");
|
||||
});
|
||||
b.ToTable("rules");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Software", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("DownloadUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("DownloadUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("HomeUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.HasKey("Id");
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("software");
|
||||
});
|
||||
b.ToTable("software");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Syntax", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("CreatedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("DefinitionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
b.Property<string>("DefinitionUrl")
|
||||
.HasColumnType("TEXT");
|
||||
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.ValueGeneratedOnAddOrUpdate()
|
||||
.HasColumnType("TIMESTAMP");
|
||||
b.Property<DateTime>("ModifiedDateUtc")
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
|
||||
b.HasKey("Id");
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("syntaxes");
|
||||
});
|
||||
b.ToTable("syntaxes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.FilterList", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.License")
|
||||
.WithMany("FilterLists")
|
||||
.HasForeignKey("LicenseId");
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.License")
|
||||
.WithMany("FilterLists")
|
||||
.HasForeignKey("LicenseId");
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Syntax")
|
||||
.WithMany("FilterLists")
|
||||
.HasForeignKey("SyntaxId");
|
||||
});
|
||||
b.HasOne("FilterLists.Data.Entities.Syntax")
|
||||
.WithMany("FilterLists")
|
||||
.HasForeignKey("SyntaxId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListLanguage", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListLanguages")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListLanguages")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Language", "Language")
|
||||
.WithMany("FilterListLanguages")
|
||||
.HasForeignKey("LanguageId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
b.HasOne("FilterLists.Data.Entities.Language", "Language")
|
||||
.WithMany("FilterListLanguages")
|
||||
.HasForeignKey("LanguageId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListMaintainer", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListMaintainers")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListMaintainers")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Maintainer", "Maintainer")
|
||||
.WithMany("FilterListMaintainers")
|
||||
.HasForeignKey("MaintainerId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
b.HasOne("FilterLists.Data.Entities.Maintainer", "Maintainer")
|
||||
.WithMany("FilterListMaintainers")
|
||||
.HasForeignKey("MaintainerId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.FilterListRule", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListRules")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "FilterList")
|
||||
.WithMany("FilterListRules")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Rule", "Rule")
|
||||
.WithMany("FilterListRules")
|
||||
.HasForeignKey("RuleId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
b.HasOne("FilterLists.Data.Entities.Rule", "Rule")
|
||||
.WithMany("FilterListRules")
|
||||
.HasForeignKey("RuleId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Fork", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "ForkFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("ForkFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "ForkFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("ForkFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("UpstreamFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("UpstreamFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.Merge", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "MergeFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("MergeFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "MergeFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("MergeFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("UpstreamFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList", "UpstreamFilterList")
|
||||
.WithMany()
|
||||
.HasForeignKey("UpstreamFilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Junctions.SoftwareSyntax", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.Software", "Software")
|
||||
.WithMany("SoftwareSyntaxes")
|
||||
.HasForeignKey("SoftwareId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.Software", "Software")
|
||||
.WithMany("SoftwareSyntaxes")
|
||||
.HasForeignKey("SoftwareId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("FilterLists.Data.Entities.Syntax", "Syntax")
|
||||
.WithMany("SoftwareSyntaxes")
|
||||
.HasForeignKey("SyntaxId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("FilterLists.Data.Entities.Snapshot", b =>
|
||||
{
|
||||
b.HasOne("FilterLists.Data.Entities.FilterList")
|
||||
.WithMany("Snapshots")
|
||||
.HasForeignKey("FilterListId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
b.HasOne("FilterLists.Data.Entities.Syntax", "Syntax")
|
||||
.WithMany("SoftwareSyntaxes")
|
||||
.HasForeignKey("SyntaxId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +0,0 @@
|
|||
using System;
|
||||
|
||||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public abstract class BaseEntity
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -4,25 +4,28 @@
|
|||
|
||||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public class FilterList : BaseEntity
|
||||
public class FilterList
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
public DateTime ModifiedDateUtc { get; set; }
|
||||
|
||||
public string Description { get; set; }
|
||||
public string DescriptionSourceUrl { get; set; }
|
||||
public DateTime? DiscontinuedDate { get; set; }
|
||||
public string DonateUrl { get; set; }
|
||||
public string EmailAddress { get; set; }
|
||||
public ICollection<FilterListLanguage> FilterListLanguages { get; set; }
|
||||
public ICollection<FilterListMaintainer> FilterListMaintainers { get; set; }
|
||||
public ICollection<FilterListRule> FilterListRules { get; set; }
|
||||
public string ForumUrl { get; set; }
|
||||
public string HomeUrl { get; set; }
|
||||
public string IssuesUrl { get; set; }
|
||||
public int? LicenseId { get; set; }
|
||||
public string Name { get; set; }
|
||||
public ICollection<Snapshot> Snapshots { get; set; }
|
||||
public string SubmissionUrl { get; set; }
|
||||
public int? SyntaxId { get; set; }
|
||||
public string ViewUrl { get; set; }
|
||||
|
||||
public ICollection<FilterListLanguage> FilterListLanguages { get; set; }
|
||||
public ICollection<FilterListMaintainer> FilterListMaintainers { get; set; }
|
||||
public ICollection<FilterListRule> FilterListRules { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -1,7 +1,11 @@
|
|||
namespace FilterLists.Data.Entities.Junctions
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Data.Entities.Junctions
|
||||
{
|
||||
public class FilterListLanguage : BaseEntity
|
||||
public class FilterListLanguage
|
||||
{
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
|
||||
public int FilterListId { get; set; }
|
||||
public FilterList FilterList { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
namespace FilterLists.Data.Entities.Junctions
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Data.Entities.Junctions
|
||||
{
|
||||
public class FilterListMaintainer : BaseEntity
|
||||
public class FilterListMaintainer
|
||||
{
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
|
||||
public int FilterListId { get; set; }
|
||||
public FilterList FilterList { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
namespace FilterLists.Data.Entities.Junctions
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Data.Entities.Junctions
|
||||
{
|
||||
public class FilterListRule : BaseEntity
|
||||
public class FilterListRule
|
||||
{
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
|
||||
public int FilterListId { get; set; }
|
||||
public FilterList FilterList { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
namespace FilterLists.Data.Entities.Junctions
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Data.Entities.Junctions
|
||||
{
|
||||
public class Fork : BaseEntity
|
||||
public class Fork
|
||||
{
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
|
||||
public int ForkFilterListId { get; set; }
|
||||
public FilterList ForkFilterList { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
namespace FilterLists.Data.Entities.Junctions
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Data.Entities.Junctions
|
||||
{
|
||||
public class Merge : BaseEntity
|
||||
public class Merge
|
||||
{
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
|
||||
public int MergeFilterListId { get; set; }
|
||||
public FilterList MergeFilterList { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,11 @@
|
|||
namespace FilterLists.Data.Entities.Junctions
|
||||
using System;
|
||||
|
||||
namespace FilterLists.Data.Entities.Junctions
|
||||
{
|
||||
public class SoftwareSyntax : BaseEntity
|
||||
public class SoftwareSyntax
|
||||
{
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
|
||||
public int SoftwareId { get; set; }
|
||||
public Software Software { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -4,10 +4,12 @@
|
|||
|
||||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public class Language : BaseEntity
|
||||
public class Language
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
public DateTime ModifiedDateUtc { get; set; }
|
||||
public ICollection<FilterListLanguage> FilterListLanguages { get; set; }
|
||||
|
||||
public string Iso6391 { get; set; }
|
||||
public string Iso6392 { get; set; }
|
||||
public string Iso6392B { get; set; }
|
||||
|
|
@ -15,5 +17,7 @@ public class Language : BaseEntity
|
|||
public string Iso6393 { get; set; }
|
||||
public string LocalName { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
||||
public ICollection<FilterListLanguage> FilterListLanguages { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -3,9 +3,12 @@
|
|||
|
||||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public class License : BaseEntity
|
||||
public class License
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
public DateTime ModifiedDateUtc { get; set; }
|
||||
|
||||
public string DescriptionUrl { get; set; }
|
||||
public ICollection<FilterList> FilterLists { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
|
|
|||
|
|
@ -4,13 +4,17 @@
|
|||
|
||||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public class Maintainer : BaseEntity
|
||||
public class Maintainer
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
public DateTime ModifiedDateUtc { get; set; }
|
||||
|
||||
public string EmailAddress { get; set; }
|
||||
public ICollection<FilterListMaintainer> FilterListMaintainers { get; set; }
|
||||
public string HomeUrl { get; set; }
|
||||
public string Name { get; set; }
|
||||
public string TwitterHandle { get; set; }
|
||||
|
||||
public ICollection<FilterListMaintainer> FilterListMaintainers { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -1,11 +1,16 @@
|
|||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using FilterLists.Data.Entities.Junctions;
|
||||
|
||||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public class Rule : BaseEntity
|
||||
public class Rule
|
||||
{
|
||||
public ICollection<FilterListRule> FilterListRules { get; set; }
|
||||
public int Id { get; set; }
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
|
||||
public string Raw { get; set; }
|
||||
|
||||
public ICollection<FilterListRule> FilterListRules { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public class Snapshot : BaseEntity
|
||||
{
|
||||
public string Content { get; set; }
|
||||
public int FilterListId { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -4,12 +4,16 @@
|
|||
|
||||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public class Software : BaseEntity
|
||||
public class Software
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
public DateTime ModifiedDateUtc { get; set; }
|
||||
|
||||
public string DownloadUrl { get; set; }
|
||||
public string HomeUrl { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
||||
public ICollection<SoftwareSyntax> SoftwareSyntaxes { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -4,12 +4,16 @@
|
|||
|
||||
namespace FilterLists.Data.Entities
|
||||
{
|
||||
public class Syntax : BaseEntity
|
||||
public class Syntax
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public DateTime CreatedDateUtc { get; set; }
|
||||
public DateTime ModifiedDateUtc { get; set; }
|
||||
|
||||
public string DefinitionUrl { get; set; }
|
||||
public ICollection<FilterList> FilterLists { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
||||
public ICollection<SoftwareSyntax> SoftwareSyntaxes { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
using FilterLists.Data.Entities;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
||||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class BaseEntityTypeConfiguration<TBase> : IEntityTypeConfiguration<TBase> where TBase : BaseEntity
|
||||
{
|
||||
public virtual void Configure(EntityTypeBuilder<TBase> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP")
|
||||
.ValueGeneratedOnAdd();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,14 +4,19 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class FilterListTypeConfiguration : BaseEntityTypeConfiguration<FilterList>
|
||||
public class FilterListTypeConfiguration : IEntityTypeConfiguration<FilterList>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<FilterList> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<FilterList> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("filterlists");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Id)
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
entityTypeBuilder.Property(x => x.ModifiedDateUtc)
|
||||
.HasColumnType("TIMESTAMP")
|
||||
.ValueGeneratedOnAddOrUpdate();
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Description)
|
||||
.HasColumnType("TEXT");
|
||||
entityTypeBuilder.Property(x => x.DescriptionSourceUrl)
|
||||
|
|
@ -27,13 +32,11 @@ public override void Configure(EntityTypeBuilder<FilterList> entityTypeBuilder)
|
|||
entityTypeBuilder.Property(x => x.IssuesUrl)
|
||||
.HasColumnType("TEXT");
|
||||
entityTypeBuilder.Property(x => x.Name)
|
||||
.HasColumnType("NVARCHAR(126)")
|
||||
.IsRequired();
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
entityTypeBuilder.Property(x => x.SubmissionUrl)
|
||||
.HasColumnType("TEXT");
|
||||
entityTypeBuilder.Property(x => x.ViewUrl)
|
||||
.HasColumnType("TEXT");
|
||||
base.Configure(entityTypeBuilder);
|
||||
.HasColumnType("TEXT NOT NULL");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,14 +4,14 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations.Junctions
|
||||
{
|
||||
public class FilterListLanguageTypeConfiguration : BaseEntityTypeConfiguration<FilterListLanguage>
|
||||
public class FilterListLanguageTypeConfiguration : IEntityTypeConfiguration<FilterListLanguage>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<FilterListLanguage> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<FilterListLanguage> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("filterlists_languages");
|
||||
entityTypeBuilder.HasKey(x => new {x.FilterListId, x.LanguageId});
|
||||
entityTypeBuilder.Ignore(x => x.Id);
|
||||
base.Configure(entityTypeBuilder);
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,14 +4,14 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations.Junctions
|
||||
{
|
||||
public class FilterListMaintainerTypeConfiguration : BaseEntityTypeConfiguration<FilterListMaintainer>
|
||||
public class FilterListMaintainerTypeConfiguration : IEntityTypeConfiguration<FilterListMaintainer>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<FilterListMaintainer> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<FilterListMaintainer> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("filterlists_maintainers");
|
||||
entityTypeBuilder.HasKey(x => new {x.FilterListId, x.MaintainerId});
|
||||
entityTypeBuilder.Ignore(x => x.Id);
|
||||
base.Configure(entityTypeBuilder);
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,14 +4,14 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations.Junctions
|
||||
{
|
||||
public class FilterListRuleTypeConfiguration : BaseEntityTypeConfiguration<FilterListRule>
|
||||
public class FilterListRuleTypeConfiguration : IEntityTypeConfiguration<FilterListRule>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<FilterListRule> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<FilterListRule> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("filterlists_rules");
|
||||
entityTypeBuilder.HasKey(x => new {x.FilterListId, x.RuleId});
|
||||
entityTypeBuilder.Ignore(x => x.Id);
|
||||
base.Configure(entityTypeBuilder);
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,14 +4,14 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations.Junctions
|
||||
{
|
||||
public class ForkTypeConfiguration : BaseEntityTypeConfiguration<Fork>
|
||||
public class ForkTypeConfiguration : IEntityTypeConfiguration<Fork>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<Fork> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<Fork> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("forks");
|
||||
entityTypeBuilder.HasKey(x => new {x.ForkFilterListId, x.UpstreamFilterListId});
|
||||
entityTypeBuilder.Ignore(x => x.Id);
|
||||
base.Configure(entityTypeBuilder);
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,14 +4,14 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations.Junctions
|
||||
{
|
||||
public class MergeTypeConfiguration : BaseEntityTypeConfiguration<Merge>
|
||||
public class MergeTypeConfiguration : IEntityTypeConfiguration<Merge>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<Merge> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<Merge> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("merges");
|
||||
entityTypeBuilder.HasKey(x => new {x.MergeFilterListId, x.UpstreamFilterListId});
|
||||
entityTypeBuilder.Ignore(x => x.Id);
|
||||
base.Configure(entityTypeBuilder);
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,14 +4,14 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations.Junctions
|
||||
{
|
||||
public class SoftwareSyntaxTypeConfiguration : BaseEntityTypeConfiguration<SoftwareSyntax>
|
||||
public class SoftwareSyntaxTypeConfiguration : IEntityTypeConfiguration<SoftwareSyntax>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<SoftwareSyntax> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<SoftwareSyntax> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("software_syntaxes");
|
||||
entityTypeBuilder.HasKey(x => new {x.SoftwareId, x.SyntaxId});
|
||||
entityTypeBuilder.Ignore(x => x.Id);
|
||||
base.Configure(entityTypeBuilder);
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,14 +4,19 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class LanguageTypeConfiguration : BaseEntityTypeConfiguration<Language>
|
||||
public class LanguageTypeConfiguration : IEntityTypeConfiguration<Language>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<Language> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<Language> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("languages");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Id)
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
entityTypeBuilder.Property(x => x.ModifiedDateUtc)
|
||||
.HasColumnType("TIMESTAMP")
|
||||
.ValueGeneratedOnAddOrUpdate();
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Iso6391)
|
||||
.HasColumnType("NVARCHAR(2)");
|
||||
entityTypeBuilder.Property(x => x.Iso6392)
|
||||
|
|
@ -26,7 +31,6 @@ public override void Configure(EntityTypeBuilder<Language> entityTypeBuilder)
|
|||
.HasColumnType("NVARCHAR(126)");
|
||||
entityTypeBuilder.Property(x => x.Name)
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
base.Configure(entityTypeBuilder);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,20 +4,23 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class LicenseTypeConfiguration : BaseEntityTypeConfiguration<License>
|
||||
public class LicenseTypeConfiguration : IEntityTypeConfiguration<License>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<License> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<License> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("licenses");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Id)
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
entityTypeBuilder.Property(x => x.ModifiedDateUtc)
|
||||
.HasColumnType("TIMESTAMP")
|
||||
.ValueGeneratedOnAddOrUpdate();
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
entityTypeBuilder.Property(x => x.DescriptionUrl)
|
||||
.HasColumnType("TEXT");
|
||||
entityTypeBuilder.Property(x => x.Name)
|
||||
.HasColumnType("NVARCHAR(126)")
|
||||
.IsRequired();
|
||||
base.Configure(entityTypeBuilder);
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,24 +4,27 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class MaintainerTypeConfiguration : BaseEntityTypeConfiguration<Maintainer>
|
||||
public class MaintainerTypeConfiguration : IEntityTypeConfiguration<Maintainer>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<Maintainer> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<Maintainer> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("maintainers");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Id)
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
entityTypeBuilder.Property(x => x.ModifiedDateUtc)
|
||||
.HasColumnType("TIMESTAMP")
|
||||
.ValueGeneratedOnAddOrUpdate();
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
entityTypeBuilder.Property(x => x.EmailAddress)
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
entityTypeBuilder.Property(x => x.HomeUrl)
|
||||
.HasColumnType("TEXT");
|
||||
entityTypeBuilder.Property(x => x.Name)
|
||||
.HasColumnType("NVARCHAR(126)")
|
||||
.IsRequired();
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
entityTypeBuilder.Property(x => x.TwitterHandle)
|
||||
.HasColumnType("NVARCHAR(126)");
|
||||
base.Configure(entityTypeBuilder);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,15 +4,19 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class RuleTypeConfiguration : BaseEntityTypeConfiguration<Rule>
|
||||
public class RuleTypeConfiguration : IEntityTypeConfiguration<Rule>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<Rule> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<Rule> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("rules");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Id)
|
||||
.HasColumnType("BIGINT UNSIGNED");
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Raw)
|
||||
.HasColumnType("NVARCHAR(2083)")
|
||||
.IsRequired();
|
||||
base.Configure(entityTypeBuilder);
|
||||
.HasColumnType("NVARCHAR(2083) NOT NULL");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
using FilterLists.Data.Entities;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
||||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class SnapshotTypeConfiguration : BaseEntityTypeConfiguration<Snapshot>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<Snapshot> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("snapshots");
|
||||
entityTypeBuilder.Property(x => x.Content)
|
||||
.HasColumnType("MEDIUMTEXT")
|
||||
.IsRequired();
|
||||
base.Configure(entityTypeBuilder);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,22 +4,25 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class SoftwareTypeConfiguration : BaseEntityTypeConfiguration<Software>
|
||||
public class SoftwareTypeConfiguration : IEntityTypeConfiguration<Software>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<Software> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<Software> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("software");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Id)
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
entityTypeBuilder.Property(x => x.ModifiedDateUtc)
|
||||
.HasColumnType("TIMESTAMP")
|
||||
.ValueGeneratedOnAddOrUpdate();
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
entityTypeBuilder.Property(x => x.DownloadUrl)
|
||||
.HasColumnType("TEXT");
|
||||
entityTypeBuilder.Property(x => x.HomeUrl)
|
||||
.HasColumnType("TEXT");
|
||||
entityTypeBuilder.Property(x => x.Name)
|
||||
.HasColumnType("NVARCHAR(126)")
|
||||
.IsRequired();
|
||||
base.Configure(entityTypeBuilder);
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,20 +4,23 @@
|
|||
|
||||
namespace FilterLists.Data.EntityTypeConfigurations
|
||||
{
|
||||
public class SyntaxTypeConfiguration : BaseEntityTypeConfiguration<Syntax>
|
||||
public class SyntaxTypeConfiguration : IEntityTypeConfiguration<Syntax>
|
||||
{
|
||||
public override void Configure(EntityTypeBuilder<Syntax> entityTypeBuilder)
|
||||
public void Configure(EntityTypeBuilder<Syntax> entityTypeBuilder)
|
||||
{
|
||||
entityTypeBuilder.ToTable("syntaxes");
|
||||
|
||||
entityTypeBuilder.Property(x => x.Id)
|
||||
.HasColumnType("SMALLINT UNSIGNED");
|
||||
entityTypeBuilder.Property(x => x.CreatedDateUtc)
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP");
|
||||
entityTypeBuilder.Property(x => x.ModifiedDateUtc)
|
||||
.HasColumnType("TIMESTAMP")
|
||||
.ValueGeneratedOnAddOrUpdate();
|
||||
.HasColumnType("TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP");
|
||||
|
||||
entityTypeBuilder.Property(x => x.DefinitionUrl)
|
||||
.HasColumnType("TEXT");
|
||||
entityTypeBuilder.Property(x => x.Name)
|
||||
.HasColumnType("NVARCHAR(126)")
|
||||
.IsRequired();
|
||||
base.Configure(entityTypeBuilder);
|
||||
.HasColumnType("NVARCHAR(126) NOT NULL");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -27,7 +27,6 @@ private static void ApplyConfigurationsEntities(ModelBuilder modelBuilder)
|
|||
modelBuilder.ApplyConfiguration(new LicenseTypeConfiguration());
|
||||
modelBuilder.ApplyConfiguration(new MaintainerTypeConfiguration());
|
||||
modelBuilder.ApplyConfiguration(new RuleTypeConfiguration());
|
||||
modelBuilder.ApplyConfiguration(new SnapshotTypeConfiguration());
|
||||
modelBuilder.ApplyConfiguration(new SoftwareTypeConfiguration());
|
||||
modelBuilder.ApplyConfiguration(new SyntaxTypeConfiguration());
|
||||
}
|
||||
|
|
@ -49,7 +48,6 @@ private static void ApplyConfigurationsJunctions(ModelBuilder modelBuilder)
|
|||
public DbSet<License> Licenses { get; set; }
|
||||
public DbSet<Maintainer> Maintainers { get; set; }
|
||||
public DbSet<Rule> Rules { get; set; }
|
||||
public DbSet<Snapshot> Snapshots { get; set; }
|
||||
public DbSet<Software> Software { get; set; }
|
||||
public DbSet<Syntax> Syntaxes { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -47,8 +47,8 @@ private static void InsertOnDuplicateKeyUpdate<TEntityType>(this DbContext dbCon
|
|||
|
||||
private static List<IProperty> GetPropertiesLessValueGeneratedTimestamps(IEntityType entityType)
|
||||
{
|
||||
return entityType.GetProperties()
|
||||
.Where(x => x.ClrType != typeof(DateTime) || x.ValueGenerated == ValueGenerated.Never).ToList();
|
||||
return entityType.GetProperties().Where(x => x.Name != "CreatedDateUtc" && x.Name != "ModifiedDateUtc")
|
||||
.ToList();
|
||||
}
|
||||
|
||||
private static string CreateValues<TEntityType>(IReadOnlyCollection<IProperty> properties, string dataPath)
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ public ScrapeService(FilterListsDbContext filterListsDbContext)
|
|||
|
||||
public async Task Scrape()
|
||||
{
|
||||
//TEMP: remove Take(1) when algorithm complete
|
||||
var lists = await filterListsDbContext.FilterLists.Take(1).ToListAsync();
|
||||
foreach (var list in lists) await ScrapeList(list);
|
||||
}
|
||||
|
|
@ -37,7 +38,6 @@ private async Task ScrapeList(FilterList list)
|
|||
return;
|
||||
}
|
||||
|
||||
await AddSnapshot(list.Id, snapshot);
|
||||
await AddRules(list, snapshot);
|
||||
}
|
||||
|
||||
|
|
@ -55,24 +55,6 @@ private static async Task<string> GetContent(string url)
|
|||
return null;
|
||||
}
|
||||
|
||||
private async Task AddSnapshot(int listId, string snapshot)
|
||||
{
|
||||
filterListsDbContext.Snapshots.Add(new Snapshot
|
||||
{
|
||||
Content = snapshot,
|
||||
FilterListId = listId
|
||||
});
|
||||
|
||||
try
|
||||
{
|
||||
await filterListsDbContext.SaveChangesAsync();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
//TODO: log exception
|
||||
}
|
||||
}
|
||||
|
||||
private async Task AddRules(FilterList list, string snapshot)
|
||||
{
|
||||
var lines = snapshot.Split(new[] {"\r\n", "\r", "\n"}, StringSplitOptions.None);
|
||||
|
|
|
|||
Loading…
Reference in a new issue